ตั้งค่ารหัสผู้ให้บริการลายเซ็นในเอกสาร Word
การแนะนำ
สวัสดี! คุณมีเอกสาร Word ที่น่าทึ่งนี้ที่ต้องมีลายเซ็นดิจิทัลใช่ไหม? แต่ไม่ใช่ลายเซ็นธรรมดาทั่วไป คุณต้องกำหนดรหัสผู้ให้บริการลายเซ็นเฉพาะ ไม่ว่าคุณจะจัดการเอกสารทางกฎหมาย สัญญา หรือเอกสารใดๆ การเพิ่มลายเซ็นดิจิทัลที่ปลอดภัยถือเป็นสิ่งสำคัญ ในบทช่วยสอนนี้ ฉันจะแนะนำคุณตลอดกระบวนการในการกำหนดรหัสผู้ให้บริการลายเซ็นในเอกสาร Word โดยใช้ Aspose.Words สำหรับ .NET พร้อมหรือยัง? มาเริ่มกันเลย!
ข้อกำหนดเบื้องต้น
ก่อนที่เราจะเริ่ม โปรดตรวจสอบให้แน่ใจว่าคุณมีสิ่งต่อไปนี้:
- Aspose.Words สำหรับไลบรารี .NET: หากคุณยังไม่ได้ทำดาวน์โหลดได้ที่นี่.
- สภาพแวดล้อมการพัฒนา: Visual Studio หรือ IDE ที่เข้ากันได้กับ C#
- เอกสาร Word: เอกสารที่มีบรรทัดลายเซ็น (
Signature line.docx
- - ใบรับรองดิจิทัล: A
.pfx
ไฟล์ใบรับรอง (เช่นmorzal.pfx
- - ความรู้พื้นฐานเกี่ยวกับ C#: พื้นฐานเท่านั้น ไม่ต้องกังวล เราพร้อมช่วยเหลือคุณ!
ตอนนี้เรามาเริ่มดำเนินการกันเลย!
นำเข้าเนมสเปซ
สิ่งแรกที่ต้องทำคือตรวจสอบให้แน่ใจว่าคุณได้รวมเนมสเปซที่จำเป็นไว้ในโปรเจ็กต์ของคุณแล้ว ซึ่งถือเป็นสิ่งสำคัญในการเข้าถึงไลบรารี Aspose.Words และคลาสที่เกี่ยวข้อง
using Aspose.Words;
using Aspose.Words.Drawing;
using Aspose.Words.DigitalSignatures;
เอาล่ะ มาแยกมันออกเป็นขั้นตอนง่าย ๆ ที่เข้าใจง่ายกันดีกว่า
ขั้นตอนที่ 1: โหลดเอกสาร Word ของคุณ
ขั้นตอนแรกคือโหลดเอกสาร Word ที่มีบรรทัดลายเซ็น เอกสารนี้จะถูกปรับเปลี่ยนให้มีลายเซ็นดิจิทัลพร้อมรหัสผู้ให้บริการลายเซ็นที่ระบุ
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Signature line.docx");
ที่นี่เราจะระบุไดเรกทอรีที่เอกสารของคุณตั้งอยู่ แทนที่"YOUR DOCUMENT DIRECTORY"
ด้วยเส้นทางจริงไปยังเอกสารของคุณ
ขั้นตอนที่ 2: เข้าถึงสายลายเซ็น
ขั้นต่อไป เราต้องเข้าถึงบรรทัดลายเซ็นภายในเอกสาร บรรทัดลายเซ็นจะฝังเป็นวัตถุรูปร่างในเอกสาร Word
SignatureLine signatureLine = ((Shape)doc.FirstSection.Body.GetChild(NodeType.Shape, 0, true)).SignatureLine;
บรรทัดโค้ดนี้รับรูปร่างแรกในเนื้อหาของส่วนแรกของเอกสารและส่งไปยังSignatureLine
วัตถุ.
ขั้นตอนที่ 3: ตั้งค่าตัวเลือกป้าย
ขณะนี้ เรากำลังสร้างตัวเลือกการลงนาม ซึ่งได้แก่ ID ผู้ให้บริการและ ID บรรทัดลายเซ็นจากบรรทัดลายเซ็นที่เข้าถึง
SignOptions signOptions = new SignOptions
{
ProviderId = signatureLine.ProviderId,
SignatureLineId = signatureLine.Id
};
ตัวเลือกเหล่านี้จะถูกใช้เมื่อลงนามในเอกสารเพื่อให้แน่ใจว่าได้ตั้งค่า ID ผู้ให้บริการลายเซ็นที่ถูกต้อง
ขั้นตอนที่ 4: โหลดใบรับรอง
หากต้องการลงนามในเอกสารแบบดิจิทัล คุณจะต้องมีใบรับรอง นี่คือวิธีการโหลดเอกสารของคุณ.pfx
ไฟล์:
CertificateHolder certHolder = CertificateHolder.Create(dataDir + "morzal.pfx", "aw");
แทนที่"aw"
พร้อมรหัสผ่านสำหรับไฟล์ใบรับรองของคุณ หากมี
ขั้นตอนที่ 5: ลงนามในเอกสาร
ในที่สุด ก็ถึงเวลาลงนามเอกสารโดยใช้DigitalSignatureUtil.Sign
วิธี.
DigitalSignatureUtil.Sign(dataDir + "Digitally signed.docx",
dataDir + "SignDocuments.SetSignatureProviderId.docx", certHolder, signOptions);
การดำเนินการนี้จะลงนามในเอกสารของคุณและบันทึกเป็นไฟล์ใหม่Digitally signed.docx
.
บทสรุป
และแล้วคุณก็ทำได้! คุณได้ตั้งค่า Signature Provider ID ในเอกสาร Word สำเร็จแล้วโดยใช้ Aspose.Words สำหรับ .NET กระบวนการนี้ไม่เพียงแต่จะรักษาความปลอดภัยเอกสารของคุณเท่านั้น แต่ยังช่วยให้แน่ใจว่าเอกสารนั้นเป็นไปตามมาตรฐานลายเซ็นดิจิทัลอีกด้วย ตอนนี้ ลองทำกับเอกสารของคุณดู มีคำถามหรือไม่? ดูคำถามที่พบบ่อยด้านล่างหรือไปที่ฟอรั่มสนับสนุน Aspose.
คำถามที่พบบ่อย
Signature Provider ID คืออะไร?
รหัสผู้ให้บริการลายเซ็นจะระบุผู้ให้บริการลายเซ็นดิจิทัลอย่างชัดเจน ทำให้มั่นใจได้ถึงความถูกต้องและปลอดภัย
ฉันสามารถใช้ไฟล์ .pfx สำหรับการลงนามได้หรือไม่
ใช่ ตราบใดที่เป็นใบรับรองดิจิทัลที่ถูกต้อง ตรวจสอบให้แน่ใจว่าคุณมีรหัสผ่านที่ถูกต้องหากได้รับการป้องกัน
ฉันจะได้รับไฟล์ .pfx ได้อย่างไร?
คุณสามารถรับไฟล์ .pfx ได้จาก Certificate Authority (CA) หรือสร้างไฟล์ขึ้นมาโดยใช้เครื่องมือเช่น OpenSSL
ฉันสามารถลงนามเอกสารหลายฉบับพร้อมกันได้ไหม?
ใช่ คุณสามารถวนซ้ำผ่านเอกสารหลายฉบับและใช้กระบวนการลงนามแบบเดียวกันกับแต่ละฉบับได้
จะเกิดอะไรขึ้นหากฉันไม่มีบรรทัดลายเซ็นในเอกสารของฉัน?
คุณจะต้องแทรกบรรทัดลายเซ็นก่อน Aspose.Words มีวิธีการต่างๆ เพื่อเพิ่มบรรทัดลายเซ็นโดยโปรแกรม