#asp.net-core #asp.net-core-webapi #pingfederate
#asp.net-core #asp.net-core-webapi #pingfederate
Вопрос:
Я хотел бы проверить токен доступа PingFederate в конце .Net Core (3.1) api. Я пытаюсь использовать конечную точку introspect в качестве полномочий с помощью токена, полученного от клиента.
Однако я получаю следующую систему ошибок.Исключение InvalidOperationException: IDX20803: не удалось получить конфигурацию из: ‘System.Строка’.
Я новичок в PingFed, мне не хватает какой-либо конфигурации или я должен следовать другому подходу для проверки.
Я следил за приведенным ниже потоком кода
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options =>
{
options.Audience = Configuration["Audience"];
options.Authority = "https://dev.abc.com/as/introspect.oauth2/";
options.TokenValidationParameters = new TokenValidationParameters
{
// Validate the JWT Audience
ValidateIssuerSigningKey = true,
IssuerSigningKey = new X509SecurityKey(x509Cert),
ValidateIssuer = true,
ValidIssuer = "https://dev.abc.com"
ValidateAudience = true,
ValidateLifetime = true
};
});
Комментарии:
1. Какова ценность
Configuration["Audience"]
? Вы уверены, что проблема в этом коде?2. Я использую идентификатор клиента в качестве свойства аудитории.
3. Хорошо, но покажите нам значение Configuration [«Аудитория»]. Вы уверены, что проблема в этом коде? Вы получили ошибку о конфигурации, итак, вы уверены, что проблема в этом коде?
4. Я использую «dev-test» в качестве конфигурации [«Аудитория»]. при регистрации приложения я использовал «dev-test» в качестве идентификатора клиента.
Ответ №1:
Разве аудитория не должна быть одной из ваших redirect_uri? Также вашим полномочием должно быть значение эмитента в вашей хорошо известной конфигурации, в вашем случае, скорее всего: «эмитент»: «https://dev.abc.com «