DigitalSignatureCollection

DigitalSignatureCollection class

Fournit une collection de signatures numériques attachées à un document.

public class DigitalSignatureCollection : IEnumerable

Constructeurs

NomLa description
DigitalSignatureCollection()Le constructeur de DigitalSignatureCollection.

Méthodes

NomLa description
Add(DigitalSignature)Ajouter une signature à DigitalSignatureCollection.
GetEnumerator()Obtenir l’énumérateur pour DigitalSignatureCollection, cet énumérateur permet l’itération sur la collection

Exemples

L’exemple suivant montre comment créer une signature numérique

[C#]
internal void ValidateSignature()
{
   Workbook wb = new Workbook(@"newfile.xlsx");
   //wb.IsDigitallySigned est vrai lorsque le classeur est déjà signé.
   System.Console.WriteLine(wb.IsDigitallySigned);
   // récupère la collection digitalSignature du classeur
   DigitalSignatureCollection dsc = wb.GetDigitalSignature();
   foreach (DigitalSignature ds in dsc)
   {
       System.Console.WriteLine(ds.Comments);
       System.Console.WriteLine(ds.SignTime);
       System.Console.WriteLine(ds.IsValid);
   }
}
internal void SignSignature()
{
   //dsc is signature collection contient une ou plusieurs signatures nécessaires pour signer
   DigitalSignatureCollection dsc = new DigitalSignatureCollection();
   //cert doit contenir une clé privée, il peut être construit à partir d'un fichier cert ou d'une collection de certificats Windows.
   //123456 est le mot de passe de cert
   X509Certificate2 cert = new X509Certificate2("mykey2.pfx", "123456");
   DigitalSignature ds = new DigitalSignature(cert, "test for sign", DateTime.Now);
   dsc.Add(ds);
   Workbook wb = new Workbook();
   //wb.SetDigitalSignature signe toutes les signatures dans dsc
   wb.SetDigitalSignature(dsc);
   wb.Save(@"newfile.xlsx");
}

[Visual Basic]
   Sub ValidateSignature()
   Dim workbook As Workbook = New Workbook("newfile.xlsx")
   'Workbook.IsDigitallySigned a la valeur true lorsque le classeur est déjà signé.
   System.Console.WriteLine(workbook.IsDigitallySigned)
   'obtenir la collection digitalSignature du classeur
   Dim dsc As DigitalSignatureCollection = workbook.GetDigitalSignature()
   Dim ds As DigitalSignature
   For Each ds In dsc
       System.Console.WriteLine(ds.Comments)
       System.Console.WriteLine(ds.SignTime)
       System.Console.WriteLine(ds.IsValid)
   Next
End Sub

Sub SignSignature()
   'dsc est une collection de signatures contenant une ou plusieurs signatures nécessaires pour signer
   Dim dsc As DigitalSignatureCollection = New DigitalSignatureCollection()
   'cert doit contenir une clé privée, elle peut être construite à partir d'un fichier cert ou d'une collection de certificats Windows.
   Dim cert As X509Certificate2 = New X509Certificate2("mykey2.pfx", "123456")
   'créer une signature avec certificat, signer l'objet et signer l'heure
   Dim ds As DigitalSignature = New DigitalSignature(cert, "test for sign", DateTime.Now)
   dsc.Add(ds)
   Dim workbook As Workbook = New Workbook()
   'workbook.SetDigitalSignature signe toutes les signatures dans dsc
   workbook.SetDigitalSignature(dsc)
   workbook.Save("newfile.xlsx")
End Sub

Voir également