Создайте JsonWebKey из JSON
У меня есть URL-адрес с моими значениями jwks. Это выглядит так
{
"keys": [
{
"kty": "RSA",
"e": "AQAB",
"use": "sig",
"kid": "Has a Real Value Here",
"alg": "RS256",
"n": "Has a Real Value here"
}]
}
Я попытался взять этот json и передать его в конструктор JsonWebKey следующим образом:
HttpClient client = new HttpClient();
var response = client.GetAsync("https://myIdp/oauth2/jwks").Result;
var jwksString = response.Content.ReadAsStringAsync().Result;
publicJwk = new JsonWebKey(jwksString);
Когда я это делаю, ни одно из значений класса не заполняется. То, что получает значение, - это поле AdditionalData. Все это попадает в json-файл.
Есть ли способ заставить конструктор JsonWebKey фактически разобрать Json?
1 ответ
Значения jwks - это массив, поэтому вам понадобится jsonwebkeyset, который представляет собой набор jsonwebkey. что-то вроде этого:
HttpClient client = new HttpClient();
var response = client.GetAsync("https://myIdp/oauth2/jwks").Result;
var jwksString = response.Content.ReadAsStringAsync().Result;
jwkset = new JsonWebKeySet(jwksString);