本文整理汇总了Java中org.opensaml.xmlsec.signature.Signature.setSigningCredential方法的典型用法代码示例。如果您正苦于以下问题:Java Signature.setSigningCredential方法的具体用法?Java Signature.setSigningCredential怎么用?Java Signature.setSigningCredential使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.opensaml.xmlsec.signature.Signature
的用法示例。
在下文中一共展示了Signature.setSigningCredential方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setSignatureRaw
import org.opensaml.xmlsec.signature.Signature; //导入方法依赖的package包/类
/**
* Generates an XML Object representing a digital signature.
*
* @param signatureAlgorithm the algorithm used to compute the signature
* @param credential the signature signing credentials
* @return an XML Object representing an enveloped or detached XML Digital Signature
* @throws SSOException if an error occurs while getting the signature
*/
private static Signature setSignatureRaw(String signatureAlgorithm, X509Credential credential) throws SSOException {
Signature signature = (Signature) buildXMLObject(Signature.DEFAULT_ELEMENT_NAME);
signature.setSigningCredential(credential);
signature.setSignatureAlgorithm(signatureAlgorithm);
signature.setCanonicalizationAlgorithm(Canonicalizer.ALGO_ID_C14N_EXCL_OMIT_COMMENTS);
try {
KeyInfo keyInfo = (KeyInfo) buildXMLObject(KeyInfo.DEFAULT_ELEMENT_NAME);
X509Data data = (X509Data) buildXMLObject(X509Data.DEFAULT_ELEMENT_NAME);
X509Certificate cert = (X509Certificate) buildXMLObject(X509Certificate.DEFAULT_ELEMENT_NAME);
String value = org.apache.xml.security.utils.Base64.encode(credential.getEntityCertificate().getEncoded());
cert.setValue(value);
data.getX509Certificates().add(cert);
keyInfo.getX509Datas().add(data);
signature.setKeyInfo(keyInfo);
return signature;
} catch (CertificateEncodingException e) {
throw new SSOException("Error getting certificate", e);
}
}
示例2: createResponse
import org.opensaml.xmlsec.signature.Signature; //导入方法依赖的package包/类
public Element createResponse(String requestId, String issuerId, String message) throws MarshallingException, SignatureException {
org.opensaml.saml.saml2.core.Response response = factory.createResponse();
Issuer issuer = factory.createIssuer(issuerId);
response.setIssuer(issuer);
response.setInResponseTo(requestId);
response.setID(idGenerator.getId());
StatusCode statusCode = factory.createStatusCode();
statusCode.setValue(StatusCode.REQUESTER);
Status status = factory.createStatus();
status.setStatusCode(statusCode);
response.setStatus(status);
StatusMessage statusMessage = factory.createStatusMessage();
statusMessage.setMessage(message);
status.setStatusMessage(statusMessage);
Signature signature = factory.createSignature();
signature.setSigningCredential(credentialFactory.getSigningCredential());
response.setSignature(signature);
XMLObjectProviderRegistrySupport.getMarshallerFactory().getMarshaller(response).marshall(response);
Signer.signObject(response.getSignature());
return response.getDOM();
}
示例3: generateSignedAssertion
import org.opensaml.xmlsec.signature.Signature; //导入方法依赖的package包/类
private Element generateSignedAssertion(String id) throws Exception {
if (this.sigCert == null) {
throw new Exception("No signature key found");
}
Assertion assertion = generateAssertion(id);
BasicX509Credential signingCredential = CredentialSupport.getSimpleCredential(this.sigCert, this.sigKey);
Signature signature = (Signature) OpenSAMLUtils.buildSAMLObject(Signature.class);
signature.setSigningCredential(signingCredential);
signature.setSignatureAlgorithm(SignatureConstants.ALGO_ID_SIGNATURE_RSA_SHA1);
signature.setCanonicalizationAlgorithm(SignatureConstants.ALGO_ID_C14N_EXCL_OMIT_COMMENTS);
assertion.setSignature(signature);
Element e = null;
try {
e = XMLObjectProviderRegistrySupport.getMarshallerFactory().getMarshaller(assertion).marshall(assertion);
} catch (MarshallingException e1) {
throw new RuntimeException(e1);
}
Signer.signObject(signature);
////System.out.println(XMLHelper.nodeToString(e));
AssertionBuilder ab = new AssertionBuilder();
return e;
////System.out.println(XMLHelper.nodeToString(e));
//return assertion;
/*
//BasicCredential sigCred = new BasicCredential();
//sigCred.setPrivateKey(sigKey);
//sigCred.setEntityCertificate(this.cert);
//sigCred.setUsageType(UsageType.SIGNING);
KeyInfoBuilder kib = new KeyInfoBuilder();
KeyInfo ki = kib.buildObject();
signature.setSigningCredential(cred);
signature.setSignatureAlgorithm(SignatureConstants.ALGO_ID_SIGNATURE_RSA_SHA1);
signature.setCanonicalizationAlgorithm(SignatureConstants.ALGO_ID_C14N_EXCL_OMIT_COMMENTS);
signature.setKeyInfo(ki);
assertion.setSignature(signature);
try {
Configuration.getMarshallerFactory().getMarshaller(assertion).marshall(assertion);
} catch (MarshallingException e) {
throw new Exception("Could not generate assertion",e);
}
try {
Signer.signObject(signature);
} catch (SignatureException e) {
throw new Exception("Could not sign assertion",e);
}
return assertion;*/
}