ASP.NET Core 3.1 — IdentityServer4 — MVC-Client (Parte 8)

Na Parte 7 configuei o IdentityServer4 para que uma aplicação MVC (Model View Controller) possa ter uma tela de login para que os usuários acessem com seu usuário e senha.

Nesta parte, vamos ver como configurar a aplicação MVC (Model View Controller) para que esse processo seja totalmente automático.

Criar aplicação MVC

O Scaffold vai se encarregar de carregar o Bootstrap, JQuery de forma básica para que seja mais rápido. Caso você queira, dê uma olhada na Parte 6 onde eu falo sobre o Grunt e traga a configuração para esta aplicação, quanto a isso não há nenhum problema, perceba que se você fizer isso, já facilitou o processo de configuração dos pacotes de interface.

Veja que na criação da aplicação MVC não opter por configurá-la com o Identity, bem diferente do que fiz na aplicação do IdentityServer4, pois é lá que o nosso login está, ele que vai simular a autenticação como se fosse o Facebook.

NuGet

Startup.cs

  • Authority: É o endereço do IdentityServer4 que configuramos. Lembre-se que em produção vai ser obrigatório o uso de HTTPS.
  • ClientId: No post anterior configuramos um Client para a aplicação MVC e é aqui que especificamos que esta aplicação MVC é uma aplicação cliente para o IdentityServer4.
  • ClientSecret: Senha do Client.
  • GetClaimsFromUserInfoEndpoint: Permite que o User que está lá na ControllerBase venha preenchido.
  • Scope: No post anterior, também configuramos os Resources do IdentityServer4, e aqui apenas estamos indicando que gostaríamos que nas Claims os dados do OpenID Connect (obrigatório) sejam retornados para a aplicação MVC e que seja permitido o acesso à API de pagamento.

Eu pulei algumas configurações, pois algumas delas vão fazer mais sentido mais adiante em outro post.

Na prática

  • Acesse http://localhost:5004 que é o endereço da aplicação MVC.

Cookies

Como o foco não está na interface, seria interessante você baixar o projeto para pegar todas as alterações, ou comparar o branch anterior com este novo que foi criado. Acesse o código fonte no GitHub.

Continua em ASP.NET Core 3.1 — IdentityServer4 — MVC-API Request (Parte 9).

Originally published at http://alextochetto.com on April 6, 2020.