Sobre o JWT:
Já usei autenticação JWT no framework Java Project Spring Boot antes, mas ainda não usei em C#, e este artigo implementa validação de caixa de correio baseada no jwt. O fluxograma é o seguinte:
No seu projeto, use o Nuget para instalar o plugin JWT:
Encapsula a classe de ajuda JwtHelper da seguinte forma:
Tente usar a chamada de console, vamos colocar a data de validade do JWTA configuração padrão é 15 minutos, o código do console é o seguinte:
Você pode ver que o token pode receber o valor normalmente,Token1 expirou, causando a abertura de uma exceçãoComo segue:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6Iml0c3ZzZUBpdHN2c2UuY29tIiwiZXhwIjoxNjA0ODIxMDQxLjB9.JG2pYtJxXTXBDs7Qtk9QBd5sR4BynxkirQ355sIu5Kg
itsvse@itsvse.com
JWT.Exceptions.TokenExpiredException: Token has expired. No JWT. JwtValidator.Validate(String decodedPayload, String signature, String[] decodedSignatures) No JWT. JwtDecoder.Validate(JwtParts jwt, Byte[][] chaves) No JWT. JwtDecoder.Decode(JwtParts jwt, chave Byte[], Boolean verify) No JWT. JwtDecoder.DecodeToObject[T](JwtParts jwt, chave Byte[], Boolean verify) No JWT. JwtDecoderExtensions.DecodeToObject[T](IJwtDecoder decoder, String token, chave Byte[], Boolean verify) No JWT. JwtDecoderExtensions.DecodeToObject[T](IJwtDecoder decoder, String token, String key, Boolean verify)
De acordo com o fluxograma, tentamos implementá-lo no site, primeiro registrando a página, como mostrado na figura abaixo:
Neste momento, receberemos um e-mail que di:
Ao clicar no link do e-mail, você será direcionado para a nossa interface de formulário de inscrição, conforme mostrado abaixo:
Preencha as informações de nome de usuário e senha e clique em Registrar para concluir o registro, conforme mostrado na figura abaixo:
Este artigo também destaca os seguintes pontos:
- Mesmo IP ou mesma frequência de envio da caixa de entrada
- Registre o registro de e-mails de envio
- Estratégia de lista negra
(Fim)
|