DigitalSignatureUtil

DigitalSignatureUtil class

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

Daha fazlasını öğrenmek için şu adresi ziyaret edin:Dijital İmzalarla Çalışma dokümantasyon makalesi.

public static class DigitalSignatureUtil

yöntemler

İsimTanım
static LoadSignatures(Stream)Belgeden dijital imzaları akışı kullanarak yükler.
static LoadSignatures(string)Belgeden dijital imzaları yükler.
static RemoveAllSignatures(Stream, Stream)Kaynak akışındaki belgedeki tüm dijital imzaları kaldırır ve imzasız belgeyi hedef akışa yazar.
static RemoveAllSignatures(string, string)Kaynak dosyadaki tüm dijital imzaları kaldırır ve imzasız dosyayı hedef dosyaya yazar.
static Sign(Stream, Stream, CertificateHolder)Verilenleri kullanarak kaynak belgeyi imzalarCertificateHolderdijital imza ile imzalanır ve imzalı belgeyi hedef akışa yazar.
static Sign(string, string, CertificateHolder)Verilenleri kullanarak kaynak belgeyi imzalarCertificateHolder dijital imza ile imzalanır ve imzalı belgeyi hedef dosyaya yazar.
static Sign(Stream, Stream, CertificateHolderSignOptions)Verilenleri kullanarak kaynak belgeyi imzalarCertificateHolder VeSignOptions dijital imzalı ve imzalı belgeyi hedef akışa yazar.
static Sign(string, string, CertificateHolderSignOptions)Verilenleri kullanarak kaynak belgeyi imzalarCertificateHolder VeSignOptions dijital imzayla imzalanır ve imzalı 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 formatlarDoc VeDocx.

Örnekler

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

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

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

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

Dijital imzalı 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
// imzalı bir belgenin imzasız bir kopyasını yerel dosya sisteminde başka bir yere kaydederek.
// 1 - Hem imzalı belgenin hem de imzasız kopyanın konumlarını dosya adı dizelerine göre belirleyin:
DigitalSignatureUtil.RemoveAllSignatures(MyDir + "Digitally signed.docx",
    ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromString.docx");

// 2 - Hem imzalı belgenin hem de imzasız kopyanın konumlarını dosya akışlarına göre belirleyin:
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 imzası olmadığını doğrulayın.
Assert.That(DigitalSignatureUtil.LoadSignatures(ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromString.docx"), Is.Empty);
Assert.That(DigitalSignatureUtil.LoadSignatures(ArtifactsDir + "DigitalSignatureUtil.LoadAndRemove.FromStream.docx"), Is.Empty);

Ayrıca bakınız