Partager via


Signature - Classe

Représente une signature numérique ajoutée à un formulaire ou à un ensemble de données signées d'un formulaire.

Hiérarchie d’héritage

System.Object
  Microsoft.Office.InfoPath.Signature

Espace de noms :  Microsoft.Office.InfoPath
Assembly :  Microsoft.Office.InfoPath (dans Microsoft.Office.InfoPath.dll)

Syntaxe

'Déclaration
Public MustInherit Class Signature
'Utilisation
Dim instance As Signature
public abstract class Signature

Remarques

Utilisez la propriété Item de la collection SignatureCollection pour renvoyer un objet Signature.

La classe Signature fournit la méthode Sign permettant d'écrire le bloc de signature numérique XML et de calculer le hachage cryptographique des données signées.

La classe Signature fournit les propriétés suivantes pour récupérer les informations sur la signature numérique :

  • Certificate   Obtient l'objet Certificat pour le certificat numérique X.509 avec lequel l'utilisateur de formulaire a signé un formulaire ou un ensemble de données d'un formulaire.

  • Comment   Obtient le commentaire ajouté par l'utilisateur à la signature numérique associée à un formulaire ou à un ensemble de données d'un formulaire.

  • SignatureBlockXmlNode   Obtient le nœud XML contenant une signature numérique. Vous pouvez utiliser cette propriété pour étendre les propriétés de signature ou l'ensemble de données stockées dans la signature numérique par InfoPath.

  • Status   Obtient l'état de la signature numérique spécifiée en tant que valeur énumérée SignatureStatus.

Exemples

L'exemple ci-dessous affiche les informations sur la première signature du premier ensemble de données signées d'un formulaire (ou, si le modèle de formulaire est configuré pour signer tout le formulaire, les informations sur la première signature pour le formulaire entier). Tout d'abord, une référence à l'objet Signature représentant la signature est récupérée. Les propriétés Status et Comment de la classe Signature servent à obtenir l'état et les valeurs de commentaire de la signature. La propriété Certificate de la classe Signature est utilisée pour obtenir l'objet Certificate de la signature, qui sert ultérieurement à afficher le destinataire du certificat. La propriété SignatureBlockXmlNode de la classe Signature est utilisée pour récupérer la sous-arborescence du nœud XML qui contient les informations sur la signature. Enfin, toutes ces informations s'affichent dans une série de boîtes de message.

// Get signature.
Signature mySignature = this.SignedDataBlocks[0].Signatures[0];

// Get status of signature.
string sigStatus = mySignature.Status.ToString();

// Get comment.
string signatureComment = mySignature.Comment;

// Get certificate used to sign with.
Certificate signatureCertificate = mySignature.Certificate;

// Get XML node that contains the signature.
XPathNavigator signatureNode = mySignature.SignatureBlockXmlNode;

// Display properties.
MessageBox.Show("Signature properties:\n\nStatus: " + sigStatus + 
   "\nComment: " + signatureComment + 
   "\nCertificate Issued To: " + signatureCertificate.IssuedTo);

// Display XML node subtree that contains signature.
MessageBox.Show("Digital signature XML block: \n" + signatureNode.InnerXml);
Imports Microsoft.VisualBasic.Constants
' Get signature.
Dim mySignature As Signature = Me.SignedDataBlocks(0).Signatures(0)

' Get status of signature.
Dim sigStatus As String = mySignature.Status.ToString()

' Get comment.
Dim signatureComment As String = mySignature.Comment

' Get certificate used to sign with.
Dim signatureCertificate As Certificate = mySignature.Certificate

' Get XML node that contains the signature.
Dim signatureNode As XPathNavigator = mySignature.SignatureBlockXmlNode

' Display properties.
MessageBox.Show("Signature properties:" & NewLine & _
   "Status: " & sigStatus & NewLine & _
   "Comment: " & signatureComment & NewLine & _
   "Certificate Issued To: " & signatureCertificate.IssuedTo)

' Display XML node subtree that contains signature.
MessageBox.Show("Digital signature XML block:" & NewLine & _
   signatureNode.InnerXml)

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

Signature - Membres

Microsoft.Office.InfoPath - Espace de noms