Ошибка «страница не найдена» при использовании python social auth login для okta
Я получаю ошибку «Backend not found» при попытке настроить okta oidc login с помощью social-auth-app-django 5.4.2
вот настройки: 'social_django' добавляется в INSTALLED_APPS 'social_django.middleware.SocialAuthExceptionMiddleware' добавляется в MIDDLEWARE «social_django.context_processors.backends» и „social_django.context_processors.login_redirect“ добавлены в список в TEMPLATES[„OPTIONS“][„context_processors“]
AUTHENTICATION_BACKENDS = [
'django.contrib.auth.backends.ModelBackend',
'social_core.backends.okta_openidconnect.OktaOpenIdConnect',
]
LOGIN_URL = 'auth/login/okta_openidconnect/'
и в списке урлов проекта добавляется вот это
path('auth/', include('social_django.urls', namespace='social'))
когда я перехожу по url логина, я получаю ошибку 404 page not found
Backend not found
Request Method: GET
Request URL: https://my.site/auth/login/okta_openidconnect/?next=/en-us/
Raised by: social_django.views.auth
Using the URLconf defined in xxx.urls, Django tried these URL patterns, in this order:
...
17. en-us/ auth/ login/<str:backend>/ [name='begin']
The current path, en-us/auth/login/okta_openidconnect/, matched the last one.
Есть и другие настройки, такие как SOCIAL_AUTH_OKTA_OPENIDCONNECT_KEY и SOCIAL_AUTH_PIPELINE, которые, я уверен, верны, и я считаю, что даже если они не верны, это не связано с отсутствием правильного бэкенда.
Итак, кто-нибудь видит ошибку в этой настройке, которая может быть причиной сбоя бэкэнда?
Оказалось, что в конце url в SOCIAL_AUTH_OKTA_OPENIDCONNECT_API_URL
нужен '/oauth2'.