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 Authorization API に含まれる ConvertStringSecurityDescriptorToSecurityDescriptor 関数を呼び出し、 GetDefaultSecurityDescriptor メソッドによって返される文字列を指定する必要があります。 関数は、 SECURITY_DESCRIPTOR 構造体へのポインターを返します。

既定のセキュリティ記述子は、次の方法でコンピューターとユーザーの秘密キーへのアクセスを定義するために使用されます。

  • 既定では、LocalSystem アカウントで実行されているローカル管理者とサービスのみが、コンピューター アカウントに関連付けられている秘密キーにアクセスできます。
  • プロバイダーは、ユーザープロファイルの暗号化されたファイルにユーザーの秘密キーを格納すると、セキュリティ記述子を使用してファイルへのアクセス許可を設定します。

このメソッドは、指定された MachineContext パラメーターと、新しい秘密キーが作成された場合に現在のプロバイダーに関連付けられる既定のセキュリティ記述子を取得します。 既定の記述子を使用して、カスタム記述子を作成できます。 カスタム記述子は、通常、LocalSystem アカウント以外のアカウントで実行されているサービスで、コンピューター コンテキスト証明書に関連付けられている秘密キーを使用する必要がある場合に作成されます。

一部の暗号化プロバイダーでは、セキュリティ記述子がサポートされていません。 たとえば、スマート カードとハードウェア セキュリティ モジュール (HSM) プロバイダーなどがあります。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー certenroll.h
[DLL] CertEnroll.dll

こちらもご覧ください

ICspInformation