Функция выхода из системы на стороне клиента AngularJS

0

Я пробую следующую статью, чтобы практиковать функции входа и регистрации с клиентской стороны, используя механизм проверки подлинности на основе AngularJS и токенов. Однако в статье не упоминается, как обрабатывать функции маркера выхода и истекшего срока действия с клиентской стороны, используя AngularJS.

Мои вопросы: 1) Если я хочу добавить глобальную кнопку выхода из системы HTML, и если пользователь нажмет эту кнопку, то как я могу очистить токен аутентификации с клиентских сторон Угловые скрипты, а также со стороны сервера (.Net/С#)?

2) Я установил допустимый период для токена аутентификации (со стороны сервера.NEt/С#) до 60 минут. Если браузер не работает (не взаимодействует с пользователем вообще) через 60 минут или более, то как пользователь автоматически загружает сайт и направляется на страницу входа в систему, если он возобновляет свою работу в браузере после 60 или более минут, интервал ожидания?

Заранее спасибо.

Ссылка статьи:

Начало работы с AngularJS и ASP.NET MVC - долгожданная часть третьей


Некоторые краткие сведения об аутентификации на токенах, используемые автором статьи:

Тело запроса токена POST:

grant_type: password userName: [email protected] (или все, что вы зарегистрировали) password: Password1! (или любой пароль, который вы указываете при регистрации)

И токен:

{ "Access_token": "Р-AejC88wImTKUulwlZBRsR620zXuHcrjV26UGObVjl5s9aqJIhs2hzt60CdLhL0hXNR-kyLTgrTfiMDV4JZJsmC1jV3MQHKcScsW6lYAMz1kegSyQiSfRHVj8W1E76x9uiHYJVIWhwA_RH7GkTn3K_Z0ugV_0qsSd1cWZ5qpqRedrS1vbHNIr7PR-FvAcKGA5c0S7ffadD8TP6N8OX8AyEg2t5rxppAeT2AlqlY3G5HdJqDkPgXQx5pL_xXRWkQCuOhIgUCm-6TDAksNf-EJ7HzPKD7nl7KU8Pd66rQO56p_vtq6eOO9OtgAmN8FviR-gNKGHCsz4udPrAKTExF_Ht4hBpbLoiGIXIbVUpzTeB-RMZUMMcRgByo4tCELjd41pV0mjaXHS6s7mTuwlgGmxiAU5AoYgNTXVOe9YegZMvjW_lAIUw0YlZ0m7RAiPOTTDlRzmV1ntm3YGvAN9h9_m027twqfGz5YsHsbh3RYW8", "token_type": "носителем", "expires_in": 1209599, "имя_пользователя": "[email protected]", ".issued ":" Sun, 16 ноября 2014 22:55:45 GMT ",".expires ":" Sun, 30 ноября 2014 22:55:45 GMT "}

  • 0
    Где вы храните токен на стороне клиента? LocalStorage? Вы можете удалить его оттуда с помощью кнопки «Выйти».
  • 0
    Спасибо за вашу помощь.
Теги:
asp.net-web-api
restful-authentication

1 ответ

1
Лучший ответ

Q1: как сказал jpgrassi, вы можете удалить/установить неопределенный токен пользователя, так как вы его сохранили (пример case: SessionService.token) в событии "выход из системы".

Q2: учитывая, что вы знаете, как настроить Owin, вы можете изменить AccessTokenExpireTimeSpan в OAuthAuthorizationServerOptions. Пример:

...
OAuthAuthorizationServerOptions OAuthServerOptions = new OAuthAuthorizationServerOptions() {
  AccessTokenExpireTimeSpan = TimeSpan.FromMinutes(minutes) 
};
...
app.UseOAuthAuthorizationServer(OAuthServerOptions);
  • 0
    Спасибо за помощь. Я храню токен с помощью localStorage и очищаю его при выходе пользователя из системы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню