Compartilhar via


Operação GetClientAccessToken

Encontre informações sobre a operação GetClientAccessToken EWS.

A operação GetClientAccessToken obtém um token de acesso do cliente para um aplicativo de email para Outlook.

This operation was introduced in Exchange Server 2013.

Usando a operação GetClientAccessToken

A solicitação de operação GetClientAccessToken usa dois argumentos necessários: o identificador do aplicativo e o tipo de token. Você pode usar a operação GetAppManifests para solicitar o identificador do aplicativo.

Cabeçalhos SOAP da operação GetClientAccessToken

A operação GetClientAccessToken pode usar os cabeçalhos SOAP listados na tabela a seguir.

Nome de cabeçalho Elemento Descrição
RequestVersion
RequestServerVersion
Identifica a versão do esquema para a solicitação de operação. Esse cabeçalho é aplicável a uma solicitação.
Serverversion
ServerVersionInfo
Identifica a versão do servidor que respondeu à solicitação. Esse cabeçalho é aplicável a uma resposta.

Exemplo de solicitação de operação GetClientAccessToken: obter um token de identidade de chamador

O exemplo a seguir de uma solicitação de operação GetClientAccessToken mostra como obter um token de identidade de chamador para um aplicativo.

<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
               xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
               xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">
   <soap:Header>
      <t:RequestServerVersion Version="Exchange2013" />
   </soap:Header>
   <soap:Body >
      <m:GetClientAccessToken>
         <m:TokenRequests>
            <t:TokenRequest>
               <t:Id>1C50226D-04B5-4AB2-9FCD-42E236B59E4B</t:Id>
               <t:TokenType>CallerIdentity</t:TokenType>
            </t:TokenRequest>
         </m:TokenRequests>
      </m:GetClientAccessToken>
   </soap:Body>
</soap:Envelope>

O corpo SOAP de solicitação contém os seguintes elementos:

Resposta bem-sucedida da operação GetClientAccessToken

O exemplo a seguir mostra uma resposta bem-sucedida a uma solicitação de operação GetClientAccessToken para obter um token de identidade de chamador para um aplicativo.

Observação

Os valores do token neste artigo foram abreviados para preservar a legibilidade.

<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <h:ServerVersionInfo MajorVersion="15" 
                           MinorVersion="0" 
                           MajorBuildNumber="556" 
                           MinorBuildNumber="14" 
                           Version="Exchange2013" 
                           xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" 
                           xmlns="http://schemas.microsoft.com/exchange/services/2006/types" 
                           xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
   </s:Header>
   <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <m:GetClientAccessTokenResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" 
                                      xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
         <m:ResponseMessages>
            <m:GetClientAccessTokenResponseMessage ResponseClass="Success">
               <m:ResponseCode>NoError</m:ResponseCode>
               <m:Token>
                  <t:Id>1C50226D-04B5-4AB2-9FCD-42E236B59E4B</t:Id>
                  <t:TokenType>CallerIdentity</t:TokenType>
                  <t:TokenValue>eyJ0eXAmv0QitaJg</t:TokenValue>
                  <t:TTL>479</t:TTL>
               </m:Token>
            </m:GetClientAccessTokenResponseMessage>
         </m:ResponseMessages>
      </m:GetClientAccessTokenResponse>
   </s:Body>
</s:Envelope>

O corpo SOAP de resposta contém os seguintes elementos:

Resposta de erro da operação GetClientAccessToken

O exemplo a seguir mostra uma resposta de erro a uma solicitação de operação GetClientAccessToken . Essa é uma resposta a uma solicitação para obter um token de retorno de chamada de extensão sem as permissões apropriadas.

<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Header>
      <h:ServerVersionInfo MajorVersion="15" 
                           MinorVersion="0" 
                           MajorBuildNumber="556" 
                           MinorBuildNumber="14" 
                           Version="Exchange2013" 
                           xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" 
                           xmlns="http://schemas.microsoft.com/exchange/services/2006/types" 
                           xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
                           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
   </s:Header>
   <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
           xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <m:GetClientAccessTokenResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" 
                                      xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
         <m:ResponseMessages>
            <m:GetClientAccessTokenResponseMessage ResponseClass="Error">
               <m:MessageText>The caller does not have enough permission for this token request.</m:MessageText>
               <m:ResponseCode>ErrorInvalidClientAccessTokenRequest</m:ResponseCode>
               <m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
            </m:GetClientAccessTokenResponseMessage>
         </m:ResponseMessages>
      </m:GetClientAccessTokenResponse>
   </s:Body>
</s:Envelope>

O corpo SOAP de resposta de erro contém os seguintes elementos:

Para obter códigos de erro adicionais que são genéricos para o EWS e específicos para essa operação, consulte ResponseCode.

Confira também