JWT hakkında:
Daha önce Java Project spring boot framework'te jwt kimlik doğrulaması kullandım, ama henüz C#'da kullanmadım ve bu makale jwt tabanlı posta kutusu doğrulamasını uygular. Akış şeması şöyledir:
Projenizde, nuget kullanarak JWT eklentisini kurun:
JwtHelper yardım sınıfını aşağıdaki şekilde kapsar:
Konsol çağrısını deneyin, jwt'nin son kullanma tarihini koyacağızVarsayılan ayar 15 dakikadır, konsol kodu şöyledir:
Token'ın değeri normal şekilde alabileceğini görebilirsiniz,token1 süresi doldu ve bir istisna atıldıŞöyle:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6Iml0c3ZzZUBpdHN2c2UuY29tIiwiZXhwIjoxNjA0ODIxMDQxLjB9.JG2pYtJxXTXBDs7Qtk9QBd5sR4BynxkirQ355sIu5Kg
itsvse@itsvse.com
JWT.Exceptions.TokenExpiredException: Token has expired. JWT'de. JwtValidator.Validate(String decodedPayload, String signature, String[] decodedSignatures) JWT'de. JwtDecoder.Validate(JwtParts jwt, Bayt[][] anahtarlar) JWT'de. JwtDecoder.Decode(JwtParts jwt, Bayt[] anahtar, Boolean verify) JWT'de. JwtDecoder.DecodeToObject[T](JwtParts jwt, Byte[] key, Boolean verify) JWT'de. JwtDecoderExtensions.DecodeToObject[T](IJwtDecoder decoder, String token, Byte[] key, Boolean verify) JWT'de. JwtDecoderExtensions.DecodeToObject[T](IJwtDecoder decoder, String token, String key, Boolean verify)
Akış şemasına göre, bunu web sitesinde uygulamaya çalışıyoruz, önce sayfayı kaydediyoruz, aşağıdaki şekilde gösterildiği gibi:
Bu sırada, şu adresli bir e-posta alacağız:
E-postadaki bağlantıya tıklayarak, aşağıda gösterildiği kayıt formu arayüzüne yönlendirileceksiniz:
Kullanıcı adı ve şifre bilgilerini doldurun ve kaydı tamamlamak için Kayıt tuşuna tıklayın, aşağıdaki şekilde gösterildiği gibi:
Bu makale ayrıca aşağıdaki noktaları da belirtir:
- Aynı IP veya aynı gelen kutusu gönderme frekansı
- Gönderme e-posta kaydını kaydet
- Kara liste stratejisi
(Son)
|