Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Saiba como criar usuários de entrada de um aplicativo Web autenticados pelo AD FS 2019 e adquirir tokens usando a biblioteca MSAL para chamar APIs Web.
Antes de ler este artigo, é necessário estar familiarizado com os Conceitos do AD FS e o Fluxo de concessão de código de autorização
Overview
Neste fluxo, adicione autenticação ao aplicativo Web (Aplicativo de Servidor), que poderá, portanto, conectar os usuários e chamar uma API Web. No aplicativo Web, para chamar a API Web, use o método de aquisição de token AcquireTokenByAuthorizationCode de MSAL. Use o fluxo de código de autorização, armazenando o token adquirido no cache de token. Em seguida, o controlador adquire tokens silenciosamente do cache quando necessário. A MSAL atualiza o token, se necessário.
Aplicativos Web que chamam APIs Web:
- são aplicativos clientes confidenciais.
- Registrou um segredo (segredo compartilhado do aplicativo, certificado ou conta do AD) no AD FS. Esse segredo é passado durante a chamada ao 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 configuração de código e registro do aplicativo.
Pre-requisites
- Ferramentas de cliente do GitHub
- AD FS 2019 ou posterior configurado e em execução
- Visual Studio 2013 ou posterior.
Registro de aplicativo no AD FS
Esta seção mostra como registrar o Aplicativo Web como um cliente confidencial e a API Web como uma RP (terceira parte confiável) no AD FS.
No Gerenciamento dos 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 Aplicativos, para o Nome , insira WebAppToWebApi e , emClient-Server aplicativos , selecione o aplicativo Servidor acessando um modelo de API Web . Clique em Próximo.
Copie o valor Identificador de Cliente. O valor é usado posteriormente como o valor de ida:ClientId nos aplicativos Web.config arquivo. Insira o seguinte para URI de redirecionamento: – https://localhost:44326. Clique em Adicionar. Clique em Próximo.
Na tela Configurar Credenciais do Aplicativo, faça uma verificação em Gerar um segredo compartilhado e copie o segredo. Esse segredo é usado posteriormente como o valor de ida:ClientSecret no arquivo deWeb.config de aplicativos. Clique em Próximo.
Na tela Configurar API Web, insira o Identificador:https://webapi. Clique em Adicionar. Clique em Próximo. Esse valor é usado posteriormente para ida:GraphResourceId nos aplicativos Web.config arquivo.
Na tela Aplicar Política de Controle de Acesso, selecione Permitir a todos e clique em Avançar.
Na tela Configurar Permissões de Aplicativo, verifique se o openid e user_impersonation estão selecionados e clique em Avançar.
Na tela Resumo, clique em Avançar.
Na tela Concluído, clique em Fechar.
Configuração de código
Esta seção mostra como configurar um Aplicativo Web ASP.NET para fazer logon do usuário e recuperar o token para chamar a API Web
Baixe o exemplo aqui
Abrir o exemplo usando o Visual Studio
Abra o arquivo web.config. Modifique o seguinte:
ida:ClientId– insira o valor do Identificador de Cliente de nº 3 no Registro de Aplicativo na seção AD FS.ida:ClientSecret- insira o valor do segredo de nº 4 na seção Registro de Aplicativo no AD FS.ida:RedirectUri– insira o valor de URI de Redirecionamento de nº 3 no Registro de Aplicativo na seção AD FS.ida:Authority- insira https://[seu nome de host do AD FS]/adfs. Por exemplo,https://adfs.contoso.com/adfsida:Resource- insira o valor do Identificador de nº 5 no Registro de Aplicativo na seção AD FS.
O exemplo de teste
Esta seção mostra como testar o exemplo configurado.
Após as alterações de código, recompile a solução.
Na parte superior do Visual Studio, verifique se o Internet Explorer está selecionado e clique na seta verde.
Na Home Page, clique em Entrar.
Você será redirecionado para a página de entrada do AD FS. Vá em frente e entre.
Depois de conectado, clique em Token de Acesso.
Clicar em Access Token obtém as informações do token de acesso chamando a API da Web.
Próximas etapas
Fluxos e cenários de aplicativo do AD FS OpenID Connect/OAuth