考虑将WSO2 IS部署为SAML IdP。但是 - 用户需要从两个独立的网络访问/验证 - 从内部专用网络和外部(公共)互联网。来自专用网络的用户无法访问互联网。实际上 - WSO2 IS将由几个(两个)主机名访问。
我们遇到的问题是,/ samlsso端点将用户重定向到repository / conf / identity.xml中定义为SSOService / IdentityProviderURL的端点。
因此 - 一组用户将无权访问身份验证端点。
一个解决方案是使用相同的用户存储为内部和外部访问提供单独的实例,但是 - 有没有办法使用单个配置?
提前感谢您的任何提示。
加布里埃尔
答案 0 :(得分:0)
显然不可能(wso2is-5.0.0)开箱即用
查看AuthnRequestProcessor的源代码,强制配置URL
// Validate 'Destination'
String idpUrl = IdentityUtil.getProperty(IdentityConstants.ServerConfig.SSO_IDP_URL);
if (authnReqDTO.getDestination() == null
|| !idpUrl.equals(authnReqDTO.getDestination())) {
String msg = "Destination validation for Authentication Request failed. " +
"Received: [" + authnReqDTO.getDestination() + "]." +
" Expected: [" + idpUrl + "]";
log.warn(msg);
return buildErrorResponse(authnReqDTO.getId(),
SAMLSSOConstants.StatusCodes.REQUESTOR_ERROR, msg);