Identity Server不验证SAML LogoutRequest签名



我已经运行了WSO2IS,并且有一个服务提供商设置了SAML入站身份验证。我已经为SAMl服务提供商启用了"在身份验证请求和注销请求中启用签名验证"复选框。

如果我发送未正确签名的AuthnRequest,它将出错。但是,如果我发送带有签名的LogoutRequest(或带有由完全不同的证书/密钥制成的签名(,它将使我的用户无错误地注销。如何启用实际签名验证WSO2 IS?

我正在运行最新的WSO2 Docker Container。我相信这是is 5.7.0根据这个启动日志:

Starting WSO2 Carbon... Operating System : Linux 4.9.93-linuxkit-aufs, amd64 Java Home : /home/wso2carbon/java/jre Java Version : 1.8.0_144 Java VM : Java HotSpot(TM) 64-Bit Server VM 25.144-b01,Oracle Corporation Carbon Home : /home/wso2carbon/wso2is-5.7.0 Java Temp Dir : /home/wso2carbon/wso2is-5.7.0/tmp

似乎由于代码中的问题,签名验证[1]在注销请求中跳过。请参阅git问题[2]来跟踪此问题。

[1]https://github.com/wso2-extensions/identity-inbound-auth-saml/blob/ee338982c1add8f75f1132a6b3bacb30cee7989b/components/org.wso2.carbon.identity.sso.saml/src/main/java/org/wso2/carbon/identity/sso/saml/processors/SPInitLogoutRequestProcessor.java#L130
[2]https://github.com/wso2/product-is/issues/4048

最新更新