public final class AssertionManager extends Object
AssertionManager
is a final
class
that provides interfaces to create, get and destroy Assertion
s.
It is a singleton class; an instance of this class can be obtained by
calling AssertionManager.getInstance()
.
Having obtained an instance of AssertionManager
, its methods
can be called to create/get Assertion
, and
AssertionArtifact
, and to obtain decision from an
Query
.
This class could only be used in the same JVM as OpenAM.
Modifier and Type | Field and Description |
---|---|
static Stats |
artStats |
static Stats |
assStats |
Modifier and Type | Method and Description |
---|---|
Assertion |
createAssertion(Object token)
This method creates an Assertion that contains an
AuthenticationStatement . |
Assertion |
createAssertion(Object token,
List attributes)
This method creates an Assertion that contains an
AuthenticationStatement and
an AttributeStatement . |
AssertionArtifact |
createAssertionArtifact(Assertion assertion,
String destID)
This method creates an
AssertionArtifact for the given
Assertion. |
AssertionArtifact |
createAssertionArtifact(String id,
String destID)
Creates an AssertionArtifact.
|
AssertionArtifact |
createAssertionArtifact(String id,
String destID,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
String targetUrl,
String version)
Creates an AssertionArtifact.
|
AssertionArtifact |
createAssertionArtifact(String id,
String destID,
String targetUrl,
String version)
Creates an AssertionArtifact.
|
Assertion |
createSSOAssertion(String id,
AssertionArtifact artifact,
javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
String destID,
String targetUrl,
String version)
Returns Assertion that contains
AuthenticationStatement . |
Assertion |
createSSOAssertion(String id,
AssertionArtifact artifact,
String destID,
String targetUrl,
String version)
Returns Assertion that contains
AuthenticationStatement . |
protected Assertion |
getAssertion(AssertionArtifact artifact)
Gets assertion associated with the AssertionArtifact.
|
Assertion |
getAssertion(AssertionArtifact artifact,
Set destID)
Gets assertion associated with the AssertionArtifact.
|
Assertion |
getAssertion(AssertionArtifact artifact,
String destID)
Gets assertion associated with the AssertionArtifact.
|
Assertion |
getAssertion(AssertionIDReference idRef)
Gets the Assertion referenced by an
AssertionIDReference . |
Assertion |
getAssertion(AssertionIDReference idRef,
Object token)
Gets the Assertion referenced by an
AssertionIDReference . |
Assertion |
getAssertion(AssertionIDReference idRef,
Set destID)
Gets the Assertion referenced by an
AssertionIDReference . |
Assertion |
getAssertion(AssertionIDReference idRef,
String destID)
Gets the Assertion referenced by an
AssertionIDReference . |
Assertion |
getAssertion(Query query,
String destID)
Gets assertion created from the query.
|
Assertion |
getAssertion(String id)
This method gets the Assertion based on the Assertion ID.
|
Set |
getAssertionArtifacts(Object token)
This method gets all valid
AssertionArtifacts
managed by this AssertionManager . |
Set |
getAssertions(Object token)
This method gets all valid Assertions managed by this
AssertionManager . |
static AssertionManager |
getInstance()
Gets the singleton instance of
AssertionManager . |
int |
isAllowed(AuthorizationDecisionQuery authZQuery,
String destID)
This method returns the decision of an AuthorizationQuery.
|
public static AssertionManager getInstance() throws SAMLException
AssertionManager
.AssertionManager
instanceSAMLException
- if unable to get the singleton
AssertionManager
instance.public Assertion createAssertion(Object token) throws SAMLException
AuthenticationStatement
.token
- user's session object that contains authentication
information which is needed to create the
AuthenticationStatement
.SAMLException
- If the Assertion cannot be created.public Assertion createAssertion(Object token, List attributes) throws SAMLException
AuthenticationStatement
and
an AttributeStatement
.token
- User' session object that contains authentication
information which is needed to create the
AuthenticationStatement
for the Assertion.attributes
- A list of Attribute objects which are used to
create the AttributeStatement
for the Assertion.SAMLException
- If the Assertion cannot be created.public AssertionArtifact createAssertionArtifact(Assertion assertion, String destID) throws SAMLException
AssertionArtifact
for the given
Assertion.assertion
- The Assertion for which an Artifact needs to be created.destID
- The sourceID
of the site for which the
AssertionArtifact
is created. It is in raw String
format (not Base64 encoded, for example.) This String can be
obtained from converting the 20 bytes sequence to char Array, then
from the char Array to String.AssertionArtifact
SAMLException
- If the AssertionArtifact
cannot be
created.public Set getAssertions(Object token) throws SAMLException
AssertionManager
.token
- User's session object which is allowed to get all
Assertion.SAMLException
- If this method can not gets all valid Assertions.public Assertion getAssertion(String id) throws SAMLException
id
- The Assertion ID.SAMLException
- If this method can not get the Assertion.public Set getAssertionArtifacts(Object token) throws SAMLException
AssertionArtifacts
managed by this AssertionManager
.token
- User's session object which is allowed to get all
AssertionArtifacts
.AssertionArtifacts
. Each element in
the Set is an AssertionArtifacts
object representing
an artifact.SAMLException
- If this method can not gets all valid
AssertionArtifacts
.public Assertion createSSOAssertion(String id, AssertionArtifact artifact, String destID, String targetUrl, String version) throws SAMLException
AuthenticationStatement
.id
- The String that contains authentication information which
is needed to create the assertion. It could be a string
representation of an id, a cookie, etc.artifact
- the value to be set in the SubjectConfirmation of the
AuthenticationStatement
. If it's null,
SubjectConfirmation
is set to bearer.destID
- A String that is the site the assertion is created for.targetUrl
- A URL String representing the target siteversion
- The relying party preferred Assertion version number.SAMLException
- If the Assertion cannot be created.public Assertion createSSOAssertion(String id, AssertionArtifact artifact, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String destID, String targetUrl, String version) throws SAMLException
AuthenticationStatement
.id
- The String that contains authentication information which
is needed to create the assertion. It could be a string
representation of an id, a cookie, etc.artifact
- the value to be set in the SubjectConfirmation of the
AuthenticationStatement
. If it's null,
SubjectConfirmation
is set to bearer.request
- The HttpServletRerquest object of the request.response
- The HttpServletResponse object.destID
- A String that is the site the assertion is created for.targetUrl
- A URL String representing the target siteversion
- The relying party preferred Assertion version number.SAMLException
- If the Assertion cannot be created.public Assertion getAssertion(AssertionArtifact artifact, String destID) throws SAMLException
artifact
- An AssertionArtifact.destID
- The destination site requesting the assertion using
the artifact. This String is compared with the destID that
the artifact is created for originally.SAMLException
- If an error occurred during the process, or no
assertion maps to the input artifact.public Assertion getAssertion(AssertionArtifact artifact, Set destID) throws SAMLException
artifact
- An AssertionArtifact.destID
- A Set of String that represents the destination site id.
The destination site requesting the assertion using
the artifact. Each string in this set compares with the destID
that the artifact is created for originally. If found match,
continue the operation. Otherwise, throws error.SAMLException
- If an error occurred during the process, or no
assertion maps to the input artifact.protected Assertion getAssertion(AssertionArtifact artifact) throws SAMLException
artifact
- An AssertionArtifact.SAMLException
- If an error occurred during the process, or no
assertion maps to the input artifact.public Assertion getAssertion(Query query, String destID) throws SAMLException
query
- An Assertion Query.destID
- to whom the assertion will be created for.SAMLException
- If the Assertion cannot be created due to an
error in the query or in the receiver.public Assertion getAssertion(AssertionIDReference idRef) throws SAMLException
AssertionIDReference
.idRef
- The AssertionIDReference
which references to an
Assertion.AsertionIDReference
.SAMLException
- If an error occurred during the process; or
the assertion could not be found.public Assertion getAssertion(AssertionIDReference idRef, Object token) throws SAMLException
AssertionIDReference
.
This method is usually used after the call
AssertionManager.getAssertions(SSOToken)
.
The assertion is retrieved from this AssertionManager
only.idRef
- The AssertionIDReference
which references to an
Assertion.token
- Use's session object that is allowed to obtain the
assertion. This token must have top level administrator role.AsertionIDReference
.SAMLException
- If an error occurred during the process; the token
does not have the privilege; or the assertion could not be
found.public Assertion getAssertion(AssertionIDReference idRef, String destID) throws SAMLException
AssertionIDReference
.idRef
- The AssertionIDReference
which references to an
Assertion.destID
- The destination site id requesting the assertion using
the assertion id reference. This String is compared with the
destID
that the assertion is created for originally.
This field is not used (could be null) if the assertion was
created without a destID
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.AsertionIDReference
.SAMLException
- If an error occurred during the process; or
the assertion could not be found.public Assertion getAssertion(AssertionIDReference idRef, Set destID) throws SAMLException
AssertionIDReference
.idRef
- The AssertionIDReference
which references to an
Assertion.destID
- A Set of destination site id. The destination site id
requesting the assertion using the assertion id reference.
This String is compared with the destID
that the
assertion is created for originally. This field is not used
(could be null) if the assertion was created without a
destID
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.AsertionIDReference
.SAMLException
- If an error occurred during the process; or
the assertion could not be found.public AssertionArtifact createAssertionArtifact(String id, String destID) throws SAMLException
id
- The String that contains authentication information which
is needed to create the assertion. It could be a string
representation of an id, a cookie, etc.destID
- The destination site that the artifact is created for.SAMLException
- If the AssertionArtifact cannot be created.public AssertionArtifact createAssertionArtifact(String id, String destID, String targetUrl, String version) throws SAMLException
id
- The String that contains authentication information which
is needed to create the assertion. It could be a string
representation of an id, a cookie, etc.destID
- The destination site that the artifact is created for.targetUrl
- A URL String representing the target siteversion
- The relying party preferred Assertion version number.SAMLException
- If the AssertionArtifact cannot be created.public AssertionArtifact createAssertionArtifact(String id, String destID, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, String targetUrl, String version) throws SAMLException
id
- The String that contains authentication information which
is needed to create the assertion. It could be a string
representation of an id, a cookie, etc.destID
- The destination site that the artifact is created for.request
- The HttpServletRerquest object of the request.response
- The HttpServletResponse object.targetUrl
- A URL String representing the target siteversion
- The relying party preferred Assertion version number.SAMLException
- If the AssertionArtifact cannot be created.public int isAllowed(AuthorizationDecisionQuery authZQuery, String destID)
authZQuery
- An AuthorizationQuery that contains the question:
Is this subject authorized to perfrom this action on
this resource?destID
- the SourceID of the site where the query is from.Copyright © 2010–2025 Open Identity Platform Community. All rights reserved.