共用方式為


ICspInformation::GetDefaultSecurityDescriptor 方法 (certenroll.h)

GetDefaultSecurityDescriptor 方法會擷取預設私鑰安全性描述元。

語法

HRESULT GetDefaultSecurityDescriptor(
  [in]  VARIANT_BOOL MachineContext,
  [out] BSTR         *pValue
);

參數

[in] MachineContext

VARIANT_BOOL變數,指出是否要擷取計算機或使用者的安全性描述元。 為計算機指定 VARIANT_TRUE ,併為使用者指定 VARIANT_FALSE

[out] pValue

包含安全性描述元的 BSTR 變數指標。

傳回值

如果函式成功,函式會傳回 S_OK

如果函式失敗,它會傳回 HRESULT 值,指出錯誤。 可能的值包括 (但不限於) 下表中的這些值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值

傳回碼/值 Description
CERTSRV_E_PROPERTY_EMPTY
找不到屬性值。
NTE_BAD_TYPE
密碼編譯提供者不支援安全性描述元。
NTE_NOT_FOUND
密碼編譯提供者不支援安全性描述元。
NTE_BAD_KEY_STATE
密碼編譯提供者不支援安全性描述元。

備註

若要使用安全性描述元,您必須呼叫隨附於 Microsoft 授權 API 的 ConvertStringSecurityDescriptorToSecurityDescriptor 函式,並指定 GetDefaultSecurityDescriptor 方法所傳回的字串。 函式會傳回 SECURITY_DESCRIPTOR 結構的指標。

預設安全性描述元是用來以下欄方式定義電腦和使用者的私鑰存取權:

  • 根據預設,只有在 LocalSystem 帳戶下執行的本機系統管理員和服務才能存取與電腦帳戶相關聯的私鑰。
  • 當提供者將使用者的私鑰儲存在使用者配置檔的加密檔案中時,它會使用安全性描述元來設定檔案的訪問許可權。

這個方法會擷取預設的安全性描述元,這個描述項將會與指定的 MachineContext 參數相關聯,並在建立新的私鑰時擷取目前的提供者。 您可以使用預設描述元來建立自訂描述元。 當與計算機內容憑證相關聯的私鑰必須由在 LocalSystem 帳戶以外的帳戶下執行的服務使用時,通常會建立自定義描述元。

某些密碼編譯提供者不支援安全性描述元。 範例包括智慧卡和硬體安全性模組 (HSM) 提供者。

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 certenroll.h
Dll CertEnroll.dll

另請參閱

ICspInformation