enrollCustomPKCS10
enrollCustomPKCS10 範例會建立自訂 PKCS #10 要求、將它提交至獨立憑證授權單位單位 (CA) ,並在憑證存放區中安裝發行的憑證。 獨立 CA 不需要 Active Directory,也不會使用範本。
位置
當您安裝 Microsoft Windows 軟體發展工具組 (SDK) 時,預設會在 %ProgramFiles%\Microsoft SDKs\Windows\v7.0\Samples\Security\X509 Certificate Enrollment\VC\enrollmentCustomPKCS10 資料夾中安裝範例。
討論
enrollCustomPKCS10 範例:
- 處理命令列引數。 命令列應包含 X.500 憑證主體名稱、電子郵件 (RFC822) 名稱,以及增強金鑰使用方式 (EKU) 物件識別碼 (OID) 。 例如,您可以指定要註冊 user1@example.com 的下列引數:
- 主體名稱:「CN=user1,DC=example,DC=com」
- RFC822 名稱: user1@example.com
- 用戶端驗證 EKU OID:1.3.6.1.5.5.7.3.2
- 建立IX509CertificateRequestPkcs10物件,並藉由指定X509CertificateEnrollmentCoNtext列舉的CoNtextUser值,為終端使用者初始化它。
- 建立 IX500DistinguishedName 物件、使用 物件將主體名稱編碼為位元組陣列,並將陣列新增至 PKCS #10 要求物件。
- 建立IObjectId物件、使用 EKU 物件識別碼 (命令列上指定的 OID) 初始化物件、建立IObjectIds 集合、將新的 IObjectId (EKU) 物件新增至集合、使用集合初始化IX509ExtensionEnhancedKeyUsage物件,並將這個物件新增至要求。
- 建立 IAlternativeName 物件、使用命令列上指定的 RFC822 名稱初始化它、建立 IAlternativeNames 集合、將新的 IAlternativeName (RFC822 name ) 物件新增至集合、建立 IX509ExtensionAlternativeNames 物件,並將這個物件新增至要求。
- 建立 IX509Enrollment 物件、使用 IX509CertificateRequestPkcs10 物件初始化它,並擷取包含 base64 編碼要求的字串。
- 建立 ICertConfig 物件,並用它來擷取包含 CA 組態的字串。
- 建立 CryptoAPI ICertRequest2 物件,並使用它加上包含 CA 組態的字串和憑證要求,以將要求提交至 CA。
- 檢查提交狀態,如果註冊成功,請將憑證安裝至憑證存放區。
相關主題