Share via


Acessar a API Pública do Azure Sphere com sua identidade de usuário do AAD

Você pode usar esse método de autenticação se precisar implementar um aplicativo Web ou um aplicativo de console que os usuários do locatário do Azure Active Directory (AAD) do cliente possam acessar.

Os registros de aplicativo cliente são representações do Azure Active Directory de aplicativos que podem ser usados para autenticar e obter tokens. Um cliente de serviço destina-se a ser usado por um aplicativo para obter um token de acesso sem autenticação interativa de um usuário. Ele terá certas permissões de aplicativo e usará um segredo do aplicativo (senha) ao obter tokens de acesso.

Pré-requisitos

Etapa 1: registrar o aplicativo cliente

  1. No portal do Azure, no painel de navegação esquerdo, clique em Azure Active Directory.
  2. Na folha Azure Active Directory, clique em Registros de aplicativo.
  3. Clique em Novo registro.
  4. Dê ao aplicativo um nome de exibição.

Etapa 2: Autenticação de instalação

  1. No portal do Azure, no painel de navegação esquerdo, clique em Azure Active Directory.
  2. Em Registros de aplicativo, selecione seu aplicativo e selecione Autenticação.
  3. Configure o aplicativo de acordo com os requisitos do seu aplicativo.

Etapa 3: Adicionar permissões de API

  1. Selecione permissões de API e clique em Adicionar uma permissão.
  2. Em APIs que minha organização usa, pesquise a API Pública do Azure Sphere. A ID do aplicativo para a API Pública do Azure Sphere é 7c209960-a417-423c-b2e3-9251907e63fe.
  3. Selecione Azure Sphere Public.
  4. Selecione azuresphere.readwrite e clique em Adicionar Permissões.

Etapa 4: configurar seu aplicativo

    IPublicClientApplication publicClientApplication =
    PublicClientApplicationBuilder.Create("<<App registration Client ID>>")
                    .WithRedirectUri("https://login.microsoftonline.com/common/oauth2/nativeclient")
                    .WithAuthority(AzureCloudInstance.AzurePublic, "<<3rd Party Tenant Id>>")
                    .Build();
    string[] scopes = new[] { "https://firstparty.sphere.azure.net/api/azuresphere.readwrite" };
    AuthenticationResult result = await publicClientApplication.AcquireTokenInteractive(scopes).ExecuteAsync();
    string accessToken=result.AccessToken;