Dentro do token de identidade do Exchange
Importante
Os tokens legados do Exchange foram preteridos. A partir de fevereiro de 2025, vamos começar a desativar a identidade de utilizador e os tokens de chamada de retorno legados do Exchange para Exchange Online inquilinos. Para obter os detalhes e linha do tempo, consulte a nossa página de FAQ. Isto faz parte da Iniciativa Secure Future da Microsoft, que fornece às organizações as ferramentas necessárias para responder ao cenário de ameaças atual. Os tokens de identidade de utilizador do Exchange continuarão a funcionar para o Exchange no local. A autenticação de aplicações aninhadas é a abordagem recomendada para tokens em curso.
O token de identidade do usuário do Exchange retornado pelo método getUserIdentityTokenAsync oferece uma maneira do código do suplemento incluir a identidade do usuário com chamadas para o serviço de back-end. Este artigo discutirá o formato e o conteúdo do token.
Um token de identidade do usuário do Exchange é uma cadeia de caracteres codificada como URL em Base64 assinada pelo Exchange Server que a enviou. O token não é criptografado, e a chave pública que você usa para validar a assinatura é armazenada no Exchange Server que emitiu o token. O token tem três partes: um cabeçalho, uma carga e uma assinatura. Na cadeia de caracteres do token, as partes são separadas por um caractere de ponto (.
) para facilitar a divisão do token para você
O Exchange usa um formato JWT (Token Web JSON) como token de identidade. Para saber mais sobre tokens JWT, confira RFC 7519 Token Web JSON (JWT).
Cabeçalho de token de identidade
O cabeçalho fornece informações sobre o formato e informações de assinatura do token. O exemplo a seguir mostra a aparência do cabeçalho do token.
{
"typ": "JWT",
"alg": "RS256",
"x5t": "Un6V7lYN-rMgaCoFSTO5z707X-4"
}
A tabela a seguir descreve as partes do cabeçalho do token.
Declaração | Valor | Descrição |
---|---|---|
typ |
JWT |
Identifica o token como um Token Web JSON. Todos os tokens de identidade fornecidos pelo Exchange Server são tokens JWT. |
alg |
RS256 |
O algoritmo de hash que é usado para criar a assinatura. Todos os tokens fornecidos pelo Exchange Server usam o algoritmo de hash RSASSA-PKCS1-v1_5 com SHA-256. |
x5t |
Impressão digital de certificado | A impressão digital X. 509 do token. |
Carga de token de identidade
A carga contém as declarações de autenticação que identificam a conta de email e identificam o Exchange Server que enviou o token. O exemplo a seguir mostra a aparência de seção de carga.
{
"aud": "https://mailhost.contoso.com/IdentityTest.html",
"iss": "00000002-0000-0ff1-ce00-000000000000@mailhost.contoso.com",
"nbf": "1331579055",
"exp": "1331607855",
"appctxsender": "00000002-0000-0ff1-ce00-000000000000@mailhost.context.com",
"isbrowserhostedapp": "true",
"appctx": {
"msexchuid": "53e925fa-76ba-45e1-be0f-4ef08b59d389@mailhost.contoso.com",
"version": "ExIdTok.V1",
"amurl": "https://mailhost.contoso.com:443/autodiscover/metadata/json/1"
}
}
A tabela a seguir lista as partes da carga do token de identidade.
Declaração | Descrição |
---|---|
aud |
A URL do suplemento que solicitou o token. Um token só é válido se for enviado a partir do suplemento que está em execução no controlo webview do cliente. O URL do suplemento é especificado no manifesto. A marcação depende do tipo de manifesto. Manifesto apenas de suplemento: Se o suplemento utilizar o esquema de manifestos de Suplementos do Office v1.1, este URL é o URL especificado no primeiro <elemento SourceLocation> , no tipo ItemRead de formulário ou ItemEdit , o que ocorrer primeiro como parte do elemento FormSettings no manifesto do suplemento.Manifesto unificado para o Microsoft 365: O URL é especificado na propriedade "extensions.audienceClaimUrl". |
iss |
Um identificador exclusivo para o Exchange Server que emitiu o token. Todos os tokens emitidos por esse Exchange Server terão o mesmo identificador. |
nbf |
A data e a hora do início da validade do token. O valor é o número de segundos desde 1º de janeiro de 1970. |
exp |
A data e a hora de validade do token. O valor é o número de segundos desde 1º de janeiro de 1970. |
appctxsender |
Um identificador exclusivo para o Exchange Server que enviou o contexto do aplicativo. |
isbrowserhostedapp |
Indica se o suplemento está hospedado em um navegador. |
appctx |
O contexto do aplicativo para o token. |
As informações na declaração appctx fornecem o identificador exclusivo da conta e a localização da chave pública usada para assinar o token. A tabela a seguir lista as partes da declaração appctx
.
Propriedade de contexto Application | Descrição |
---|---|
msexchuid |
Um identificador exclusivo associado à conta de email e ao Exchange Server. |
version |
O número da versão do token. Para todos os tokens fornecidos pelo Exchange, o valor é ExIdTok.V1 . |
amurl |
A URL do documento de metadados de autenticação que contém a chave pública do certificado x. 509 usado para assinar o token. Para saber mais sobre como usar o documento de metadados de autenticação, confira Validar um token de identidade do Exchange. |
Assinatura de token de identidade
A assinatura é criada pelo hash das seções de cabeçalho e carga com o algoritmo especificado no cabeçalho e usando o certificado X509 autoassinado localizado no servidor no local especificado na carga. Seu serviço Web pode validar essa assinatura para ajudar a garantir que o token de identidade é proveniente do servidor esperado.
Confira também
Para obter um exemplo que analisa o token de identidade do usuário do Exchange, confira Outlook-Add-In-Token-Viewer.