ASP.NET Core — JWT Bearer Token — Azure Key Vault

Sem perder o foco na questão da segurança, além do IdentityServer4 que falei na série que começa na parte 1, podemos gerar um token no formato JWT (Json Web Token) e autorização Bearer de forma mais simples.

API

Azure App Registration

Para cadastrar basta clicar em “New registration” e preencher os campos.

Azure Key Vault

Criei um Key Vault no Azure e dentro dele cadastrei uma Secret conforme exibido na imagem abaixo com o nome “JwtSecurityKey”, para cadastrar use o botão “Generate/Import” e preencha os campos.

No menu “Overview” do Key Vault cadastrado tem uma URL ( DNS Name) que precisaremos mais adiante também.

Program.cs

appsettings.json

Extension Method — Authentication

O método de extensão deve ser chamado no Startup.cs.

services.AddJwtAuthentication(Configuration);

A configuração que eu gostaria de destacar é a do método AddJwtBearer, pois é ele que vai validar toda requisição que entrar na chamada dos métodos da API onde o ponto mais importante é a secret que vem diretamente do Azure Key Vault.

PostConfigure

Token

Get Token

Monitoring

The Twelve-Factor App

Github

Considerações

Originally published at http://alextochetto.com on June 11, 2020.