我们正在为IDP发起的SSO实施服务提供商。我们使用open SAML v3
java library
来使用POST解析SAML响应。
我想验证SAML数据和格式,因此试图弄清楚是否有任何内置方法可以用来验证SAML数据。 我能够使用SAMLSignatureProfileValidator和SignatureValidator验证签名,但我还想验证SAML版本,实体提供商,受众,条件等。
当我深入到库中时,我能够找到在调用doInvoke()方法时验证WSSecuritySAML20AssertionTokenSecurityHandler
的类SAML
,但是消息应该是SOAP。此方法使用SAML20AssertionValidator进行验证。
我打算使用SAML20AssertionValidator来验证断言,所以我需要帮助来实现SAML20AssertionValidator。 SAML20AssertionValidator的构造函数如下所示。试图理解输入参数
public SAML20AssertionValidator(@Nullable final Collection<ConditionValidator> newConditionValidators,
@Nullable final Collection<SubjectConfirmationValidator> newConfirmationValidators,
@Nullable Collection<StatementValidator> newStatementValidators,
@Nullable final SignatureTrustEngine newTrustEngine,
@Nullable final SignaturePrevalidator newSignaturePrevalidator) {
还想确保这是进行验证的正确方向还是我还可以使用其他任何方法?
对此的任何指示都非常感谢。