我们正在尝试使用WSO2 IS和Apache + mod-auth-mellon在不同的Apaches之间进行单点登录。
这是关于让SSO部分在多个Apache实例之间工作:
我得到了第一个使用WSO2 IS的Apache + mod-auth-mellon。在WSO2管理员上,我添加了身份提供者和服务提供者。
在登录第一个Apache实例后,我站起来了第二个Apache(+ mod_auth_mellon),并添加了第二个服务提供者,但我发现,为了登录第二个Apache实例,我必须添加一个指向第一个服务提供商中第二个Apache的额外ACS URL(在WSO2 IS Admin中),反之亦然。
我认为我必须添加的ACS URL是以“postResponse”结尾的那个。
这是否(必须将这些“交叉”ACS添加到多个服务提供商)基于SAML的SSO的“正常”要求?或者它是mod_auth_mellon和WSO2 IS特有的东西吗?
谢谢, 吉姆
答案 0 :(得分:1)
看起来您的第二个Apache(+ mod_auth_mellon)也从WSO2 IS中选择了相同的服务提供商(第一服务提供商)。您可以通过从IS中删除第二个服务提供商并将两个ACS URL保留在一个服务提供商中来确认这一点。如果您仍然可以登录第二个Apache,则两个服务提供商都可以使用。我不熟悉mod_auth_mellon,但是从WSO2 IS方面来说,没有必要为两个SP添加交叉ACS。
WSO2 IS决定根据应用程序发送的SAML请求中的颁发者的值来选择哪个服务提供商(在您的情况下为Apache + mod_auth_mellon)。即SAML请求中的颁发者值应等于SSO服务提供者配置中的颁发者值。如果您需要两个服务提供商配置,则您的两个Apaches应在请求中发送两个不同的颁发者值。