У меня есть сервер удостоверений, разработанный на сервере удостоверений 4 (v3.1.2), и веб-API. NET, разработанный на .NET Framework 4.6
. В веб-API я использую библиотеку проверки токенов доступа Identity Server 3 (v2.14.0) для проверки токенов входящего запроса.
Когда я пытаюсь получить доступ к ресурсу в веб-API. NET с помощью токены JWT, сгенерированные сервером идентификации, я всегда получаю несанкционированный ответ 401. Я настроил промежуточное программное обеспечение для Owin, как показано ниже в веб-API. NET.
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
{
Authority = "http://localhost:9080/IdentityServer"
});
var config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
app.UseWebApi(config);
}
}
Однако, чтобы выяснить, является ли это проблемой между токенами Identity Server 4 и Identity Server 3 токен доступа библиотека проверки, я создал отдельный сервер Identity с библиотекой Identity Server 3 (v2.6.3) и предоставил токен, сгенерированный из него для того же веб-API, который я использовал ранее (тот же Startup.cs, что и выше).
Этот запрос был успешно авторизован, и все работали, как ожидалось.
Мой вопрос:
Можно ли использовать токен с сервера идентификации 4 для проверки с использованием удостоверения сервер 3 доступа к библиотеке проверки токенов? или я что-то не так делаю?