IdentityServer на Mvc: что ссылается аудитория в AddJwtBearer

У меня уже есть токен доступа, работающий с моим приложением в моем API-шлюзе.

var identityUrl = Configuration.GetValue<string>("urls:identity");
        services.AddAuthentication(options =>
        {
            options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;

        }).AddJwtBearer(options =>
        {
            options.Authority = Configuration.GetValue<string>("IdentityUrlExternal");
            options.RequireHttpsMetadata = false;
            options.Audience = "api1";              
            options.Events = new JwtBearerEvents()

На что ссылается аудитория в AddJwtBearer. Это относится к ClientId или ApiScope. На данный момент я основывался на настройке своего мобильного приложения для связи со шлюзом API. Если я изменил что-то, например, идентификатор клиента, отправленный с мобильного телефона (ro.client), я не смогу получить доступ к авторизованной функции API.

Я хотел бы получить четкое представление о том, что мои настройки правильные. Спасибо

Кроме того, как добавить Authorized Scope в основной проект ASP.net mvc под контроллером.

2 ответа

Следующая ссылка приведет вас к объяснению: http://docs.identityserver.io/en/latest/topics/apis.html

Свойство ApiName проверяет, есть ли у токена соответствующее утверждение аудитории (или короткая аудиторская проверка).

В IdentityServer вы также можете разделить API на несколько областей. Если вам нужна такая детализация, вы можете использовать систему политик авторизации ASP.NET Core для проверки областей.

Аудитория — это уникальный идентификатор выпущенного токена. Значение аудитории может быть либо идентификатором клиента для токена идентификатора, либо API для токена доступа.

В вашем проекте вы можете общаться с API1 , добавляя его в область вашего приложения.

Другие вопросы по тегам