subjectConfirmation.setMethod("urn:oasis:names:tc:SAML:2.0:cm:bearer");
/** {@inheritDoc} */ protected void processAttribute(XMLObject samlObject, Attr attribute) throws UnmarshallingException { SubjectConfirmation subjectConfirmation = (SubjectConfirmation) samlObject; if (attribute.getLocalName().equals(SubjectConfirmation.METHOD_ATTRIB_NAME)) { subjectConfirmation.setMethod(attribute.getValue()); } else { super.processAttribute(samlObject, attribute); } } }
/** * Create a SubjectConfirmation object * One of the following subject confirmation methods MUST be used: * urn:oasis:names:tc:SAML:2.0:cm:holder-of-key * urn:oasis:names:tc:SAML:2.0:cm:sender-vouches * urn:oasis:names:tc:SAML:2.0:cm:bearer * * @param method of type String * @param subjectConfirmationData of type SubjectConfirmationData * @return a SubjectConfirmation object */ @SuppressWarnings("unchecked") public static SubjectConfirmation createSubjectConfirmation( String method, SubjectConfirmationData subjectConfirmationData, NameID subjectConfirmationNameId ) { if (subjectConfirmationBuilder == null) { subjectConfirmationBuilder = (SAMLObjectBuilder<SubjectConfirmation>) builderFactory.getBuilder(SubjectConfirmation.DEFAULT_ELEMENT_NAME); } SubjectConfirmation subjectConfirmation = subjectConfirmationBuilder.buildObject(); subjectConfirmation.setMethod(method); subjectConfirmation.setSubjectConfirmationData(subjectConfirmationData); subjectConfirmation.setNameID(subjectConfirmationNameId); return subjectConfirmation; }
confirmation.setMethod(confirmationMethod);
/** * New subject element. * * @param nameIdFormat the name id format * @param nameIdValue the name id value * @param recipient the recipient * @param notOnOrAfter the not on or after * @param inResponseTo the in response to * @return the subject */ public Subject newSubject(final String nameIdFormat, final String nameIdValue, final String recipient, final DateTime notOnOrAfter, final String inResponseTo) { final SubjectConfirmation confirmation = newSamlObject(SubjectConfirmation.class); confirmation.setMethod(SubjectConfirmation.METHOD_BEARER); final SubjectConfirmationData data = newSamlObject(SubjectConfirmationData.class); data.setRecipient(recipient); data.setNotOnOrAfter(notOnOrAfter); data.setInResponseTo(inResponseTo); confirmation.setSubjectConfirmationData(data); final Subject subject = newSamlObject(Subject.class); subject.setNameID(getNameID(nameIdFormat, nameIdValue)); subject.getSubjectConfirmations().add(confirmation); return subject; }
/** * Create an efficient field-wise copy of a {@link SubjectConfirmation}. * * @param confirmation the object to clone * * @return the copy */ @Nonnull private SubjectConfirmation cloneConfirmation(@Nonnull final SubjectConfirmation confirmation) { final SubjectConfirmation clone = confirmationBuilder.buildObject(); clone.setMethod(confirmation.getMethod()); final SubjectConfirmationData data = confirmation.getSubjectConfirmationData(); if (data != null) { final SubjectConfirmationData cloneData = confirmationDataBuilder.buildObject(); cloneData.setAddress(data.getAddress()); cloneData.setInResponseTo(data.getInResponseTo()); cloneData.setRecipient(data.getRecipient()); cloneData.setNotBefore(data.getNotBefore()); cloneData.setNotOnOrAfter(data.getNotOnOrAfter()); clone.setSubjectConfirmationData(cloneData); } return clone; }
sc.setMethod(SubjectConfirmation.METHOD_HOLDER_OF_KEY); sc.setNameID(nameID); sc.setSubjectConfirmationData(scData);
subjectConfirmation.setMethod(SAMLSSOConstants.SUBJECT_CONFIRM_BEARER);
subjectConfirmation.setMethod(SAMLSSOConstants.SUBJECT_CONFIRM_BEARER);
confirmation.setMethod(request.getSubject().getConfirmations().get(0).getMethod().toString()); confirmation.setSubjectConfirmationData(confData);