DigitalSignatureUtil

DigitalSignatureUtil class

Belgeyi imzalamak için yöntemler sağlar.

Daha fazla bilgi edinmek için şu adresi ziyaret edin:Dijital İmzalarla Çalışın belgeleme makalesi.

public static class DigitalSignatureUtil

yöntemler

İsimTanım
static LoadSignatures(Stream)Akışı kullanarak belgeden dijital imzaları yükler.
static LoadSignatures(string)Belgeden dijital imzaları yükler.
static RemoveAllSignatures(Stream, Stream)Kaynak akışındaki belgeden tüm dijital imzaları kaldırır ve imzasız belgeyi hedef akışına yazar.
static RemoveAllSignatures(string, string)Kaynak dosyadan tüm dijital imzaları kaldırır ve imzasız dosyayı hedef dosyaya yazar.
static Sign(Stream, Stream, CertificateHolder)Verileni kullanarak kaynak belgeyi işaretlerCertificateHolder dijital imza ile imzalanmış belgeyi hedef akışa yazar.
static Sign(string, string, CertificateHolder)Verileni kullanarak kaynak belgeyi işaretlerCertificateHolder dijital imza ile imzalanmış belgeyi hedef dosyaya yazar.
static Sign(Stream, Stream, CertificateHolderSignOptions)Verileni kullanarak kaynak belgeyi işaretlerCertificateHolder VeSignOptions dijital imza ile imzalanmış belgeyi hedef akışa yazar.
static Sign(string, string, CertificateHolderSignOptions)Verileni kullanarak kaynak belgeyi işaretlerCertificateHolder VeSignOptions dijital imza ile imzalanmış belgeyi hedef dosyaya yazar.

Notlar

Dijital imza, Belge Nesne Modeli yerine dosya içeriğiyle çalıştığı için bu yöntemler ayrı bir sınıfa konur.

Desteklenen biçimler şunlardır: Doc , Dot , Docx , Dotx , Docm , Dotm , Odt , Ott.

Örnekler

Dijital olarak imzalanmış bir belgeden imzaların nasıl yükleneceğini gösterir.

// DigitalSignatureUtil sınıfını kullanarak imzalanmış bir belgenin dijital imza koleksiyonunu yüklemenin iki yolu vardır.
// 1 - Yerel dosya sisteminden bir belgeden yükleme dosya adı:
DigitalSignatureCollection digitalSignatures = 
    DigitalSignatureUtil.LoadSignatures(MyDir + "Digitally signed.docx");

// Eğer bu koleksiyon boş değilse, belgenin dijital olarak imzalandığını doğrulayabiliriz.
Assert.AreEqual(1, digitalSignatures.Count);

// 2 - Bir FileStream'den bir belgeden yükleme:
using (Stream stream = new FileStream(MyDir + "Digitally signed.docx", FileMode.Open))
{
    digitalSignatures = DigitalSignatureUtil.LoadSignatures(stream);
    Assert.AreEqual(1, digitalSignatures.Count);
}

Dijital olarak imzalanmış bir belgeden dijital imzaların nasıl kaldırılacağını gösterir.

// Dijital imzaları kaldırmak için DigitalSignatureUtil sınıfını kullanmanın iki yolu vardır
// imzalanmış bir belgenin imzasız bir kopyasını yerel dosya sisteminin başka bir yerine kaydederek.
// 1 - Dosya adı dizelerine göre hem imzalı belgenin hem de imzasız kopyanın yerlerini belirle:
DigitalSignatureUtil.RemoveAllSignatures(MyDir + "Digitally signed.docx",
    ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromString.docx");

// 2 - Dosya akışları ile hem imzalı belgenin hem de imzasız kopyanın yerlerini belirle:
using (Stream streamIn = new FileStream(MyDir + "Digitally signed.docx", FileMode.Open))
{
    using (Stream streamOut = new FileStream(ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromStream.docx", FileMode.Create))
    {
        DigitalSignatureUtil.RemoveAllSignatures(streamIn, streamOut);
    }
}

// Her iki çıktı belgemizin de dijital imzaya sahip olmadığını doğrulayın.
Assert.AreEqual(0, DigitalSignatureUtil.LoadSignatures(ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromString.docx").Count);
Assert.AreEqual(0, DigitalSignatureUtil.LoadSignatures(ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromStream.docx").Count);

Ayrıca bakınız