Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javasaml的SP Init SSO_Java_Single Sign On_Saml_Spring Saml_Federated Identity - Fatal编程技术网

使用javasaml的SP Init SSO

使用javasaml的SP Init SSO,java,single-sign-on,saml,spring-saml,federated-identity,Java,Single Sign On,Saml,Spring Saml,Federated Identity,我对这个世界很陌生,在过去两周里学到了很多。说到这里,我正在为服务提供商发起的支持多个Idp的SSO(在应用程序上)起草一个解决方案。我正在使用onelogin的javasaml库,并将示例工具包配置为使用我们自己的身份提供者来生成身份验证请求/响应,以理解协议 以下是我需要帮助进一步理解的问题。请给我建议 识别客户Idp 正如我提到的,我们的应用程序将启动sso流并 应支持多个Idp。我希望有一个共同的 为客户提供启动此流程的受保护资源。我是吗 那样想是不对的?比如使用查询字符串来区分和识别I

我对这个世界很陌生,在过去两周里学到了很多。说到这里,我正在为服务提供商发起的支持多个Idp的SSO(在应用程序上)起草一个解决方案。我正在使用onelogin的javasaml库,并将示例工具包配置为使用我们自己的身份提供者来生成身份验证请求/响应,以理解协议

以下是我需要帮助进一步理解的问题。请给我建议

识别客户Idp
  • 正如我提到的,我们的应用程序将启动sso流并 应支持多个Idp。我希望有一个共同的 为客户提供启动此流程的受保护资源。我是吗 那样想是不对的?比如使用查询字符串来区分和识别IDP。
  • 我还了解到应用程序URL可以包含子域 映射到唯一客户以识别客户的信息 Idp.我该如何实现这一点
  • 还有其他方法吗?不要求用户选择标识符
  • 用户 在我的解决方案中,应用程序用户名可能与sso用户名不同。我了解到,我可以通过客户用户商店请求Idp提供商在saml响应中提供我的应用程序用户名作为属性

  • 客户是否可以将sp应用程序用户名作为querystring发送(如问题1)
  • 是否有其他方法获取sp应用程序用户名?同样,不要求用户识别

  • 感谢您分享您的知识和指导。

    如果执行基于简单SAML的WebSSO(无帐户链接),则身份验证(so用户标识)仅在IdP端进行,而不是在SP端。SP“just”使用关于已验证身份的断言。断言可以包含属性语句,SP(应用程序)可以使用这些语句将身份映射到本地“用户配置文件”。标准SAML元数据不提供定义应发送哪些属性语句的方法,因此您需要与IdP的管理员协商

    IdP发现可以用不同的方式完成,SAML规范讨论了首选IdP cookie


    您可以提供一个IDP列表,供用户选择,也可以使用HTTP请求中的一些信息进行智能猜测。

    Ty Bernard。什么是简单的基于SAML的WebSO?这里还有其他方法吗?我还没和Idp的管理员谈过。因此,我真的非常感谢您对这方面有更多的了解。SAML还允许所谓的帐户链接(有时也称为联合)。在这种情况下,您有两个标识库,一个在IdP端,另一个在SP端,帐户应该链接在一起。要实现这一点,将使用“持久”名称格式,这可能是SP提供身份验证对话框的提示。如果经过身份验证,将在两个实体上建立帐户链接,并且将来只交换不透明句柄。当SP在将来的IdP断言中收到此不透明句柄时,它知道该句柄链接到哪个标识。