Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A plataforma de identidade da Microsoft emite vários tipos de tokens de segurança no processamento de cada fluxo de autenticação. Este documento descreve o formato, as características de segurança e o conteúdo dos tokens SAML 2.0.
Declarações em tokens SAML
Nome | Declaração JWT equivalente | Descrição | Exemplo |
---|---|---|---|
Público | aud |
O destinatário pretendido do token. O aplicativo que recebe o token deve verificar se o valor de audiência está correto e rejeitar todos os tokens destinados a um público diferente. | <AudienceRestriction> <Audience> https://contoso.com </Audience> </AudienceRestriction> |
Autenticação instantânea | Registra a data e a hora em que a autenticação ocorreu. | <AuthnStatement AuthnInstant="2011-12-29T05:35:22.000Z"> |
|
Método de autenticação | amr |
Identifica como o assunto do token foi autenticado. | <AuthnContextClassRef> http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod/password </AuthnContextClassRef> |
Primeiro Nome | given_name |
Fornece o primeiro ou "dado" nome do usuário, conforme definido no objeto de usuário do Microsoft Entra. | <Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"> <AttributeValue>Frank<AttributeValue> |
Grupos | groups |
Fornece IDs de objeto que representam as associações de grupo do assunto. Esses valores são exclusivos (consulte id de objeto) e podem ser usados com segurança para gerenciar o acesso, como impor autorização para acessar um recurso. Os grupos incluídos na declaração de grupos são configurados por aplicativo, por meio da propriedade "groupMembershipClaims" do manifesto do aplicativo. Um valor nulo excluirá todos os grupos, um valor de "SecurityGroup" incluirá funções de diretório e associações do Grupo de Segurança do Active Directory, e um valor de "Todos" incluirá grupos de segurança e listas de distribuição do Microsoft 365. Observações: Se o número de grupos em que o usuário está ultrapassar um limite (150 para SAML, 200 para JWT), uma declaração excedente será adicionada às fontes de declaração que apontam para o ponto de extremidade do Graph que contém a lista de grupos para o usuário. |
<Attribute Name="http://schemas.microsoft.com/ws/2008/06/identity/claims/groups"> <AttributeValueaaaaaaaa-0000-1111-2222-bbbbbbbbbbbb</AttributeValue> |
Indicador de excedente de grupos | groups:src1 |
Para solicitações de token que não são limitadas por comprimento, mas ainda muito grandes para o token, um link para a lista completa de grupos para o usuário será incluído. Para SAML, isso é adicionado como uma nova declaração no lugar da groups declaração. Observações: A API do Graph do Azure AD está sendo substituída pela API do Microsoft Graph. Para saber mais sobre o ponto de extremidade equivalente, consulte o usuário: getMemberObjects. |
<Attribute Name=" http://schemas.microsoft.com/claims/groups.link"> <AttributeValue>https://graph.windows.net/{tenantID}/users/{userID}/getMemberObjects<AttributeValue> |
Provedor de Identidade | idp |
Registra o provedor de identidade que autenticou o sujeito do token. Esse valor é idêntico ao valor da declaração do Emissor, a menos que a conta de usuário esteja em um locatário diferente do emissor. | <Attribute Name=" http://schemas.microsoft.com/identity/claims/identityprovider"> <AttributeValue>https://sts.windows.net/aaaabbbb-0000-cccc-1111-dddd2222eeee/<AttributeValue> |
IssuedAt | iat |
Armazena a hora em que o token foi emitido. Geralmente, ele é usado para medir a atualização do token. | <Assertion ID="_d5ec7a9b-8d8f-4b44-8c94-9812612142be" IssueInstant="2014-01-06T20:20:23.085Z" Version="2.0" xmlns="urn:oasis:names:tc:SAML:2.0:assertion"> |
Emissor | iss |
Identifica o STS (serviço de token de segurança) que constrói e retorna o token. Nos tokens retornados pela ID do Microsoft Entra, o emissor é sts.windows.net. O GUID no valor de declaração do Emissor é a ID do locatário do diretório do Microsoft Entra. A ID do locatário é um identificador confiável e imutável do diretório. | <Issuer>https://sts.windows.net/aaaabbbb-0000-cccc-1111-dddd2222eeee/</Issuer> |
Apelido | family_name |
Fornece o sobrenome, sobrenome ou nome de família do usuário, conforme definido no objeto de usuário do Microsoft Entra. | <Attribute Name=" http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname"> <AttributeValue>Miller<AttributeValue> |
Nome | unique_name |
Fornece um valor legível que identifica o sujeito do token. Esse valor não tem garantia de ser exclusivo em um locatário e foi projetado para ser usado apenas para fins de exibição. | <Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"> <AttributeValue>frankm@contoso.com<AttributeValue> |
ID do objeto | oid |
Contém um identificador exclusivo de um objeto na ID do Microsoft Entra. Esse valor é imutável e não pode ser reatribuído nem reutilizado. Use a ID do objeto para identificar um objeto em consultas à ID do Microsoft Entra. | <Attribute Name="http://schemas.microsoft.com/identity/claims/objectidentifier"> <AttributeValue>bbbbbbbb-1111-2222-3333-cccccccccccc<AttributeValue> |
Funções | roles |
Representa todas as funções de aplicativo que o assunto recebeu direta e indiretamente por meio da associação de grupo e pode ser usada para impor o controle de acesso baseado em função. As funções de aplicativo são definidas por aplicativo, por meio da appRoles propriedade do manifesto do aplicativo. A value propriedade de cada função de aplicativo é o valor que aparece na declaração de funções. |
<Attribute Name="http://schemas.microsoft.com/ws/2008/06/identity/claims/role"> |
Assunto | sub |
Identifica a entidade de segurança sobre a qual o token declara informações, como o usuário de um aplicativo. Esse valor é imutável e não pode ser reatribuído ou reutilizado, portanto, pode ser usado para executar verificações de autorização com segurança. Como o assunto está sempre presente nos tokens dos problemas da ID do Microsoft Entra, recomendamos usar esse valor em um sistema de autorização de finalidade geral. SubjectConfirmation não é uma declaração. Ele descreve como o assunto do token é verificado.
Bearer indica que o assunto é confirmado por sua posse do token. |
<Subject> <NameID>S40rgb3XjhFTv6EQTETkEzcgVmToHKRkZUIsJlmLdVc</NameID> <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer" /> </Subject> |
ID do locatário | tid |
Um identificador imutável e não reutilizável que identifica o locatário do diretório que emitiu o token. Você pode usar esse valor para acessar recursos de diretório específicos do locatário em um aplicativo multilocatário. Por exemplo, você pode usar esse valor para identificar o locatário em uma chamada à API do Graph. | <Attribute Name="http://schemas.microsoft.com/identity/claims/tenantid"> <AttributeValue>aaaabbbb-0000-cccc-1111-dddd2222eeee<AttributeValue> |
Tempo de vida do token |
nbf , exp |
Define o intervalo de tempo no qual um token é válido. O serviço que valida o token deve verificar se a data atual está dentro do tempo de vida do token, caso contrário, ele deve rejeitar o token. O serviço pode permitir até cinco minutos além do intervalo de tempo de vida do token para considerar quaisquer diferenças no tempo de relógio ("distorção de tempo") entre a ID do Microsoft Entra e o serviço. | <Conditions NotBefore="2013-03-18T21:32:51.261Z" NotOnOrAfter="2013-03-18T22:32:51.261Z" > |
Token SAML de exemplo
Este é um exemplo de um token SAML típico.
<?xml version="1.0" encoding="UTF-8"?>
<t:RequestSecurityTokenResponse xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust">
<t:Lifetime>
<wsu:Created xmlns:wsu="https://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-12-24T05:15:47.060Z</wsu:Created>
<wsu:Expires xmlns:wsu="https://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2014-12-24T06:15:47.060Z</wsu:Expires>
</t:Lifetime>
<wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
<EndpointReference xmlns="https://www.w3.org/2005/08/addressing">
<Address>https://contoso.onmicrosoft.com/MyWebApp</Address>
</EndpointReference>
</wsp:AppliesTo>
<t:RequestedSecurityToken>
<Assertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion" ID="_aaaaaaaa-0b0b-1c1c-2d2d-333333333333" IssueInstant="2014-12-24T05:20:47.060Z" Version="2.0">
<Issuer>https://sts.windows.net/aaaabbbb-0000-cccc-1111-dddd2222eeee/</Issuer>
<ds:Signature xmlns:ds="https://www.w3.org/2000/09/xmldsig#">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="https://www.w3.org/2001/10/xml-exc-c14n#" />
<ds:SignatureMethod Algorithm="https://www.w3.org/2001/04/xmldsig-more#rsa-sha256" />
<ds:Reference URI="#_aaaaaaaa-0b0b-1c1c-2d2d-333333333333">
<ds:Transforms>
<ds:Transform Algorithm="https://www.w3.org/2000/09/xmldsig#enveloped-signature" />
<ds:Transform Algorithm="https://www.w3.org/2001/10/xml-exc-c14n#" />
</ds:Transforms>
<ds:DigestMethod Algorithm="https://www.w3.org/2001/04/xmlenc#sha256" />
<ds:DigestValue>E3fH4iJ5kL6mN7oP8qR9sT0uV1wX2y/nDY=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>aB1cD2eF3gH4i...J5kL6-mN7oP8qR==</ds:SignatureValue>
<KeyInfo xmlns="https://www.w3.org/2000/09/xmldsig#">
<X509Data>
<X509Certificate>C2dE3fH4iJ5kL6mN7oP8qR9sT0uV1w</X509Certificate>
</X509Data>
</KeyInfo>
</ds:Signature>
<Subject>
<NameID Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent">m_H3naDei2LNxUmEcWd0BZlNi_jVET1pMLR6iQSuYmo</NameID>
<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer" />
</Subject>
<Conditions NotBefore="2014-12-24T05:15:47.060Z" NotOnOrAfter="2014-12-24T06:15:47.060Z">
<AudienceRestriction>
<Audience>https://contoso.onmicrosoft.com/MyWebApp</Audience>
</AudienceRestriction>
</Conditions>
<AttributeStatement>
<Attribute Name="http://schemas.microsoft.com/identity/claims/objectidentifier">
<AttributeValue>aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.microsoft.com/identity/claims/tenantid">
<AttributeValue>aaaabbbb-0000-cccc-1111-dddd2222eeee</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">
<AttributeValue>sample.admin@contoso.onmicrosoft.com</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname">
<AttributeValue>Admin</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname">
<AttributeValue>Sample</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.microsoft.com/ws/2008/06/identity/claims/groups">
<AttributeValue>5581e43f-6096-41d4-8ffa-04e560bab39d</AttributeValue>
<AttributeValue>07dd8a89-bf6d-4e81-8844-230b77145381</AttributeValue>
<AttributeValue>0e129f4g-6b0a-4944-982d-f776000632af</AttributeValue>
<AttributeValue>3ee07328-52ef-4739-a89b-109708c22fb5</AttributeValue>
<AttributeValue>329k14b3-1851-4b94-947f-9a4dacb595f4</AttributeValue>
<AttributeValue>6e32c650-9b0a-4491-b429-6c60d2ca9a42</AttributeValue>
<AttributeValue>f3a169a7-9a58-4e8f-9d47-b70029v07424</AttributeValue>
<AttributeValue>8e2c86b2-b1ad-476d-9574-544d155aa6ff</AttributeValue>
<AttributeValue>1bf80264-ff24-4866-b22c-6212e5b9a847</AttributeValue>
<AttributeValue>4075f9c3-072d-4c32-b542-03e6bc678f3e</AttributeValue>
<AttributeValue>76f80527-f2cd-46f4-8c52-8jvd8bc749b1</AttributeValue>
<AttributeValue>0ba31460-44d0-42b5-b90c-47b3fcc48e35</AttributeValue>
<AttributeValue>edd41703-8652-4948-94a7-2d917bba7667</AttributeValue>
</Attribute>
<Attribute Name="http://schemas.microsoft.com/identity/claims/identityprovider">
<AttributeValue>https://sts.windows.net/aaaabbbb-0000-cccc-1111-dddd2222eeee/</AttributeValue>
</Attribute>
</AttributeStatement>
<AuthnStatement AuthnInstant="2014-12-23T18:51:11.000Z">
<AuthnContext>
<AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</AuthnContextClassRef>
</AuthnContext>
</AuthnStatement>
</Assertion>
</t:RequestedSecurityToken>
<t:RequestedAttachedReference>
<SecurityTokenReference xmlns="https://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:d3p1="https://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd" d3p1:TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0">
<KeyIdentifier ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID">_aaaaaaaa-0b0b-1c1c-2d2d-333333333333</KeyIdentifier>
</SecurityTokenReference>
</t:RequestedAttachedReference>
<t:RequestedUnattachedReference>
<SecurityTokenReference xmlns="https://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:d3p1="https://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd" d3p1:TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0">
<KeyIdentifier ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLID">_aaaaaaaa-0b0b-1c1c-2d2d-333333333333</KeyIdentifier>
</SecurityTokenReference>
</t:RequestedUnattachedReference>
<t:TokenType>http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0</t:TokenType>
<t:RequestType>http://schemas.xmlsoap.org/ws/2005/02/trust/Issue</t:RequestType>
<t:KeyType>http://schemas.xmlsoap.org/ws/2005/05/identity/NoProofKey</t:KeyType>
</t:RequestSecurityTokenResponse>
Próximas etapas
- Para saber mais sobre como gerenciar a política de tempo de vida do token usando a API do Microsoft Graph, consulte a visão geral do recurso de política do Microsoft Entra.
- Adicione declarações personalizadas e opcionais aos tokens para seu aplicativo.
- Use sso (Sign-On único) com SAML.
- Usar o protocolo SAML de Sign-Out Único do Azure