IOpcSignaturePartReference interface

Represents a reference to a part that has been or will be signed.

When to implement

Never. Custom implementations of this interface are not supported.

Members

The IOpcSignaturePartReference interface inherits from the IUnknown interface. IOpcSignaturePartReference also has these types of members:

Methods

The IOpcSignaturePartReference interface has these methods.

MethodDescription
GetContentType

Gets the content type of the referenced part.

GetDigestMethod

Gets the digest method to use on part content of the referenced part when the part is signed.

GetDigestValue

Gets the digest value that is calculated for part content of the referenced part when the part is signed.

GetPartName

Gets the part name of the referenced part.

GetTransformMethod

Gets the canonicalization method to use on part content of a referenced part when the part is signed.

 

Remarks

Only parts that can be represented by the IOpcPart interface can be referenced by an IOpcSignaturePartReference interface pointer. Relationships parts are referenced for signing by a pointer to the IOpcSignatureRelationshipReference interface. To create an IOpcSignatureRelationshipReference interface pointer, call the IOpcSignatureRelationshipReferenceSet::Create method.

To create an IOpcSignaturePartReference interface pointer, call the IOpcSignaturePartReferenceSet::Create method.

To access an IOpcSignaturePartReference interface pointer, call the IOpcSignaturePartReferenceEnumerator::GetCurrent method.

The interface provides methods to access information about the referenced part and the reference itself. When a signature is generated, this reference information is serialized in the XML markup of the signature (signature markup). In signature markup, the information is represented by a Reference element that has its URI attribute value set to the part name of the referenced part.

The following markup shows that these Reference elements are children of the Manifest element in signature markup.


// Signature XML markup
<Signature>
	[...]
	// Package-specific <Object>
	<Object Id="idPackageObject">
		// This <Manifest> element contains only one signed part. 
		<Manifest>
			// A reference to a signed part.
			<Reference URI="aPartName">
				[...]
			</Reference>
		</Manifest>
		[...]
	</Object>
	[...]
</Signature>

Thread Safety

Packaging objects are not thread-safe.

For more information, see the Getting Started with the Packaging API.

Requirements

Minimum supported client

Windows 7 [desktop apps | Windows Store apps]

Minimum supported server

Windows Server 2008 R2 [desktop apps | Windows Store apps]

Header

Msopc.h

IDL

Msopc.idl

See also

Packaging Digital Signature Interfaces
Overviews
Digital Signatures Overview
Getting Started with the Packaging API
Packaging API Programming Guide
Reference
IOpcSignaturePartReferenceEnumerator
IOpcSignaturePartReferenceSet
IOpcSignatureRelationshipReferenceSet
OPC_CANONICALIZATION_METHOD
Core Packaging Interfaces
Packaging Interfaces
Packaging API Reference
Packaging API Samples

 

 

Community Additions

ADD
Show: