несоответствие состояния authlib на устаревших веб-страницах - PullRequest
0 голосов
/ 28 января 2020

У меня есть Flask веб-приложение, которое выполняет аутентификацию OID C через authlib. Процесс обычно работает. Однако, когда сеанс «старый», обновление веб-страницы иногда приводит к следующей трассировке. Скопировав URL в новую вкладку браузера, аутентификация работает нормально.

К сожалению, проблему сложно отладить, потому что это происходит нерегулярно. У кого-нибудь есть идея, почему может возникнуть несовпадение состояний при обновлении страницы?

Спасибо за любые предложения.

  File "...", line 52, in login_callback
    @bp.route('/login_callback', methods=('GET', 'POST'))
  File "/workspace/authlib/authlib/integrations/flask_client/remote_app.py", line 120, in authorize_access_token
    params = self.retrieve_access_token_params(flask_req, request_token)
  File "/workspace/authlib/authlib/integrations/_client/base_app.py", line 160, in retrieve_access_token_params
    params = self._retrieve_oauth2_access_token_params(request, params)
  File "/workspace/authlib/authlib/integrations/_client/base_app.py", line 142, in _retrieve_oauth2_access_token_params
    raise MismatchingStateError()
authlib.integrations._client.errors.MismatchingStateError: mismatching_state: CSRF Warning! State not equal in request and response.
...