Class XACMLAuthzDecisionQueryImpl
- java.lang.Object
-
- com.sun.identity.saml2.protocol.impl.RequestAbstractImpl
-
- com.sun.identity.xacml.saml2.impl.XACMLAuthzDecisionQueryImpl
-
- All Implemented Interfaces:
XmlSerializable
,RequestAbstract
,XACMLAuthzDecisionQuery
@SupportedAll public class XACMLAuthzDecisionQueryImpl extends com.sun.identity.saml2.protocol.impl.RequestAbstractImpl implements XACMLAuthzDecisionQuery
TheXACMLAuthzDecisionQueryImpl
is an impelmentation ofXACMLAuthzDecisionQuery
interface. TheXACMLAuthzDecisionQuery
element is a SAML Query that extends SAML Protocol schema typeRequestAbstractType
. It allows an XACML PEP to submit an XACML Request Context in a SAML Query along with other information. This element is an alternative to SAML defined<samlp:AuthzDecisionQuery>
that allows an XACML PEP to communicate with an XACML PDP using SAML2 protocol.<xs:element name="XACMLAuthzDecisionQuery" type="XACMLAuthzDecisionQueryType"/> <xs:complexType name="XACMLAuthzDecisionQueryType"> <xs:complexContent> <xs:extension base="samlp:RequestAbstractType"> <xs:sequence> <xs:element ref="xacml-context:Request"/> <xs:sequence> <xs:attribute name="InputContextOnly" type="boolean" use="optional" default="false"/> <xs:attribute name="ReturnContext" type="boolean" use="optional" default="false"/> <xs:extension> <xs:complexContent> <xs:complexType>
Schema for Base:<complexType name="RequestAbstractType" abstract="true"> <sequence> <element ref="saml:Issuer" minOccurs="0"/> <element ref="ds:Signature" minOccurs="0"/> <element ref="samlp:Extensions" minOccurs="0"/> <sequence> <attribute name="ID" type="ID" use="required"/> <attribute name="Version" type="string" use="required"/> <attribute name="IssueInstant" type="dateTime" use="required"/> <attribute name="Destination" type="anyURI" use="optional"/> <attribute name="Consent" type="anyURI" use="optional"/> <complexType>
-
-
Constructor Summary
Constructors Constructor Description XACMLAuthzDecisionQueryImpl()
Default constructorXACMLAuthzDecisionQueryImpl(String xml)
This constructor is used to buildXACMLAuthzDecisionQuery
object from a XML string.XACMLAuthzDecisionQueryImpl(Element element)
This constructor is used to buildXACMLAuthzDecisionQuery
object from a block of existing XML that has already been built into a DOM.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
getInputContextOnly()
Returns the XML attribute boolean value which governs the source of information that the PDP is allowed to use in making an authorization decision.Request
getRequest()
Returns thexacml-context:Request
element of this objectboolean
getReturnContext()
Returns the XML attribute boolean value which provides means to PEP to request that anxacml-context:Request
element be included in theXACMlAuthzdecisionStatement
resulting from the request.void
makeImmutable()
Makes the object immutableprotected void
parseDOMElement(Element element)
void
setInputContextOnly(boolean inputContextOnly)
Sets the XML attribute boolean value which governs the source of information that the PDP is allowed to use in making an authorization decision.void
setRequest(Request request)
Sets thexacml-context:Request
element of this objectvoid
setReturnContext(boolean returnContext)
Sets the boolean value for this XML attributeDocumentFragment
toDocumentFragment(Document document, boolean includeNSPrefix, boolean declareNS)
Serializes the element into an XMLDocumentFragment
.protected void
validateData()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.sun.identity.saml2.protocol.RequestAbstract
getConsent, getDestination, getExtensions, getID, getIssueInstant, getIssuer, getSignature, getVersion, isSignatureValid, isSigned, setConsent, setDestination, setExtensions, setID, setIssueInstant, setIssuer, setVersion, sign
-
Methods inherited from interface com.sun.identity.xacml.saml2.XACMLAuthzDecisionQuery
isMutable
-
Methods inherited from interface com.sun.identity.saml2.common.XmlSerializable
toXMLString, toXMLString
-
-
-
-
Constructor Detail
-
XACMLAuthzDecisionQueryImpl
public XACMLAuthzDecisionQueryImpl()
Default constructor
-
XACMLAuthzDecisionQueryImpl
public XACMLAuthzDecisionQueryImpl(Element element) throws SAML2Exception
This constructor is used to buildXACMLAuthzDecisionQuery
object from a block of existing XML that has already been built into a DOM.- Parameters:
element
- Aorg.w3c.dom.Element
representing DOM tree forXACMLAuthzDecisionQuery
object- Throws:
SAML2Exception
- if it could not process the Element
-
XACMLAuthzDecisionQueryImpl
public XACMLAuthzDecisionQueryImpl(String xml) throws SAML2Exception
This constructor is used to buildXACMLAuthzDecisionQuery
object from a XML string.- Parameters:
xml
- Ajava.lang.String
representing anXACMLAuthzDecisionQuery
object- Throws:
XACMLException
- if it could not process the XML stringSAML2Exception
-
-
Method Detail
-
getInputContextOnly
public boolean getInputContextOnly()
Returns the XML attribute boolean value which governs the source of information that the PDP is allowed to use in making an authorization decision. If this attribute is "true" then it indiactes that the authorization decision has been made solely on the basis of information contained in theXACMLAuthzDecisionQuery
; no external attributes have been used. If this value is "false" then the decision may have been made on the basis of external attributes not conatined in theXACMLAuthzDecisionQuery
.- Specified by:
getInputContextOnly
in interfaceXACMLAuthzDecisionQuery
- Returns:
boolean
indicating the value of this attribute.
-
setInputContextOnly
public void setInputContextOnly(boolean inputContextOnly) throws XACMLException
Sets the XML attribute boolean value which governs the source of information that the PDP is allowed to use in making an authorization decision. If this attribute is "true" then it indicates to the PDP that the authorization decision has to be made solely on the basis of information contained in theXACMLAuthzDecisionQuery
; no external attributes may be used. If this value is "false" then the decision can be made on the basis of external attributes not conatined in theXACMlAuthzDecisionQuery
.- Specified by:
setInputContextOnly
in interfaceXACMLAuthzDecisionQuery
- Parameters:
inputContextOnly
-boolean
indicating the value of this attribute.- Throws:
XACMLException
- if the object is immutable An object is consideredimmutable
ifmakeImmutable()
has been invoked on it. It can be determined by callingisMutable
on the object.
-
getReturnContext
public boolean getReturnContext()
Returns the XML attribute boolean value which provides means to PEP to request that anxacml-context:Request
element be included in theXACMlAuthzdecisionStatement
resulting from the request. It also governs the contents of thatRequest
element. If this attribute is "true" then the PDP SHALL include thexacml-context:Request
element in theXACMLAuthzDecisionStatement
element in theXACMLResponse
. Thexacml-context:Request
SHALL include all the attributes supplied by the PEP in theAuthzDecisionQuery
which were used in making the authz decision. Other additional attributes which may have been used by the PDP may be included. If this attribute is "false" then the PDP SHALL NOT include thexacml-context:Request
element in theXACMLAuthzDecisionStatement
.- Specified by:
getReturnContext
in interfaceXACMLAuthzDecisionQuery
- Returns:
boolean
indicating the value of this attribute.
-
setReturnContext
public void setReturnContext(boolean returnContext) throws XACMLException
Sets the boolean value for this XML attribute- Specified by:
setReturnContext
in interfaceXACMLAuthzDecisionQuery
- Parameters:
returnContext
-boolean
indicating the value of this attribute.- Throws:
XACMLException
- if the object is immutable An object is consideredimmutable
ifmakeImmutable()
has been invoked on it. It can be determined by callingisMutable
on the object.- See Also:
getReturnContext()
-
getRequest
public Request getRequest()
Returns thexacml-context:Request
element of this object- Specified by:
getRequest
in interfaceXACMLAuthzDecisionQuery
- Returns:
- the
xacml-context:Request
elements of this object
-
setRequest
public void setRequest(Request request) throws XACMLException
Sets thexacml-context:Request
element of this object- Specified by:
setRequest
in interfaceXACMLAuthzDecisionQuery
- Parameters:
request
- thexacml-context:Request
element of this object.- Throws:
XACMLException
- if the object is immutable An object is consideredimmutable
ifmakeImmutable()
has been invoked on it. It can be determined by callingisMutable
on the object.
-
toDocumentFragment
public DocumentFragment toDocumentFragment(Document document, boolean includeNSPrefix, boolean declareNS) throws SAML2Exception
Description copied from interface:XmlSerializable
Serializes the element into an XMLDocumentFragment
. A default implementation is provided for compatibility with legacy code that implementsXmlSerializable.toXMLString()
, but it is highly recommended to override this method.- Specified by:
toDocumentFragment
in interfaceXmlSerializable
- Parameters:
document
- the parentDocument
to create the document fragment from.includeNSPrefix
- whether to include a namespace prefix in the document elements.declareNS
- whether to declare any namespaces or assume that they are already declared.- Returns:
- the XML document fragment representing this SAML2 element.
- Throws:
SAML2Exception
- if the element cannot be serialized for any reason.
-
parseDOMElement
protected void parseDOMElement(Element element) throws SAML2Exception
- Throws:
SAML2Exception
-
makeImmutable
public void makeImmutable()
Makes the object immutable- Specified by:
makeImmutable
in interfaceRequestAbstract
- Specified by:
makeImmutable
in interfaceXACMLAuthzDecisionQuery
-
validateData
protected void validateData() throws SAML2Exception
- Throws:
SAML2Exception
-
-