Class Manifest
java.lang.Object
org.apache.xml.security.utils.ElementProxy
org.apache.xml.security.utils.SignatureElementProxy
org.apache.xml.security.signature.Manifest
- Direct Known Subclasses:
SignedInfo
Handles
<ds:Manifest>
elements.
This element holds the Reference
elements
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Logger
static final int
The default maximum number of references per Manifest, if secure validation is enabled.private List
<ResourceResolver> Field perManifestResolversprivate static Integer
Field referencesprivate Element[]
Field resolverPropertiesprivate boolean
private List
<VerifiedReference> Field verificationResults[]Fields inherited from class org.apache.xml.security.utils.ElementProxy
baseURI
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addDocument
(String baseURI, String referenceURI, Transforms transforms, String digestURI, String referenceId, String referenceType) ThisaddDocument
method is used to add a new resource to the signed info.void
addResourceResolver
(ResourceResolver resolver) Adds Resource Resolver for retrieving resources at specifiedURI
attribute inreference
elementvoid
addResourceResolver
(ResourceResolverSpi resolverSpi) Adds Resource Resolver for retrieving resources at specifiedURI
attribute inreference
elementvoid
The calculation of the DigestValues in the References must be after the References are already added to the document and during the signing process.Method getBaseLocalName Returns the localname of the Elements of the sub-class.getId()
Returns theId
attributeint
Return the nonnegative number of added references.Get the Per-Manifest Resolver ListMethod getReferencedContentAfterTransformsItemMethod getReferencedContentPriorTransformsItemGet the resolver property mapReturns the value at specified keybyte[]
getSignedContentItem
(int i) Method getSignedContentItemint
Method getSignedContentLengthboolean
getVerificationResult
(int index) After verifying aManifest
or aSignedInfo
using theverifyReferences()
orSignedInfo.verify()
methods, the individual results can be retrieved with this method.Get the list of verification result objectsboolean
item
(int i) Return the ith reference.void
Sets theId
attributevoid
setResolverProperty
(String key, String value) Used to pass parameters like proxy servers etc to the ResourceResolver implementation.boolean
Used to do a reference validation of all enclosed references using theReference.verify()
method.boolean
verifyReferences
(boolean followManifests) Used to do a reference validation of all enclosed references using theReference.verify()
method.Methods inherited from class org.apache.xml.security.utils.SignatureElementProxy
getBaseNamespace
Methods inherited from class org.apache.xml.security.utils.ElementProxy
addBase64Element, addBase64Text, addBigIntegerElement, addReturnToSelf, addText, addTextElement, appendOther, appendSelf, appendSelf, createElementForFamily, createElementForFamilyLocal, createText, getBaseURI, getBigIntegerFromChildElement, getBytesFromTextChild, getDefaultPrefix, getDocument, getElement, getElementPlusReturns, getFirstChild, getLocalAttribute, getTextFromChildElement, getTextFromTextChild, length, registerDefaultPrefixes, setDefaultPrefix, setDocument, setElement, setElement, setLocalAttribute, setLocalIdAttribute, setXPathNamespaceContext
-
Field Details
-
MAXIMUM_REFERENCE_COUNT
public static final int MAXIMUM_REFERENCE_COUNTThe default maximum number of references per Manifest, if secure validation is enabled.- See Also:
-
LOG
private static final org.slf4j.Logger LOG -
referenceCount
-
references
Field references -
referencesEl
-
verificationResults
Field verificationResults[] -
resolverProperties
Field resolverProperties -
perManifestResolvers
Field perManifestResolvers -
secureValidation
private boolean secureValidation
-
-
Constructor Details
-
Manifest
ConstructsManifest
- Parameters:
doc
- theDocument
in whichXMLsignature
is placed
-
Manifest
Constructor Manifest- Parameters:
element
-baseURI
-- Throws:
XMLSecurityException
-
Manifest
public Manifest(Element element, String baseURI, boolean secureValidation) throws XMLSecurityException Constructor Manifest- Parameters:
element
-baseURI
-secureValidation
-- Throws:
XMLSecurityException
-
-
Method Details
-
addDocument
public void addDocument(String baseURI, String referenceURI, Transforms transforms, String digestURI, String referenceId, String referenceType) throws XMLSignatureException ThisaddDocument
method is used to add a new resource to the signed info. AReference
is built from the supplied values.- Parameters:
baseURI
- the URI of the resource where the XML instance was storedreferenceURI
-URI
attribute inReference
for specifying where data istransforms
- org.apache.xml.security.signature.Transforms object with an ordered list of transformations to be performed.digestURI
- The digest algorithm URI to be used.referenceId
-referenceType
-- Throws:
XMLSignatureException
-
generateDigestValues
The calculation of the DigestValues in the References must be after the References are already added to the document and during the signing process. This ensures that all necessary data is in place. -
getLength
public int getLength()Return the nonnegative number of added references.- Returns:
- the number of references
-
item
Return the ith reference. Validi
values are 0 to{link@ getSize}-1
.- Parameters:
i
- Index of the requestedReference
- Returns:
- the ith reference
- Throws:
XMLSecurityException
-
setId
Sets theId
attribute- Parameters:
Id
- theId
attribute inds:Manifest
-
getId
Returns theId
attribute- Returns:
- the
Id
attribute inds:Manifest
-
verifyReferences
Used to do a reference validation of all enclosed references using theReference.verify()
method.This step loops through all
Reference
s and does verify the hash values. If one or more verifications fail, the method returnsfalse
. If all verifications are successful, it returnstrue
. The results of the individual reference validations are available by using thegetVerificationResult(int)
method- Returns:
- true if all References verify, false if one or more do not verify.
- Throws:
MissingResourceFailureException
- if aReference
does not verify (throws aReferenceNotInitializedException
because of an uninitializedXMLSignatureInput
XMLSecurityException
- See Also:
-
verifyReferences
public boolean verifyReferences(boolean followManifests) throws MissingResourceFailureException, XMLSecurityException Used to do a reference validation of all enclosed references using theReference.verify()
method.This step loops through all
Reference
s and does verify the hash values. If one or more verifications fail, the method returnsfalse
. If all verifications are successful, it returnstrue
. The results of the individual reference validations are available by using thegetVerificationResult(int)
method- Parameters:
followManifests
-- Returns:
- true if all References verify, false if one or more do not verify.
- Throws:
MissingResourceFailureException
- if aReference
does not verify (throws aReferenceNotInitializedException
because of an uninitializedXMLSignatureInput
XMLSecurityException
- See Also:
-
getVerificationResult
After verifying aManifest
or aSignedInfo
using theverifyReferences()
orSignedInfo.verify()
methods, the individual results can be retrieved with this method.- Parameters:
index
- an index of into aManifest
or aSignedInfo
- Returns:
- the results of reference validation at the specified index
- Throws:
XMLSecurityException
-
getVerificationResults
Get the list of verification result objects -
addResourceResolver
Adds Resource Resolver for retrieving resources at specifiedURI
attribute inreference
element- Parameters:
resolver
-ResourceResolver
can provide the implementation subclass ofResourceResolverSpi
for retrieving resource.
-
addResourceResolver
Adds Resource Resolver for retrieving resources at specifiedURI
attribute inreference
element- Parameters:
resolverSpi
- the implementation subclass ofResourceResolverSpi
for retrieving the resource.
-
getPerManifestResolvers
Get the Per-Manifest Resolver List- Returns:
- the per-manifest Resolver List
-
getResolverProperties
Get the resolver property map- Returns:
- the resolver property map
-
setResolverProperty
Used to pass parameters like proxy servers etc to the ResourceResolver implementation.- Parameters:
key
- the keyvalue
- the value
-
getResolverProperty
Returns the value at specified key- Parameters:
key
- the key- Returns:
- the value
-
getSignedContentItem
Method getSignedContentItem- Parameters:
i
-- Returns:
- The signed content of the i reference.
- Throws:
XMLSignatureException
-
getReferencedContentBeforeTransformsItem
public XMLSignatureInput getReferencedContentBeforeTransformsItem(int i) throws XMLSecurityException Method getReferencedContentPriorTransformsItem- Parameters:
i
-- Returns:
- The contents before transformation of the reference i.
- Throws:
XMLSecurityException
-
getReferencedContentAfterTransformsItem
Method getReferencedContentAfterTransformsItem- Parameters:
i
-- Returns:
- The contents after transformation of the reference i.
- Throws:
XMLSecurityException
-
getSignedContentLength
public int getSignedContentLength()Method getSignedContentLength- Returns:
- The number of references contained in this reference.
-
getBaseLocalName
Method getBaseLocalName Returns the localname of the Elements of the sub-class.- Specified by:
getBaseLocalName
in classElementProxy
- Returns:
- the localname of the Elements of the sub-class.
-
isSecureValidation
public boolean isSecureValidation()
-