Jelentkezzen intelligens kártyával PDF-fájl aláírással
Bevezetés
digitális korban a dokumentumok védelme fontosabb, mint valaha. Legyen szó szerződésről, megállapodásról vagy bármilyen érzékeny információról, a legfontosabb annak biztosítása, hogy a dokumentum hiteles legyen, és ne hamisítsák meg. Írja be a digitális aláírásokat! Ma megvizsgáljuk, hogyan írhat alá PDF-fájlt intelligens kártyával az Aspose.PDF for .NET segítségével. Ez a nagy teljesítményű könyvtár lehetővé teszi a fejlesztők számára a PDF-dokumentumok hatékony kezelését és létrehozását, beleértve a biztonságos digitális aláírások hozzáadását. Szóval, fogd a smart kártyádat, és kezdjük is!
Előfeltételek
Mielőtt belevágnánk a PDF-fájlok aláírásának aprólékos dolgaiba, győződjünk meg arról, hogy mindennel rendelkezik, amire szüksége van. Íme egy ellenőrző lista, amely segít a felkészülésben:
- Aspose.PDF for .NET: Győződjön meg arról, hogy telepítve van az Aspose.PDF könyvtár. Letöltheti atelek.
- Visual Studio: Egy fejlesztői környezet, ahol megírhatja és futtathatja .NET kódját.
- Intelligens kártya: Szüksége lesz egy érvényes digitális tanúsítvánnyal rendelkező intelligens kártyára.
- A C# alapvető ismerete: A C# programozás ismerete hasznos lesz, mivel ezen a nyelven fogunk kódrészleteket írni.
- PDF-dokumentum: PDF-mintafájl (pl
blank.pdf
), hogy teszteljük aláírási folyamatunkat.
Ha ezekkel az előfeltételekkel rendelkezik, készen áll arra, hogy belemerüljön a kódba!
Csomagok importálása
Először is importáljuk a szükséges csomagokat. Referenciákat kell hozzáadnia az Aspose.PDF könyvtárhoz a projektben. A következőképpen teheti meg:
- Nyissa meg a Visual Studio-t.
- Hozzon létre egy új projektet, vagy nyisson meg egy meglévőt.
- Kattintson a jobb gombbal a projektre a Solution Explorerben, és válassza ki
Manage NuGet Packages
. - Keressen rá
Aspose.PDF
és telepítse a legújabb verziót.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
Most, hogy a szükséges csomagokat importáltuk, bontsuk le lépésről lépésre a kódot.
1. lépés: Állítsa be a dokumentumot
A folyamat első lépése az aláírni kívánt PDF dokumentum beállítása. Ezt a következőképpen teheti meg:
string dataDir = "YOUR DOCUMENTS DIRECTORY";
Document doc = new Document(dataDir + "blank.pdf");
Ebben a részletben meghatározzuk a dokumentumkönyvtárunk elérési útját, és létrehozzuk a példánytDocument
nevű minta PDF fájl használatávalblank.pdf
. Ügyeljen arra, hogy cserélje ki"YOUR DOCUMENTS DIRECTORY"
a tényleges elérési úttal, ahol a PDF található.
2. lépés: A PdfFileSignature inicializálása
Ezután inicializáljuk aPdfFileSignature
osztály, amely az aláírási folyamat lebonyolításáért felelős.
using (Facades.PdfFileSignature pdfSign = new Facades.PdfFileSignature())
{
pdfSign.BindPdf(doc);
Itt létrehozunk egy példánytPdfFileSignature
és kösse össze a PDF dokumentumunkkal. Ez előkészíti a dokumentumot aláírásra.
3. lépés: Nyissa meg a Smart Card Certificate-t
Most jön a döntő rész – az intelligens kártyán tárolt digitális tanúsítvány elérése. Így tehetjük meg:
Nyissa meg a Tanúsítványtárolót
System.Security.Cryptography.X509Certificates.X509Store store = new System.Security.Cryptography.X509Certificates.X509Store(System.Security.Cryptography.X509Certificates.StoreLocation.CurrentUser);
store.Open(System.Security.Cryptography.X509Certificates.OpenFlags.ReadOnly);
Megnyitjuk az aktuális felhasználói profilban található tanúsítványtárolót. Ez lehetővé teszi számunkra, hogy hozzáférjünk a gépére telepített tanúsítványokhoz, beleértve az intelligens kártyán lévőket is.
Válassza ki a Tanúsítványt
System.Security.Cryptography.X509Certificates.X509Certificate2Collection sel =
System.Security.Cryptography.X509Certificates.X509Certificate2UI.SelectFromCollection(
store.Certificates, null, null, System.Security.Cryptography.X509Certificates.X509SelectionFlag.SingleSelection);
Ez a kód arra kéri a felhasználót, hogy válasszon tanúsítványt a gyűjteményből. A felhasználói felület megjeleníti az összes elérhető tanúsítványt, lehetővé téve, hogy kiválassza az intelligens kártyájához társított tanúsítványt.
4. lépés: Hozd létre a külső aláírást
Miután kiválasztotta a tanúsítványt, a következő lépés egy külső aláírás létrehozása a kiválasztott tanúsítvánnyal.
Aspose.Pdf.Forms.ExternalSignature externalSignature = new Aspose.Pdf.Forms.ExternalSignature(sel[0]);
Itt létrehozunk egy példánytExternalSignature
a kiválasztott tanúsítvány használatával. Ez az objektum a PDF-dokumentum aláírására szolgál.
5. lépés: Állítsa be az aláírás megjelenését
Most pedig állítsuk be aláírásunk megjelenését. Itt testreszabhatja, hogyan nézzen ki aláírása a dokumentumon.
pdfSign.SignatureAppearance = dataDir + "demo.png";
Ebben a részletben az aláírás megjelenését adjuk meg egy képfájl elérési útjának megadásával (például egy logó vagy egy aláírás grafika). Ügyeljen arra, hogy cserélje ki"demo.png"
a ténylegesen használni kívánt képpel.
6. lépés: Írja alá a PDF-fájlt
Ha minden be van állítva, ideje aláírni a PDF dokumentumot!
pdfSign.Sign(1, "Reason", "Contact", "Location", true, new System.Drawing.Rectangle(100, 100, 200, 200), externalSignature);
pdfSign.Save(dataDir + "externalSignature2.pdf");
Ebben a lépésben aSign
módszer rajtunkpdfSign
objektum. Az egyes paraméterek jelentése:
1
: Az oldalszám, ahol az aláírás megjelenik."Reason"
: A dokumentum aláírásának oka."Contact"
: Az aláíró elérhetősége."Location"
: Az aláíró helye.true
: Azt jelzi, hogy létre kell-e hozni egy látható aláírást.new System.Drawing.Rectangle(100, 100, 200, 200)
: Az aláírás helye és mérete a PDF-ben.externalSignature
: A korábban létrehozott aláírási objektum.
Végül az aláírt dokumentumot más néven mentjükexternalSignature2.pdf
.
7. lépés: Ellenőrizze az aláírást
A dokumentum aláírása után feltétlenül ellenőrizni kell, hogy az aláírás érvényes-e. Ezt a következőképpen teheti meg:
Inicializálja az ellenőrzési folyamatot
using (Facades.PdfFileSignature pdfSign = new Facades.PdfFileSignature(new Document(dataDir + "externalSignature2.pdf")))
{
IList<string> sigNames = pdfSign.GetSignNames();
Létrehozunk egy új példánytPdfFileSignature
az aláírt dokumentumhoz. Ezután lekérjük a dokumentumban található összes aláírás nevét.
Ellenőrizze az aláírás érvényességét
for (int index = 0; index <= sigNames.Count - 1; index++)
{
if (!pdfSign.VerifySigned(sigNames[index]) || !pdfSign.VerifySignature(sigNames[index]))
{
throw new ApplicationException("Not verified");
}
}
Végighurkoljuk az egyes aláírási neveket, és ellenőrizzük azok érvényességét. Ha valamelyik aláírás ellenőrzése sikertelen, a rendszer kivételt dob, jelezve, hogy az aláírás érvénytelen.
Következtetés
És megvan! Sikeresen aláírt egy PDF-dokumentumot intelligens kártyával az Aspose.PDF for .NET segítségével. Ez a folyamat nemcsak biztonságossá teszi dokumentumát, hanem egy olyan hitelességi réteget is hozzáad, amely döntő fontosságú a mai digitális világban. Legyen szó szerződésekről, jogi dokumentumokról vagy bármilyen érzékeny információról, a digitális aláírás alkalmazásának ismerete értékes készség.
GYIK
Mi az Aspose.PDF for .NET?
Az Aspose.PDF for .NET egy hatékony könyvtár, amely lehetővé teszi a fejlesztők számára PDF dokumentumok létrehozását, kezelését és konvertálását .NET alkalmazásokon belül.
Szükségem van intelligens kártyára a PDF-ek aláírásához?
Bár az intelligens kártya nem kötelező, erősen ajánlott biztonságos digitális aláíráshoz, mivel további biztonsági réteget nyújt.
Használhatok bármilyen PDF fájlt az aláíráshoz?
Igen, bármilyen PDF-fájlt használhat, de ügyeljen arra, hogy ne legyen jelszóval védett. Ha igen, először fel kell oldania.
Mi a teendő, ha nincs digitális tanúsítványom?
Digitális tanúsítványt beszerezhet egy megbízható tanúsító hatóságtól (CA), vagy tesztelési célokra használhat önaláírt tanúsítványt.
Elérhető az Aspose.PDF próbaverziója?
Igen, letölthet egy ingyenes próbaverziót a webhelyrőlAspose honlapja.