none
Применить роль в ASP Identity 2 без logout RRS feed

  • Общие обсуждения

  • Здравствуйте.

    Использую ASP MVC + ASP Identity 2, bearer token authentication.

    В админке есть возможность изменить роль пользователя (Admin/User).

    На контроллерах повешены атрибуты, ограничивающие доступ по роли: 

        [Authorize(Roles="Admin")]

    Но новая роль применяется только после выхода и повторного логина.

    Вот нашел решение, по аналогии у себя написал:

                var authenticationManager = HttpContext.Current.GetOwinContext().Authentication;
    
                authenticationManager.SignOut(DefaultAuthenticationTypes.ExternalBearer);
    
                var user = this.UserManager.FindById(model.ApplicationUserId);
                var identity = this.UserManager.CreateIdentity(user, DefaultAuthenticationTypes.ExternalBearer);
    
                authenticationManager.SignIn(new AuthenticationProperties { IsPersistent = false }, identity);

    Но у меня это не работает. 

    Единственно что пока приходит в голову, что с bearer token аутентификацией нужно делать по-другому.

    Кто-нибудь знает как решить проблему?

    Спасибо.

    19 июня 2014 г. 13:25