在java中生成SAML响应/断言
我正在使用idp启动的身份验证。我想生成SAML响应以发送到SalesForce。我在元数据的响应中设置了必要的值。请告诉我使用openSAML类来生成响应/断言。在java中生成SAML响应/断言
以下是将要使用的主要类。
断言
签名
SubjectConfirmationData
填充NameID
主题
条件
观众
AuthnContextClassRef
AuthnStatement
看到这对openSAML库link
如果您正在寻找创建SAML断言并想要一些便利方法来帮助您处理OpenSAML库,那么可以看看WSS4J的SAML2ComponentBuilder。这在Apache CXF和其他Java服务栈中广泛使用。
创建断言是那么容易,因为:
//Create assertion
Assertion assertion = SAML2ComponentBuilder.createAssertion();
//create issuer
Issuer issuer = SAML2ComponentBuilder.createIssuer(issuerString);
assertion.setIssuer(issuer);
可以明显地设置上述所有值,并有一个“AssertionWrapper”规定,在数字签名的断言助攻:
assertionWrapper。 signAssertion(别名,密码,signatureCrypto,false,defaultCanonicalizationAlgorithm,defaultRSASignatureAlgorithm);
如果您直接与OpenSAML库直接打交道,那么值得研究一下。
感谢, 约杰什
如何从SAMLResponse获取SAMLAssertion字符串?我已经使用Base64进行了转换,但使用{“error”:“invalid_grant”,“error_description”:“提供的授权授予无效。”},没有具体的错误消息/wso2is-5.0.0/repository/logs/wso2carbon .log文件,请帮助我 – 2015-04-13 11:27:03
如何获得从SAMLResponse SAMLAssertion字符串?我已经使用Base64进行了转换,但使用{“error”:“invalid_grant”,“error_description”:“提供的授权授予无效。”},没有具体的错误消息/wso2is-5.0.0/repository/logs/wso2carbon .log文件,请帮我解决 – 2015-04-13 11:27:17