Как реализовать OIDC с помощью vuex-oidc в vue.js

#vue.js #oauth-2.0 #openid-connect

#vue.js #oauth-2.0 #OpenID-подключиться

Вопрос:

  • Мы пытаемся внедрить OIDC для перехода пользователей с нашей основной платформы на нашу вторичную платформу
  • При вызове функции AutomaticSilentRenew выдается следующая ошибка:
  • Здесь что-то не так (PFA)

Объект конфигурации OIDC:
VUE_APP_OIDC_CONFIG={"authority": "https://auth.mainPlatform.com", "clientId": "<client-id>", "redirectUri": "http://localhost:8080/oidc-callback", "popupRedirectUri": "http://localhost:8080/oidc-popup-callback", "responseType": "id_token token", "scope": "openid email", "automaticSilentRenew": true, "automaticSilentSignin": true, "silentRedirectUri": "http://localhost:8080/silent-renew-oidc.html"}

Ошибка:
{context: "authenticateOidcSilent", error: "login_required"} App.vue?234e:38 I am listening to the oidc error event in vuex-oidc context: "authenticateOidcSilent" error: "login_required"

Ошибка OpenID Connect

Ответ №1:

Это абсолютно стандартная часть процесса автоматического обновления и может произойти по двум причинам:

  • По истечении срока действия cookie сеанса сервера авторизации
  • Если браузер удаляет файл cookie сеанса AS — например, Safari, скорее всего, сделает это в 2020 году

Обычным действием при получении кода ошибки login_required является перенаправление пользователя для повторного входа в систему.

УСТРАНЕНИЕ НЕПОЛАДОК

Если это происходит при каждом запросе на обновление токена, я бы отладил с помощью такого инструмента, как Fiddler, чтобы увидеть, отправляется ли cookie. Ваша проблема может быть вызвана недавними ограничениями браузера на междоменные файлы cookie.

Для сравнения смотрите мой пост в блоге о беззвучном обновлении токена.