use of com.sun.identity.saml.assertion.Assertion in project OpenAM by OpenRock.
the class AssertionManagerClient method getAssertion.
/**
* Returns the <code>Assertion</code> based on the
* <code>AssertionIDReference</code>.
*
* @param idRef The <code>AssertionIDReference</code> which references to an
* Assertion.
* @param destID A set of String that representing the destination site id.
* The destination site id requesting the assertion using
* the assertion id reference. This String is compared with the
* <code>destID</code> that the assertion is created for originally.
* This field is not used (could be null) if the assertion was
* created without a <code>destID</code> originally. This String can
* be obtained from converting the 20 byte site id sequence to char
* array, then a new String from the char array.
* @return the Assertion referenced by the
* <code>AssertionIDReference</code>.
* @throws SAMLException if an error occurred during the process; or
* the assertion could not be found.
*/
public Assertion getAssertion(AssertionIDReference idRef, Set destID) throws SAMLException {
if (useLocal)
return (assertionManager.getAssertion(idRef, destID));
String assertion = null;
try {
Set destSet = new HashSet();
if (destID != null && !destID.isEmpty()) {
Iterator it = destID.iterator();
while (it.hasNext()) {
destSet.add(Base64.encode(SAMLUtils.stringToByteArray((String) it.next())));
}
}
Object[] args = { idRef.getAssertionIDReference(), destSet };
assertion = (String) stub.send("getAssertionByIdRef", args, null, null);
return (new Assertion(XMLUtils.toDOMDocument(assertion, SAMLUtils.debug).getDocumentElement()));
} catch (Exception re) {
if (SAMLUtils.debug.warningEnabled()) {
SAMLUtils.debug.warning("AMC:getAssertion: " + idRef, re);
}
throw (new SAMLException(re.getMessage()));
}
}
use of com.sun.identity.saml.assertion.Assertion in project OpenAM by OpenRock.
the class AssertionManagerImpl method createAssertionArtifact.
public String createAssertionArtifact(String assertion, String target) throws SAMLException {
checkInitialization();
Assertion a = new Assertion(XMLUtils.toDOMDocument(assertion, SAMLUtils.debug).getDocumentElement());
// no need to check null since SAMLException would be thrown if
// there is any error.
AssertionArtifact aa = assertionManager.createAssertionArtifact(a, SAMLUtils.byteArrayToString(Base64.decode(target)));
return (aa.getAssertionArtifact());
}
use of com.sun.identity.saml.assertion.Assertion in project OpenAM by OpenRock.
the class AssertionManagerImpl method getAssertion.
public String getAssertion(String artifact, Set destID) throws SAMLException {
checkInitialization();
Set destSet = new HashSet();
Iterator it = destID.iterator();
while (it.hasNext()) {
destSet.add(SAMLUtils.byteArrayToString(Base64.decode(((String) it.next()))));
}
Assertion a = assertionManager.getAssertion(new AssertionArtifact(artifact), destSet);
return (a.toString(true, true));
}
use of com.sun.identity.saml.assertion.Assertion in project OpenAM by OpenRock.
the class AssertionManagerImpl method getAssertion2.
public String getAssertion2(String artifact, String destID) throws SAMLException {
checkInitialization();
Assertion a = assertionManager.getAssertion(new AssertionArtifact(artifact), SAMLUtils.byteArrayToString(Base64.decode(destID)));
return (a.toString(true, true));
}
use of com.sun.identity.saml.assertion.Assertion in project OpenAM by OpenRock.
the class AssertionManagerImpl method createAssertion2.
public String createAssertion2(String ssoToken, List attributes) throws SAMLException {
checkInitialization();
Object token = null;
try {
SessionProvider sessionProvider = SessionManager.getProvider();
token = sessionProvider.getSession(ssoToken);
} catch (SessionException ssoe) {
if (SAMLUtils.debug.messageEnabled()) {
SAMLUtils.debug.message("AssertionManagerImpl:createAssertion(SSO + attrs) " + ssoe);
}
throw (new SAMLException(ssoe.getMessage()));
}
LinkedList ll = new LinkedList();
for (Iterator iter = attributes.iterator(); iter.hasNext(); ) {
ll.add(new Attribute(XMLUtils.toDOMDocument((String) iter.next(), SAMLUtils.debug).getDocumentElement()));
}
Assertion a = assertionManager.createAssertion(token, ll);
return (a.toString(true, true));
}
Aggregations