使用 Python 为 SuccessFactors SSO

问题描述

我正在尝试将 SuccessFactors SSO 用于我的一个应用程序。我正在使用 python3-saml 库来实现。登录工作正常,但是当我尝试从我的应用程序注销时有一个问题。该场景是 SP 发起的注销。 SuccessFactors 仅支持 HTTP-Post 绑定,而 python3-saml 仅支持 HTTP-Redirect 绑定。所以为了弥补差距,我决定自己实现 HTTP-Post 绑定。我试图查找我应该如何构建请求,但我没有找到预期的请求格式。

以下是我尝试过的。

                        name_id = session_data.get('samlNameId')
                        name_id_format = session_data.get('samlNameIdFormat')
                        session_index = session_data.get('samlSessionIndex')

                        logout_request = OneLogin_Saml2_Logout_Request(
                            OneLogin_Saml2_Settings(settings_data),name_id=name_id,name_id_format=name_id_format,session_index=session_index
                        )

                        response = requests.post(auth.get_slo_url(),data={
                            'SAMLRequest': logout_request.get_request()
                        })

我不确定数据字典中的键应该是 SAMLRequest 还是 LogoutRequest。使用当前的代码段,用户不会从 IdP 中注销。任何有关一般预期请求格式如何的见解都会非常有帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...