Не понимаю, как выйти из FusionAuth из приложения Django
Я пишу приложение Django, которое использует стороннюю службу аутентификации, реализованную с помощью FusionAuth.
Я могу успешно зарегистрироваться и войти в систему (используя поток кода авторизации).
Однако выход из системы не работает. Я могу выйти из локального приложения Django, но когда я пытаюсь войти в систему после этого, FusionAuth распознает, что мой access_token
все еще действителен, и просто переходит прямо на страницу перенаправления (страница, на которую вы обычно попадаете после успешного входа в FusionAuth).
Очевидно, я что-то не понимаю в FusionAuth. Я пробовал и python клиент и restful API и я не очень понимаю, что он делает. Согласно документации, он "...предназначен для удаления маркера обновления и маркера доступа из cookies, если они существуют на клиенте, и отзыва маркера обновления". Почему тогда access_token
все еще действителен?
Кажется, здесь есть несколько проблем.
Сначала вам нужно перенаправить браузер на https://your.fusionauth.instance/oauth2/logout, что приведет к удалению вашей сессии FusionAuth SSO. Это остановит поведение FusionAuth, перенаправляющего вас. Это происходит потому, что у вас есть cookie сессии SSO, и переход на этот URL удалит его.
Во-вторых, если вы хотите отозвать маркер доступа, это требует немного больше работы. Он не имеет статического характера. Это не то же самое, что сессия, и отличается от упомянутой выше сессии SSO. Токен доступа - это то, что вы предоставляете другим API, а не FusionAuth. Вот дополнительная информация: https://fusionauth.io/learn/expert-advice/tokens/revoking-jwts
Надеюсь, это поможет.