IOpcSignaturePartReference interface (msopc.h)

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

Inheritance

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

Methods

The IOpcSignaturePartReference interface has these methods.

 
IOpcSignaturePartReference::GetContentType

Gets the content type of the referenced part.
IOpcSignaturePartReference::GetDigestMethod

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

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

Gets the part name of the referenced part.
IOpcSignaturePartReference::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

Requirement Value
Minimum supported client Windows 7 [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 R2 [desktop apps | UWP apps]
Target Platform Windows
Header msopc.h

See also

Core Packaging Interfaces

Digital Signatures Overview

Getting Started with the Packaging API

IOpcSignaturePartReferenceEnumerator

IOpcSignaturePartReferenceSet

IOpcSignatureRelationshipReferenceSet

OPC_CANONICALIZATION_METHOD

Overviews

Packaging API Programming Guide

Packaging API Reference

Packaging API Samples

Packaging Digital Signature Interfaces

Packaging Interfaces

Reference