|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcc.saml.SAML
public class SAML
Utility that uses OpenSAML to carry out common SAML tasks.
| Field Summary | |
|---|---|
private javax.xml.parsers.DocumentBuilder |
builder
|
private static java.lang.String |
CM_PREFIX
|
private static SecureRandomIdentifierGenerator |
generator
|
private java.lang.String |
issuerURL
|
| Constructor Summary | |
|---|---|
SAML()
Initialize JAXP DocumentBuilder instance for later use and reuse. |
|
SAML(java.lang.String issuerURL)
Initialize JAXP DocumentBuilder instance for later use and reuse, and establishes an issuer URL. |
|
| Method Summary | ||
|---|---|---|
void |
addAttribute(AttributeStatement statement,
java.lang.String name,
java.lang.String value)
Adds a SAML attribute to an attribute statement. |
|
static org.w3c.dom.Element |
addToElement(XMLObject object,
org.w3c.dom.Element parent)
Helper method to add an XMLObject as a child of a DOM Element. |
|
org.w3c.dom.Document |
asDOMDocument(XMLObject object)
Helper method to get an XMLObject as a DOM Document. |
|
|
create(java.lang.Class<T> cls,
javax.xml.namespace.QName qname)
Slightly easier way to create objects using OpenSAML's builder system. |
|
Assertion |
createAssertion(Subject subject)
Returns a SAML assertion with generated ID, current timestamp, given subject, and simple time-based conditions. |
|
Assertion |
createAttributeAssertion(Subject subject,
java.util.Map<java.lang.String,java.lang.String> attributes)
Returns a SAML attribute assertion. |
|
Assertion |
createAuthnAssertion(Subject subject,
java.lang.String authnCtx)
Returns a SAML authentication assertion. |
|
Response |
createResponse(Assertion assertion)
Helper method to generate a response, based on a pre-built assertion. |
|
Response |
createResponse(Assertion assertion,
java.lang.String inResponseTo)
Helper method to generate a response, based on a pre-built assertion and query ID. |
|
Response |
createResponse(java.lang.String statusCode,
java.lang.String inResponseTo)
Helper method to generate a shell response with a given status code and query ID. |
|
Response |
createResponse(java.lang.String statusCode,
java.lang.String message,
java.lang.String inResponseTo)
Helper method to generate a shell response with a given status code, status message, and query ID. |
|
Subject |
createSubject(java.lang.String username,
java.lang.String format,
java.lang.String confirmationMethod)
Returns a SAML subject. |
|
static XMLObject |
fromElement(org.w3c.dom.Element element)
Helper method to read an XML object from a DOM element. |
|
static void |
main(java.lang.String[] args)
Parse the command line for a filename to read, and optionally a filename to write (absent which the application will write to the console). |
|
void |
printToFile(XMLObject object,
java.lang.String filename)
Helper method to pretty-print any XML object to a file. |
|
XMLObject |
readFromFile(java.lang.String filename)
Helper method to read an XML object from a file. |
|
Issuer |
spawnIssuer()
Helper method to spawn a new Issuer element based on our issuer URL. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private javax.xml.parsers.DocumentBuilder builder
private java.lang.String issuerURL
private static SecureRandomIdentifierGenerator generator
private static final java.lang.String CM_PREFIX
| Constructor Detail |
|---|
public SAML()
public SAML(java.lang.String issuerURL)
issuerURL - This will be used in all generated assertions| Method Detail |
|---|
public static void main(java.lang.String[] args)
throws java.lang.Exception
pretty printer.
java.lang.Exception
public <T> T create(java.lang.Class<T> cls,
javax.xml.namespace.QName qname)
public static org.w3c.dom.Element addToElement(XMLObject object,
org.w3c.dom.Element parent)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public org.w3c.dom.Document asDOMDocument(XMLObject object)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public void printToFile(XMLObject object,
java.lang.String filename)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public static XMLObject fromElement(org.w3c.dom.Element element)
throws java.io.IOException,
UnmarshallingException,
org.xml.sax.SAXException
java.io.IOException
UnmarshallingException
org.xml.sax.SAXException
public XMLObject readFromFile(java.lang.String filename)
throws java.io.IOException,
UnmarshallingException,
org.xml.sax.SAXException
java.io.IOException
UnmarshallingException
org.xml.sax.SAXExceptionpublic Issuer spawnIssuer()
public Subject createSubject(java.lang.String username,
java.lang.String format,
java.lang.String confirmationMethod)
username - The subject nameformat - If non-null, we'll set as the subject name formatconfirmationMethod - If non-null, we'll create a SubjectConfirmation
element and use this as the Method attribute; must be "sender-vouches"
or "bearer", as HOK would require additional parameters and so is NYIpublic Assertion createAssertion(Subject subject)
subject - Subject of the assertion
public Response createResponse(Assertion assertion)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public Response createResponse(java.lang.String statusCode,
java.lang.String inResponseTo)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public Response createResponse(java.lang.String statusCode,
java.lang.String message,
java.lang.String inResponseTo)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public Response createResponse(Assertion assertion,
java.lang.String inResponseTo)
throws java.io.IOException,
MarshallingException,
javax.xml.transform.TransformerException
java.io.IOException
MarshallingException
javax.xml.transform.TransformerException
public Assertion createAuthnAssertion(Subject subject,
java.lang.String authnCtx)
subject - The subject of the assertionauthnCtx - The "authentication context class reference",
e.g. AuthnContext.PPT_AUTHN_CTX
public void addAttribute(AttributeStatement statement,
java.lang.String name,
java.lang.String value)
statement - Existing attribute statementname - Attribute namevalue - Attribute value
public Assertion createAttributeAssertion(Subject subject,
java.util.Map<java.lang.String,java.lang.String> attributes)
subject - Subject of the assertionattributes - Attributes to be stated (may be null)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||