บทช่วยสอนนี้จะแสดงวิธีการเซ็นชื่อไฟล์จากบรรทัดคำสั่งของ Windows ด้วยใบรับรองการเซ็นชื่อรหัสและคีย์ส่วนตัวที่เก็บไว้ใน Azure Key Vault ในการปฏิบัติตามคำแนะนำเหล่านี้คุณจะต้อง:
- An บัญชี Azure
- A ห้องนิรภัยที่สำคัญ
- A ใบรับรองการลงนามรหัส ติดตั้งใน Key Vault ของคุณ คุณสามารถ:
- เครื่องมือลงชื่อเข้าใช้ Azure ติดตั้งบนคอมพิวเตอร์ที่คุณจะใช้สำหรับการลงนาม
Azure Sign Tool คืออะไร
เครื่องมือลงชื่อเข้าใช้ Azure เป็นยูทิลิตี้โอเพนซอร์สที่นำเสนอ เครื่องมือเข้าสู่ระบบ ฟังก์ชันสำหรับใบรับรองและคีย์ที่เก็บไว้ใน Azure Key Vault คุณสามารถติดตั้ง Azure Sign Tool ด้วยคำสั่งต่อไปนี้ใน Windows PowerShell (ต้องใช้ .NET SDK):
dotnet tool install --global AzureSignTool
ขั้นตอนที่ 1: ลงทะเบียนแอปพลิเคชัน Azure ใหม่
ขั้นแรกคุณจะต้องลงทะเบียนแอปพลิเคชัน Azure ใหม่เพื่อให้คุณสามารถเชื่อมต่อกับ Key Vault เพื่อลงนามได้
- ลงชื่อเข้าใช้ พอร์ทัล Azure.
- นำทางไปยัง Azure Active Directory. (คลิก บริการอื่น ๆ หากมองไม่เห็นไอคอน Azure Active Directory)
- คลิก การลงทะเบียนแอพในคอลัมน์ด้านซ้าย
- คลิก การลงทะเบียนใหม่.
- ให้ใบสมัครของคุณ Name และคลิกที่ สมัครสมาชิก ปุ่ม. ปล่อยให้การตั้งค่าอื่น ๆ เป็นค่าเริ่มต้น
- ใบสมัครใหม่ของคุณได้รับการลงทะเบียนแล้ว คัดลอกและบันทึกค่าที่แสดงสำหรับ รหัสแอปพลิเคชัน (ไคลเอนต์)เพราะคุณจะต้องใช้ในภายหลัง
- คลิก การยืนยันตัวตน.
- ภายใต้ ตั้งค่าขั้นสูงชุด อนุญาตกระแสไคลเอ็นต์สาธารณะ ไปยัง
Yes
.
- คลิก ลด.
ขั้นตอนที่ 2: สร้างความลับของลูกค้า
จากนั้นสร้างข้อมูลลับของไคลเอ็นต์ซึ่งจะใช้เป็นข้อมูลรับรองเมื่อเซ็นชื่อ
- คลิก ใบรับรองและความลับ ในเมนูด้านซ้ายมือ
- คลิก ความลับของลูกค้าใหม่.
- ให้ความลับแก่ลูกค้าของคุณก รายละเอียดกำหนดวันหมดอายุตามต้องการแล้วคลิกไฟล์ เพิ่ม ปุ่ม
- คัดลอก ความคุ้มค่า ความลับของลูกค้าใหม่ของคุณ ทันที และบันทึกไว้ในที่ปลอดภัย ในครั้งถัดไปที่มีการรีเฟรชหน้าค่านี้จะถูกมาสก์และแก้ไขไม่ได้
ขั้นตอนที่ 3: เปิดใช้งานการเข้าถึงใน Key Vault
ตอนนี้คุณจะต้องเปิดใช้งานการเข้าถึงแอปพลิเคชันของคุณใน Azure Key Vault
- ไปที่ Key Vault ที่มีใบรับรองที่คุณต้องการใช้ในการเซ็นชื่อแล้วคลิก เข้าถึงนโยบาย ลิงค์
- คลิก เพิ่มนโยบายการเข้าถึง.
- ภายใต้ สิทธิ์ที่สำคัญ, เปิดใช้งาน
Sign
.
- ภายใต้ สิทธิ์ในการออกใบรับรอง, เปิดใช้งาน
Get
.
- คลิก ไม่ได้เลือก ลิงก์ภายใต้ เลือกตัวการจากนั้นใช้ช่องค้นหาเพื่อค้นหาและเลือกแอปพลิเคชันที่คุณสร้างในส่วนก่อนหน้า
- คลิก เลือก ปุ่ม
- คลิก เพิ่ม ปุ่ม
- คลิก ลด.
- ตั้งค่านโยบายการเข้าถึงของคุณแล้วและคุณพร้อมที่จะเริ่มเซ็นชื่อไฟล์
ขั้นตอนที่ 4: เซ็นชื่อไฟล์
ในที่สุดคุณก็พร้อมที่จะเซ็นรหัสแล้ว!
- คุณจะต้องมีข้อมูลต่อไปนี้:
- ด้านล่างนี้เป็นคำสั่งตัวอย่างใน PowerShell เพื่อลงนามและประทับเวลาไฟล์ด้วย Azure Sign Tool แทนที่ค่าในตัวพิมพ์ใหญ่ทั้งหมดด้วยข้อมูลจริงของคุณ:
เครื่องหมาย azuresigntool -kvu KEY-VAULT-URI -kvc CERTIFICATE-NAME -kvi APPLICATION-CLIENT-ID -kvs CLIENT-SECRET -tr http://ts.ssl.com/ -td sha256 PATH-TO-EXECUTABLE
หมายเหตุ ตามค่าเริ่มต้น SSL.com รองรับการประทับเวลาจากคีย์ ECDSA
หากคุณพบข้อผิดพลาดนี้:The timestamp certificate does not meet a minimum public key length requirement
คุณควรติดต่อผู้จำหน่ายซอฟต์แวร์ของคุณเพื่ออนุญาตการประทับเวลาจากคีย์ ECDSA
หากผู้จำหน่ายซอฟต์แวร์ของคุณไม่สามารถอนุญาตให้ใช้ตำแหน่งข้อมูลปกติได้ คุณสามารถใช้ตำแหน่งข้อมูลเดิมนี้ได้http://ts.ssl.com/legacy
เพื่อรับการประทับเวลาจาก RSA Timestamping Unit - หากการลงนามสำเร็จคุณจะเห็นผลลัพธ์ดังต่อไปนี้ (การลงนามที่ไม่สำเร็จจะไม่มีผลลัพธ์):
ข้อมูล: AzureSignTool.Program [0] => ไฟล์: test.exe การลงนามไฟล์ข้อมูล test.exe: AzureSignTool.Program [0] => ไฟล์: การลงนาม test.exe เสร็จสมบูรณ์สำหรับไฟล์ test.exe ข้อมูล PS C: \ Users \ Aaron Russell \ Desktop>
- รายละเอียดเกี่ยวกับลายเซ็นดิจิทัลใหม่จะมีอยู่ในคุณสมบัติของไฟล์: