我已经运行了WSO2 IS,并且已经设置了SAML入站身份验证的服务提供商。我已经为SAMl服务提供商启用了“在身份验证请求和注销请求中启用签名验证”复选框。
如果我发送未正确签名的AuthnRequest,它将出错。但是,如果我发送带有 no 签名的LogoutRequest(或使用由完全不同的证书/密钥制成的签名),它将注销我的用户而没有错误。如何启用实际的签名验证WSO2 IS?
我正在运行最新的WSO2 Docker容器。我相信根据此启动日志记录是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
答案 0 :(得分:1)
由于代码中的问题,似乎签名验证[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