Microsoft.IdentityModel.Tokens.JWT
için bir referans alıyorum ve her şey yolunda gidiyordu.JwtSecurityTokenHandler ve TokenValidationParameters
Yeni System.IdentityModel.Tokens.Jwt
numaralı telefonu kullandım, ancak hiç bir şey işe yaramıyor. JwtSecurityTokenHandler
'un ValidateToken
yöntemini bulamaz ve TokenValidationParameters
, AllowedAudience
, SigningToken
veya ValidateExpiration
özelliklerine sahip değildir.
Burada nelerin eksik? Bu konuda çalışan bir JWT doğrulama örneği olan herhangi biri var mı?
Benim "eski" kod: araştırma ve testlerin bir sürü sonra
private static void ValidateJwt(string jwt)
{
var handler = new JWTSecurityTokenHandler();
var validationParameters = new Microsoft.IdentityModel.Tokens.JWT.TokenValidationParameters()
{
AllowedAudience = "https://my-rp.com",
//SigningToken = new BinarySecretSecurityToken(Convert.FromBase64String(myBase64Key)),
SigningToken = new X509SecurityToken(
X509
.LocalMachine
.My
.Thumbprint
.Find("UYTUYTVV99999999999YTYYTYTY88888888", false)
.First()),
ValidIssuer = "https://my-issuer.com/trust/issuer",
ValidateExpiration = true
};
try
{
var principal = handler.ValidateToken(jwt, validationParameters);
}
catch (Exception e)
{
Console.WriteLine("{0}\n {1}", e.Message, e.StackTrace);
}
Console.WriteLine();
}
Bunun için teşekkürler! Ugh, çok sinir bozucu: \ ASP.NET'te kodlama, diğer çerçevelere kıyasla mutlak bir kabus oldu – ossys
Sevindim yardım! –
@ossys Belki de sadece Azure kısmı mı? ASP.NET'i bir süredir kullanıyor ve seviyoruz. Azure AD eşyalarını şimdi yapmalı ve arkada bir ağrı var. – Shelby115