Как оставаться аутентифицированным с помощью ms-adal-angular6?

#angular #adal

#angular #adal

Вопрос:

У меня есть AuthService в качестве оболочки для MsAdalAngular6Service. Метод проверяет, аутентифицирован ли текущий пользователь:

    export class AuthService {
      constructor(private adal: MsAdalAngular6Service) {}
    
   isAuthenticated() {
    return this.adal.isAuthenticated;
   }
  

Если текущий пользователь неактивен в течение некоторого (короткого) времени adal.isAuthenticated , возвращается false . Но я хочу, чтобы он вернулся true .

У меня нет доступа к Azure, чтобы изменить время истечения срока действия токена. Итак, я хочу, чтобы это приложение постоянно обновляло токен после того, как пользователь вошел в систему в какой-то момент, так что this.adal.isAuthenticated возвращает true :

Вы можете мне помочь?

Ответ №1:

Из ADAL мы не можем настроить время истечения токена, что вы можете сделать, так это когда ток adal истекает, сделайте acquiretoken запрос и обновите токен. Даже после обновления токена, если adal.isAuthenticated он не изменен на ture, вам нужно вручную установить для него значение true, но это не рекомендуемый способ.

Мы бы рекомендовали вам перейти на MSAL вместо ADAL, поскольку ADAL устарел, начиная с 30 июня 2020 года, мы больше не будем добавлять новые функции в ADAL. Мы продолжим добавлять критические исправления безопасности в ADAL до 30 июня 2022 года. После этой даты ваши приложения, использующие ADAL, будут продолжать работать, но мы рекомендуем перейти на MSAL, чтобы воспользоваться новейшими функциями и оставаться в безопасности.

Пожалуйста, выберите MSAL вместо ADAL, и вот пример angular с использованием MSAL

Пожалуйста, обратитесь к ссылке для переноса ADAL в MSAL

Комментарии:

1. Спасибо, Рагхавендра! Может быть, я попробую MSAL.