Гость
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Релогин аккаунта при выдачи роли или удалении пользователя / 25 сообщений из 83, страница 1 из 4
16.01.2019, 16:13
    #39760375
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Добрый день. Реализую небольшой проект, где необходимо применять роли, которые может назначать и снимать администратор. Использую стандартную реализацию IdentityUser, которая создается по дефолту. Выдать/забрать права/роль не проблема, а вот как обновить пользователю его сессию со стороны сервера чтобы недоступные пункты отобразились у него и чтобы это было без ручного перезахода пользователем на сайт. То есть обычный пользователь стал администратором, обновил тут же страницу и увидел несколько новых пунктов меню, которые ранее не были ему доступны. Или наоборот забрать, а сейчас получается, что забираю у пользователя права администратора или вообще удаляю его и пока он вручную не выйдет с аккаунта и не зайдет он все так же может выполнять все функции администратора.
Спасибо большое.
...
Рейтинг: 0 / 0
16.01.2019, 16:51
    #39760424
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewувидел несколько новых пунктов меню, которые ранее не были ему доступны.обычно перелогин, т.к.кэшируется все подряд.
Вам наверно делать нечего. Или ТЗ такое?
...
Рейтинг: 0 / 0
16.01.2019, 16:53
    #39760425
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewИли наоборот забрать, а сейчас получается, что забираю у пользователя права администратора или вообще удаляю его и пока он вручную не выйдет с аккаунта ипошли сообщение ему чтобы перелогинился.
Либо закрой его сессию если надо.
...
Рейтинг: 0 / 0
16.01.2019, 17:03
    #39760432
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

Тут даже не то чтобы делать нечего, а обычная логика, что если человека удалили с сайта, то он не может как обычно сидеть и редактировать документы/базу и тд. А сейчас получается, что сайт позволяет это сделать т.к. его сессия кэширована. В Startup.Auth есть такая строчка:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
Provider = new CookieAuthenticationProvider
{
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromSeconds(10),
regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
}
});

в данном случае я поставил чтобы каждые 10 секунд проверялись на сервере все валидации, но считаю, что это глупо за ненадобностью грузить систему. Вот вы сказали разлогинить его, это считаю выходом, но как это сделать? через UserManager.SignOut я могу только себя отключить, а как отключить конкретного пользователя ?
...
Рейтинг: 0 / 0
16.01.2019, 17:13
    #39760439
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skew,
Ну т.е. по логике мы из вопроса обновления прав пришли к вопросу:
Как обнулить или закрыть сессию юзверя?
Так?
...
Рейтинг: 0 / 0
16.01.2019, 17:20
    #39760445
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,
ну хоть как-то, мне сейчас и интересны сами способы и их реализация. Если можно обновить его права без релога, то вообще замечательно, если нельзя, то тоже ничего страшного, главное чтобы после обнуления пользователь не мог вносить корректировки в систему
...
Рейтинг: 0 / 0
16.01.2019, 17:42
    #39760455
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skew,

Пробуй когда надо установить validationInterval в 0.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
    AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
    LoginPath = new PathString("/Account/Login"),
    Provider = new CookieAuthenticationProvider
    {
        // Enables the application to validate the security stamp when the user logs in.
        // This is a security feature which is used when you change a password or add an external login to your account.  
        OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
            validateInterval: TimeSpan.FromSeconds(0),
            regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
    }
});
...
Рейтинг: 0 / 0
16.01.2019, 17:44
    #39760456
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skew,
Еще можно удалить куку. У тебя же полные права на сервере.
...
Рейтинг: 0 / 0
16.01.2019, 17:52
    #39760460
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

Я просто именно в веб часть ушел совсем недавно, до этого годы десктопных приложений и пока не знаю как достучаться до тех же кук для конкретного пользователя
...
Рейтинг: 0 / 0
16.01.2019, 17:55
    #39760462
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
...
Рейтинг: 0 / 0
16.01.2019, 18:39
    #39760476
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

что-то поискал по всем компонентам, но обновления (RefreshSignInAsync) так и не нашел
...
Рейтинг: 0 / 0
16.01.2019, 18:47
    #39760478
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Статья по ASP.NET Core, свою версию вы не озвучили
...
Рейтинг: 0 / 0
16.01.2019, 18:50
    #39760480
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Shocker.Pro,

Извиняюсь. Я пока все делаю на ASP.NET MVC
...
Рейтинг: 0 / 0
16.01.2019, 19:07
    #39760487
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewShocker.Pro,

Извиняюсь. Я пока все делаю на ASP.NET MVCтогда уж какой версии)
...
Рейтинг: 0 / 0
16.01.2019, 19:13
    #39760489
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

последней, которую Visual Studio 2019 создает, предполагаю MVC 5
...
Рейтинг: 0 / 0
16.01.2019, 19:35
    #39760496
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewPetro123,

последней, которую Visual Studio 2019 создает, предполагаю MVC 5старьё)))
Пробуй:
Session.Clear();
Session.Abandon();
Response.Cookies["ASP.NET_SessionId"].Value = string.Empty;
Response.Cookies["ASP.NET_SessionId"].Expires = DateTime.Now.AddMonths(-10);
...
Рейтинг: 0 / 0
16.01.2019, 20:18
    #39760512
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

не помогло, если с пользователя проверять наличие прав, то они меняются, а вот функционал остается прежним
...
Рейтинг: 0 / 0
16.01.2019, 20:22
    #39760514
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

И почему вы говорите, что старье?) Я просто начал изучать с него чтобы следом на NetCore перейти
...
Рейтинг: 0 / 0
16.01.2019, 20:48
    #39760519
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewPetro123,

И почему вы говорите, что старье?) Я просто начал изучать с него чтобы следом на NetCore перейтитам смайлики. Изучайте и то и то.
...
Рейтинг: 0 / 0
16.01.2019, 20:49
    #39760521
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewPetro123,

не помогло, если с пользователя проверять наличие прав, то они меняются, а вот функционал остается прежнимдобавьте редирект на логин форму
...
Рейтинг: 0 / 0
16.01.2019, 21:43
    #39760535
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

Так редирект же меня перекинет, а не пользователя
...
Рейтинг: 0 / 0
16.01.2019, 21:51
    #39760538
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skew,
Есть внутренний и есть веешний.
Внешний говорит Ослику что надо перейти туда то, и пользователь увидит что урл сменился на урл логина.
...
Рейтинг: 0 / 0
16.01.2019, 22:04
    #39760542
skew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
Petro123,

RedirectToActionPermament тоже делает переход только моего аккаунта, может я просто чего-то не понимаю. Хотя странно, что такой банальный вопрос, который реализован почти на каждом форуме и сайте в ограничении пользователю доступа (блокировка) реализуется не в 2 клика в asp.net ведь по сути это одно и то же, изменить права юзера.
...
Рейтинг: 0 / 0
16.01.2019, 22:24
    #39760547
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewRedirectToActionPermament тоже делает переход только моего аккаунта, может я просто чего-то не понимаю.в каком смысле только вашего?
Делайте так:
- на форме Здравствуй <ИмяЛогина>
- в контроллере на кнопку делаете редирект на форму логина.
Значит с любого логина вы перейдёте после клика на форму.
...
Рейтинг: 0 / 0
16.01.2019, 22:27
    #39760548
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Релогин аккаунта при выдачи роли или удалении пользователя
skewХотя странно, что такой банальный вопрос, который реализован почти на каждом форуме и сайте в ограничении пользователю доступа (блокировка) реализуется не в 2 клика в asp.net ведь по сути это одно и то же, изменить права юзера.
Откуда опыт про клики в "каждом форуме и сайте"?
Рассказывайте.
Пока у вас редирект простейший не выходит.
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Релогин аккаунта при выдачи роли или удалении пользователя / 25 сообщений из 83, страница 1 из 4
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]