Score:0

Windows ไม่สร้างการกำหนด "คอนเทนเนอร์คีย์" เมื่อเพิ่มใบรับรองที่เชื่อมโยงกับ Cavium (AWS CloudHSMv2)

ธง cn

ฉันมีระบบ windows สองระบบที่เชื่อมโยงกับ AWS CloudHSM v2 (cavium HSM) ประการแรก ฉันสร้าง CSR และยอมรับ/เพิ่มใบรับรองที่ซื้อด้วย CSR นั้น ฉันสามารถลงชื่อและคีย์ส่วนตัวถูกดึงอย่างถูกต้องจาก HSM ผ่านคอนเทนเนอร์คีย์

การลงนามอื่นคือระบบการลงนามที่ใช้งานจริงของฉัน และมันทำงานได้อย่างถูกต้องกับใบรับรองที่มีอยู่ แต่เมื่อฉันพยายามเพิ่มใบรับรองใหม่ กลับไม่ใช่ ที่เก็บกุญแจ กำลังตั้งค่า ฉันเคยต้องเรียกใช้กระบวนการซ่อมแซม แต่ในกรณีนี้ ฉันไม่มี ID ที่จะให้ไฟล์

  1. ตรวจสอบสิทธิ์ "\Program Files\Amazon\CloudHSM\tools\set_cloudhsm_credentials.exe" --user REDACTED --password "..."
  2. เพิ่มใบรับรอง certutil - เพิ่มที่เก็บ my-new-cert.crt ของฉัน
  3. ทิ้งรายละเอียดร้านค้า ใบรับรอง - จัดเก็บของฉัน > cert_store_details.txt
    หมายเลขซีเรียล: REDACTED
    ผู้ออก: CN=DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1, O=DigiCert, Inc., C=US
     ก่อน: 25/1/2565 00:00 น
     NotAfter: 25/1/2566 23:59 น
    เรื่อง: CN=REDACTED, C=US, SERIALNUMBER=REDACTED, OID.1.3.6.1.4.1.311.60.2.1.2=Delaware, OID.1.3.6.1.4.1.311.60.2.1.3=US, OID.2.5 4.15=องค์กรเอกชน
    ใบรับรองที่ไม่ใช่รูท
    ใบรับรองแฮช (sha1): ปกปิด
    ไม่มีข้อมูลผู้ให้บริการที่สำคัญ
    ไม่พบใบรับรองและคีย์ส่วนตัวสำหรับการถอดรหัส

โดยปกติฉันจะสร้าง repair.txt แบบนั้น ที่เก็บกุญแจ รหัสระหว่าง = และ & บน คอนเทนเนอร์ อย่างไรก็ตาม ฉันไม่มีหนึ่งในนั้น ดังนั้นฉันโชคไม่ดี

        [คุณสมบัติ]
        11 = "" ; เพิ่มคุณสมบัติของชื่อที่จำง่าย
        2 = "{ข้อความ}" ; เพิ่มคุณสมบัติข้อมูลผู้ให้บริการหลัก
        _continue_="คอนเทนเนอร์=&"
        _continue_="Provider=ผู้ให้บริการที่เก็บคีย์ Cavium&"
        _continue_="ธง=0&"
        _continue_="KeySpec=2"    

ถ้าฉันแค่เรียกใช้การซ่อมแซม certutil - ซ่อมแซม "ข้อมูลปกปิด" ของฉัน จากนั้นฉันจะถูกขอสมาร์ทการ์ด โอ้และเครื่องนี้เป็น Windows Core 2016 (ดังนั้นจึงไม่มี UI หรือ UI ที่จำกัด)

Score:0
ธง cn

ตกลง นี่คือคำตอบจากฝ่ายสนับสนุนของ AWS หวังว่าพวกเขาจะเพิ่มคำตอบนั้นลงในเอกสาร

  1. กำหนดตัวจัดการไฟล์ CloudHSM สำหรับคีย์ส่วนตัวและคีย์สาธารณะ (คุณสามารถทำได้โดยการทิ้งโมดูลัสจากใบรับรองและใช้เครื่องมือ hsm เพื่อค้นหาคีย์ อย่างไรก็ตาม ฉันรายงานเกี่ยวกับการจัดการก่อนที่จะสร้าง CSR ของฉัน และหลังจากนั้นฉันจึงสามารถเพิ่มได้ ไปยังเอกสารที่ปลอดภัยของฉัน - ดังนั้นฉันจึงไม่จำเป็นต้องทำเช่นนั้น

  2. สร้างคอนเทนเนอร์ KSP

C:\Program Files\Amazon\CloudHSM>import_key.exe -จาก HSM 
  -privateKeyHandle <การจัดการคีย์ส่วนตัว> -publicKeyHandle <การจัดการคีย์สาธารณะ>

สิ่งนี้ควรแสดงผลบางอย่างที่คล้ายกับ: "แสดง 1 คู่คีย์ใน Cavium Key Storage Provider"

หากคุณได้รับข้อความแสดงข้อผิดพลาด "n3fips_password is not set" ตรวจสอบให้แน่ใจว่าได้ตั้งค่าข้อมูลรับรองการเข้าสู่ระบบสำหรับ HSM ในระบบของคุณตามรายละเอียดใน [4] ด้านล่าง

  1. รันคำสั่งต่อไปนี้เพื่อตรวจสอบว่าคอนเทนเนอร์คีย์ใหม่อยู่ในผู้ให้บริการที่เก็บคีย์ของคุณ:
C:\Program Files\Amazon\CloudHSM>certutil -key -csp "ผู้ให้บริการที่เก็บคีย์ Cavium"

"ผู้ให้บริการพื้นที่จัดเก็บคีย์ Cavius" อาจไม่ใช่ชื่อที่กำหนดให้กับที่เก็บคีย์ของคุณ ชื่อนี้ได้รับจากเอาต์พุตที่สร้างจากขั้นตอนแรก

หากสร้างคอนเทนเนอร์สำเร็จ ผลลัพธ์ควรคล้ายกับต่อไปนี้:

ผู้ให้บริการพื้นที่จัดเก็บ Cavium Key:
  <ชื่อคอนเทนเนอร์คีย์>
  อาร์.เอส.เอ


CertUtil: คำสั่ง -key เสร็จสมบูรณ์
  1. สร้าง repair.txt เพื่อให้เราสามารถอัปเดตที่เก็บใบรับรองเพื่อใช้คอนเทนเนอร์
[คุณสมบัติ]
11 = "" ; เพิ่มคุณสมบัติของชื่อที่จำง่าย
2 = "{ข้อความ}" ; เพิ่มคุณสมบัติข้อมูลผู้ให้บริการหลัก
_continue_="Container=<ชื่อคอนเทนเนอร์หลัก>&"
_continue_="Provider=ผู้ให้บริการที่เก็บคีย์ Cavium&"
_continue_="ธง=0&"
_continue_="KeySpec=2"
  1. ตรวจสอบให้แน่ใจว่า CloudHSM Client daemon ยังคงทำงานอยู่ และใช้ certutil กริยา -repairstore เพื่ออัปเดตหมายเลขซีเรียลของใบรับรอง คำสั่งนี้จะมีลักษณะคล้ายกับต่อไปนี้:
certutil -repairstore <หมายเลขซีเรียลใบรับรอง> repair.txt ของฉัน
  1. หลังจากซ่อมแซมที่เก็บใบรับรองแล้ว โปรดเรียกใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่าใบรับรองเชื่อมโยงกับคอนเทนเนอร์คีย์ใหม่อย่างถูกต้องแล้ว:
ใบรับรอง - จัดเก็บไฟล์

คุณจะคาดหวังสิ่งนี้

================ ใบรับรอง 0 ================
หมายเลขซีเรียล: <หมายเลขซีเรียลใบรับรอง>
ผู้ออก: CN=MYRootCA
 ก่อน: 2/5/2563 13:38 น
 NotAfter: 2/5/2564 13:48 น
เรื่อง: CN=www.mydomain.com, OU=การจัดการใบรับรอง, O=เทคโนโลยีสารสนเทศ, L=ฮุสตัน, S=เท็กซัส, C=US
ใบรับรองที่ไม่ใช่รูท
ใบรับรอง Hash(sha1): 5a...24
  คีย์คอนเทนเนอร์ = CNGRSAPriv-...ง
  ผู้ให้บริการ = ผู้ให้บริการที่เก็บคีย์ Cavium
รหัสส่วนตัวไม่สามารถส่งออกได้
ผ่านการทดสอบการเข้ารหัส
CertUtil: คำสั่ง -store เสร็จสมบูรณ์

ถ้า คีย์คอนเทนเนอร์ = CNGRSAPriv-...ง แสดงคอนเทนเนอร์ที่เหมาะสม จากนั้นคุณจะรู้ว่าความสัมพันธ์ของใบรับรอง KSP นั้นดี

ถ้าคุณเห็น รหัสส่วนตัวไม่สามารถส่งออกได้ และ ผ่านการทดสอบการเข้ารหัส คุณรู้ว่าคุณกำลังใช้ตัวจัดการไฟล์ที่ถูกต้อง

หากคุณใช้ signtool คุณจะต้องเพิ่ม /เอสเอ็ม เพื่อบังคับให้ใช้ที่จัดเก็บเครื่องและไม่ใช่ที่จัดเก็บของผู้ใช้เนื่องจากกระบวนการข้างต้นสร้างคอนเทนเนอร์ที่เชื่อมโยงกับที่เก็บเครื่อง ไม่มีตัวเลือกเกี่ยวกับสิ่งนั้น

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา