用于注销时 URL 重定向的 Django SAML2 插件(通常到 IdP 注销)
项目描述
django-saml2-auth-signout-redirect
将用户重定向到 django-saml2-auth 中的 URL(通常是 ADFS 注销 URL)的插件
介绍
默认情况下,django-saml2-auth 仅注销本地 Django 应用程序中的用户。出于安全原因,注销需要传递给 IdP(身份提供者)。否则,单击登录按钮的用户将在不提供密码(或其他方式)的情况下再次登录。如果您能够签署请求(即提供证书和密钥),请参阅django-saml2-auth-signout-slo
。如果您无法(或不想)签署注销请求,则此插件是您的下一个最佳选择。这个插件不是真正的单点注销,而是让您将用户重定向到 IdP 的注销页面,默认为 ADFSidpinitiatedsignin
页面。
例子
在 settings.py 中:
INSTALLED_APPS += (
...
'django_saml2_auth',
# ensure the plugin is loaded
'django_saml2_auth_signout_redirect',
...
)
# this is the "usual" config object from django-saml2-auth
SAML2_AUTH = {
'DEFAULT_NEXT_URL': '/',
'PLUGINS': {
# use this package in lieu of DEFAULT signout plugin
'SINGOUT': ['REDIRECT'],
},
# optionally specify the URL
'LOGOUT_REDIRECT_URL': 'https://<idp.com>/<logout>
}
ADFS
默认情况下,此包将用户重定向到<SSO Endpoint>/idpinitiatedsignon.aspx
在 ADFS 服务器上提供手动登录/注销的用户。除非您使用非常规的 SSO 路径,否则这应该是开箱即用的。