Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Saiba como criar uma aplicação web, permitindo que utilizadores autenticados pelo AD FS 2019 entrem e adquiram tokens usando a biblioteca MSAL para invocar APIs web.
Antes de ler este artigo, você deve estar familiarizado com os conceitos do AD FS e fluxo de concessão de código de autorização
Overview
Nesse fluxo, adiciona-se autenticação à sua Aplicação Web (Aplicação de Servidor), que pode, assim, iniciar sessão de utilizadores e chamar uma API da Web. Na Aplicação Web, para chamar a API Web, utilize o método AcquireTokenByAuthorizationCode da MSAL para adquirir um token. Você usa o fluxo do código de autorização, armazenando o token adquirido no cache de tokens. Em seguida, o controlador adquire tokens silenciosamente do cache quando necessário. O MSAL atualiza o token, se necessário.
Aplicativos Web que chamam APIs da Web:
- são aplicações de cliente confidenciais.
- registou um segredo (segredo partilhado da aplicação, certificado ou conta AD) no AD FS. Esse segredo é passado durante a chamada para o AD FS para obter um token.
Para registrar um Aplicativo Web no AD FS e configurá-lo para adquirir tokens para chamar uma API Web, vamos usar um exemplo disponível aqui e percorrer as etapas de registro e configuração de código do aplicativo.
Pre-requisites
- Ferramentas de cliente do GitHub
- AD FS 2019 ou posterior configurado e em execução
- Visual Studio 2013 ou posterior
Registo de Aplicações no AD FS
Esta seção mostra como registrar o Aplicativo Web como um cliente confidencial e a API Web como uma Parte Confiável (RP) no AD FS.
No Gerenciamento do AD FS, clique com o botão direito do mouse em Grupos de Aplicativos e selecione Adicionar Grupo de Aplicativos.
No Assistente de Grupo de Aplicações, para o Nome, insira WebAppToWebApi e em aplicações Cliente-Servidor selecione o modelo Aplicação Servidor que acede a uma API Web. Clique em Next.
Copie o valor do Identificador de Cliente . O valor é usado posteriormente como valor para ida:ClientId no arquivo dos aplicativos Web.config. Insira o seguinte para URI de redirecionamento: - https://localhost:44326. Clique em Adicionar. Clique em Next.
Na ecrã Configurar Credenciais do Aplicativo, selecione Gerar um segredo partilhado e copie o segredo. Este segredo é posteriormente usado como valor do ida:ClientSecret no ficheiro de aplicativos Web.config. Clique em Next.
Na tela Configurar API Web, insira o Identificador de :https://webapi. Clique em Adicionar. Clique em Next. Este valor é usado posteriormente para ida:GraphResourceId no arquivo de aplicativos Web.config.
Na tela Aplicar Política de Controle de Acesso, selecione Permitir todos e clique em Avançar.
No ecrã Configurar Permissões de Aplicação, verifique se openid e user_impersonation estão selecionados e clique em Avançar.
No ecrã de Resumo, clique em Seguinte.
No ecrã Concluído, clique em Fechar.
Configuração de código
Esta seção mostra como configurar um ASP.NET Web App para autenticar o utilizador e obter um token de modo a chamar a Web API.
Faça o download do exemplo do aqui
Abrir o exemplo usando o Visual Studio
Abra o arquivo web.config. Modifique o seguinte:
ida:ClientId- introduza o valor Identificador de Cliente de #3 na secção Registo de Aplicações no AD FS.ida:ClientSecret- insira o valor Segredo do #4 na secção Registro de Aplicativos na AD FS.ida:RedirectUri- insira o valor de URI de Redirecionamento de no registo de aplicação na secção AD FS.ida:Authority- introduza https://[nome de anfitrião do AD FS]/adfs. Por exemplo,https://adfs.contoso.com/adfsida:Resource- introduza o valor do Identificador de #5 na secção Registo de Aplicação no AD FS.
Testar a amostra
Esta seção mostra como testar o exemplo configurado.
Depois que as alterações de código forem feitas, reconstrua a solução.
Na parte superior do Visual Studio, verifique se Internet Explorer está selecionado e clique na seta verde.
Na Página inicial, clique em Entrar.
Será redirecionado para a página de login do AD FS. Vá em frente e faça login.
Depois de entrar, clique em Token de acesso.
Ao clicar no token de acesso, obtêm-se as informações do token de acesso ao chamar a API da Web.
Próximas Etapas
Fluxos OpenID Connect/OAuth do AD FS e Cenários de Aplicação