Share via


ICertificateEnrollmentServerSetup::Install 方法 (casetup.h)

Install 方法會安裝由 ICertificateEnrollmentServerSetup 物件所設定的憑證註冊 Web 服務 (CES) 。

Syntax

HRESULT Install();

傳回值

傳回碼 Description
E_UNEXPECTED
為事件追蹤目錄或應用程式目錄指定的名稱已經存在,但代表檔案而非目錄。
HRESULT_FROM_WIN32 (ERROR_ALREADY_EXISTS)
CES 應用程式已經存在。 如需詳細資訊,請參閱。
HRESULT_FROM_WIN32 (ERROR_INVALID_STATE)
尚未初始化 ICertificateEnrollmentServerSetup 物件。

ErrorString 屬性值會設定為 「安裝程序物件尚未初始化。 請使用 InitializeInstallDefaults 方法初始化安裝程式物件。」

備註

此函式會執行下列動作:

  • 初始化 Windows Management Instrumentation (WMI) 。
  • 驗證具有相同名稱的應用程式不存在,以驗證 CES 組態。 應用程式名稱是 CES URL 的一部分,URL 的格式為 “https:// computerDNSname/SanitizedCAShortName_ces_AuthenticationType/service.svc/ces”。 應用程式名稱是由 “SanitizedCAShortName_ces_AuthenticationType” 所組成,其中 AuthenticationType 可以是下列其中一項:
    • Kerberos
    • usernamepassword
    • 憑證 (certificate)
    注意 如果具有相同名稱的應用程式存在, ErrorString 屬性會設定為 「安裝程式無法新增此角色服務,因為它已存在於默認網站中。 請移除現有的角色服務,或選取不同的證書頒發機構單位 (CA) 或驗證類型。」
     
  • 建立 %windir%\systemdata\ces\SanitizedCAShortName_ces_AuthenticationType 應用程式目錄。
    注意 如果指定的名稱已以目錄的形式存在,但如果指定的名稱存在為檔案,或發生其他錯誤,此方法會傳回失敗 HRESULT ,並將 ErrorString 屬性設定為 「無法建立目錄 %1」。」
     
  • 建立 %windir%\systemdata\ces\SanitizedCAShortName_ces_AuthenticationType\Traces 事件追蹤目錄。
  • 建立 Web.config 和 Service.svc 檔案,並將其寫入應用程式目錄。 如果檔案已經存在,則會覆寫這些檔案。
  • 建立 IIS 應用程式集區。 根據預設,集區會在 ApplicationPoolIdentity 帳戶下執行。 若要使用不同的身分識別,您必須在安裝 CES 角色之後手動變更。
  • 在預設網站中建立應用程式。
  • 建立安全 (HTTPs) 系結至埠 443,並在設定期間指定憑證哈希時設定憑證哈希。
  • 如果您呼叫 SetProperty 並在 pPropertyValue 自變數中指定 X509AuthCertificate 或 X509AuthUsername,請將 IIS 驗證設定為匿名。 如果您呼叫 SetProperty 並指定 X509AuthKerberos,請將驗證設定為 Windows。
  • 根據設定期間所選擇的驗證類型來設定 SSL 旗標。 所有驗證類型的預設旗標都是SSL (需要安全通道) ,SSL_128 (128位加密) 。 此外,如果您指定 X509AuthCertificate,則會設定SSL_REQUIRE_CERT和SSL_NEGOTIATE_CERT旗標。
  • 新增事件追蹤目錄的讀取和寫入存取權。
  • 匯報 Active Directory 中 Deleted Objects 容器的安全性描述元,以允許計算機和/或應用程式集區存取。 這可讓 CES 在刪除相關的 Active Directory 物件時通知證書頒發機構單位。 如果 Active Directory 位於域控制器上,則允許計算機和應用程式集區存取已刪除的物件容器。 如果 Active Directory 不在域控制器上,則只允許電腦存取。
    注意 如果存取 Deleted Objects 容器失敗,此方法會傳回失敗 HRESULT ,並將 ErrorString 屬性設定為 「安裝程式無法授與 “”Deleted Objects“ 容器的憑證註冊原則 Web 服務帳戶清單許可權」容器。 Web 服務將無法偵測刪除 Active Directory 物件,例如證書範本。 若要完成安裝程式,Domain Admins 群組的成員必須手動為 Active Directory 網域服務 (AD DS) 中“Deleted Objects” 容器的憑證註冊原則 Web 服務帳戶列表許可權。
     

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 casetup.h
Dll Certocm.dll

另請參閱

ICertificateEnrollmentServerSetup