Compartilhar via


OfficeRuntime.Auth interface

Interface que contém APIs relacionadas com autorização.

Comentários

Os métodos nesta interface são equivalentes aos da interface Office.auth. Se forem adicionados novos tipos de autenticação no futuro, só serão adicionados à Office.auth interface. Para simplificar, os exemplos de código em toda a documentação utilizam Office.auth.

Exemplos

// Get the auth context object and use it to get an
// access token.
const authContext = OfficeRuntime.context.auth;
const accessToken = authContext.getAccessTokenAsync();

Métodos

getAccessToken(options)

Chama o ponto de extremidade do Azure Active Directory V 2.0 para obter um token de acesso para o aplicativo Web do seu suplemento. Permite que os suplementos identifiquem utilizadores. O código do lado do servidor pode utilizar este token para aceder ao Microsoft Graph para a aplicação Web do suplemento através do fluxo OAuth "em nome de". Essa API exige uma configuração de logon única que preencha o suplemento para um aplicativo do Azure. Os usuários do Office entram com Contas Organizacionais e Contas da Microsoft. O Microsoft Azure retorna tokens destinados a ambos os tipos de conta de usuário para acessar recursos no Microsoft Graph.

Detalhes do método

getAccessToken(options)

Chama o ponto de extremidade do Azure Active Directory V 2.0 para obter um token de acesso para o aplicativo Web do seu suplemento. Permite que os suplementos identifiquem utilizadores. O código do lado do servidor pode utilizar este token para aceder ao Microsoft Graph para a aplicação Web do suplemento através do fluxo OAuth "em nome de". Essa API exige uma configuração de logon única que preencha o suplemento para um aplicativo do Azure. Os usuários do Office entram com Contas Organizacionais e Contas da Microsoft. O Microsoft Azure retorna tokens destinados a ambos os tipos de conta de usuário para acessar recursos no Microsoft Graph.

getAccessToken(options?: AuthOptions): Promise<string>;

Parâmetros

options
OfficeRuntime.AuthOptions

Opcional. Aceita um AuthOptions objeto para definir comportamentos de início de sessão.

Retornos

Promise<string>

Prometa ao token de acesso.

Comentários

Aplicações: Excel, Outlook, PowerPoint Word

Importante:

  • No Outlook, esta API não é suportada se carregar um suplemento numa caixa de correio Outlook.com ou Gmail.

  • No Outlook na Web, esta API não é suportada se utilizar o browser Safari. Isto resulta no erro 13001 ("O utilizador não tem sessão iniciada no Office").

  • No Outlook na Web, se utilizar o método displayDialogAsync para abrir uma caixa de diálogo, tem de fechar a caixa de diálogo antes de poder chamar getAccessToken.

Exemplos

async function getUserData() {
  try {
      let userTokenEncoded = await OfficeRuntime.auth.getAccessToken();
      let userToken = jwt_decode(userTokenEncoded); // Using the https://www.npmjs.com/package/jwt-decode library.
      console.log(userToken.name); // user name
      console.log(userToken.preferred_username); // email
      console.log(userToken.oid); // user id     
  }
  catch (exception) {
      if (exception.code === 13003) {
          // SSO is not supported for domain user accounts, only
          // Microsoft 365 Education or work account, or a Microsoft account.
      } else {
          // Handle error
      }
  }
}