Недавно я присоединился к команде проекта, которому было поручено настроить роли пользователей для бэкэнд проекта. Он использует ASP.NET C# WebApi с Owin. Мой вопрос, когда я присвоить атрибут к методу контроллера, как это:Авторизация Owin запрещает ролю
[Authorize(Roles = "Admin")]
Отклик всегда прав запрещен для данного запроса. Однако, если я просто использую:
[Authorize]
Он работает. Обратите внимание, что я вхожу в систему с пользователем, которому была назначена роль администратора.
Я заметил, что этот вопрос похож на: Authorization roles WebAPI oauth owin
Тем не менее, кажется, их код в startup.cs отличается каким-то образом, или же я изо всех сил, чтобы правильно следовать ответ.
код в startup.cs, что я должен работать с это:
public void Configuration(IAppBuilder app)
{
// configure OAuth
ConfigureOAuth(app);
// configure Mvc
HttpConfiguration config = new HttpConfiguration();
WebApiConfig.Register(config);
app.UseWebApi(config);
}
public void ConfigureOAuth(IAppBuilder app)
{
OAuthAuthorizationServerOptions OAuthServerOptions = new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true,
TokenEndpointPath = new PathString("/token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(1),
Provider = new SimpleAuthorizationServerProvider()
};
// Token Generation
app.UseOAuthAuthorizationServer(OAuthServerOptions);
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
}
Есть ли что-то еще мне нужно добавить здесь, чтобы для ролей или он должен быть где-то в коде. Я не совсем знаком с ASP.NET C# MVC или WebApi, любая помощь сильно оценена.
Пожалуйста, покажите протоколирования логику и где вы назначаете претензий/Роли –