Interfaccia IOpcSignatureReference (msopc.h)
Rappresenta un riferimento al markup XML che è stato o verrà firmato. Questo markup XML a cui si fa riferimento viene serializzato nel markup della firma quando viene generata una firma.
Ereditarietà
L'interfaccia IOpcSignatureReference eredita dall'interfaccia IUnknown . IOpcSignatureReference include anche questi tipi di membri:
Metodi
L'interfaccia IOpcSignatureReference include questi metodi.
IOpcSignatureReference::GetDigestMethod Ottiene il metodo digest da utilizzare sull'elemento XML a cui si fa riferimento, quando l'elemento è firmato. |
IOpcSignatureReference::GetDigestValue Ottiene il valore digest calcolato per l'elemento XML a cui si fa riferimento quando l'elemento è firmato. |
IOpcSignatureReference::GetId Ottiene l'identificatore per il riferimento. |
IOpcSignatureReference::GetTransformMethod Ottiene il metodo di canonizzazione da utilizzare sull'elemento XML a cui si fa riferimento, quando l'elemento è firmato. |
IOpcSignatureReference::GetType Ottiene una stringa che indica il tipo dell'elemento XML a cui si fa riferimento. |
IOpcSignatureReference::GetUri Ottiene l'URI dell'elemento XML a cui si fa riferimento. |
Commenti
Per creare un puntatore all'interfaccia IOpcSignatureReference , chiamare il metodo IOpcSignatureReferenceSet::Create . IOpcSignatureReferenceSet::Create non crea il riferimento all'elemento Object specifico del pacchetto; tale riferimento viene creato automaticamente quando viene generata la firma.
Per accedere a un puntatore all'interfaccia IOpcSignatureReference , chiamare il metodo IOpcSignatureReferenceEnumerator::GetCurrent . IOpcSignatureReferenceEnumerator::GetCurrent non accede al riferimento all'elemento Object specifico del pacchetto; chiamare il metodo IOpcDigitalSignature::GetPackageObjectReference per accedere a tale riferimento.
L'interfaccia fornisce metodi per accedere alle informazioni sul riferimento stesso e all'elemento XML di riferimento. L'elemento a cui si fa riferimento può essere l'elemento Object specifico del pacchetto, un elemento Object specifico dell'applicazione o un elemento figlio di un oggetto specifico dell'applicazione.
Quando viene generata una firma, queste informazioni di riferimento vengono serializzate nel markup XML della firma (markup della firma). Nel markup della firma, le informazioni sono rappresentate da un elemento Reference con il relativo valore dell'attributo URI impostato su "#" seguito dal valore dell'attributo Id dell'elemento a cui si fa riferimento. Ad esempio, se l'attributo Id dell'elemento a cui si fa riferimento è "Application", l'attributo URI dell'elemento Reference è impostato su "#Application", come illustrato nel markup seguente.
Il markup della firma seguente mostra un riferimento serializzato a un elemento Object specifico dell'applicazione firmato.
<Signature Id="SignatureId" xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
[...]
<Reference URI="#idPackageObject" ...>
[...]
</Reference>
<!-- This reference indicates that the application-specific
Object element was signed when the signature was generated.-->
<Reference URI="#Application" ...>
[...]
</Reference>
</SignedInfo>
[...]
<Object Id="idPackageObject" ...>
[...]
</Object>
<!-- This application-specific <Object> element was signed when the
signature was generated. -->
<Object Id="Application">
[...]
</Object>
</Signature>
Il markup della firma seguente mostra un riferimento serializzato a un elemento figlio firmato di un elemento Object specifico dell'applicazione.
<Signature Id="SignatureId" xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
[...]
<Reference URI="#idPackageObject" ...>
[...]
</Reference>
<!-- This reference indicates that MyElement in the application
-specific Object element was signed when the signature was
generated. -->
<Reference URI="#MyElementId" ...>
[...]
</Reference>
</SignedInfo>
[...]
<Object Id="idPackageObject" ...>
[...]
</Object>
<Object Id="Application">
[...]
<!-- This element is signed. -->
<MyElement Id="MyElementId">
[...]
</MyElement>
[...]
</Object>
</Signature>
Requisiti
Client minimo supportato | Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | msopc.h |
Vedi anche
Interfacce di creazione di pacchetti principali
Panoramica delle firme digitali
Introduzione con l'API per la creazione di pacchetti
IOpcSignatureReferenceEnumerator
Cenni preliminari
Guida alla programmazione dell'API per la creazione di pacchetti
Informazioni di riferimento sulle API per la creazione di pacchetti
Esempi di API per la creazione di pacchetti
Creazione di pacchetti di interfacce di firma digitale
Interfacce di creazione di pacchetti
Riferimento