Esta aplicação utiliza o pacote Microsoft.Identity.Web para gerenciar autenticação e autorização com o Microsoft Entra Id (Azure AD). Com essa integração, garantimos que apenas usuários autorizados possam acessar recursos protegidos, proporcionando uma experiência de uso segura e eficiente.
- Acesse o Microsoft Entra Id no Portal do Azure
- Selecione App registrations.
- Clique em +New registration no topo da página.
- Configurar os Detalhes do Aplicativo:
- Nome: MicrosoftIdentityWeb
- Supported account types: Single Tenant
- Redirect URI:
- Plataform: Web
- Uri:
https://oauth.pstmn.io/v1/callback (para testar com o postman desktop)
https://oauth.pstmn.io/v1/browser-callback (para testar com o postman web)
- Clique em Register para concluir o processo de registro.
Agora que o aplicativo está registrado, é necessário configurar a API para ser acessível por outros serviços ou aplicativos, expondo um escopo.
- Ir para as Configurações do Aplicativo
- No menu lateral, selecione Expose an API
- Clique no botão Set abaixo de Application ID URI
- Adicionar um Escopo:
- Na seção Scopes defined by this API, clique em Add a scope.
- Scope name insira o nome do escopo como Forecast.Read.
- Who can consent?, selecione Admins and users para permitir que tanto administradores quanto usuários possam consentir o uso do escopo.
- Preencha o resto dos campos
- State: Marque a opção Enabled.
Clique em Add scope para finalizar a criação do escopo.
No menu à esquerda, vá para Owners.
- Adicione seu usuário como Owner da aplicação para liberar a Api recém criada em My APIs
No menu à esquerda, vá para API permissions.
- Clique em Add a permission.
- Selecione a aba My APIs.
- Selecione a API que você acabou de registrar (no caso, MicrosoftIdentityWeb).
- Selecione Delegated Permissions
- Escolha o escopo Forecast.Read criado anteriormente.
- Clique em Add permissions.
- Clique em Grant admin consent for {seu diretório}
-
Adicione as credenciais no appsettings.json Configurações da página Overview do aplicativo MicrosoftIdentityWeb
- Directory (tenant) ID em TenantId
- Application (client) ID em ClientId
- Application ID URI em Audience
Configuração da página Overview do Tenant
- Primary Domain em Domain
-
Importe a collection no steu postman
-
Adicione as credenciais nas variáveis da collection Configurações da página Overview do aplicativo MicrosoftIdentityWeb
- Directory (tenant) ID em tenantId
- Application (client) ID em clientId
- Client credentials em clientSecret (precisa criar uma)
-
Entre em Authorization da request Authorization Code Flow
-
Clique em Get New Acess Token
-
Suba a MicrosoftIdentityWeb API e requisite /WeatherForecast com o Token obtido