LsaRetrievePrivateData 関数 (ntsecapi.h)

汎用データの暗号化と暗号化解除には LSA プライベート データ関数を使用しないでください。 代わりに、 CryptProtectData 関数と CryptUnprotectData 関数を 使用します。 「シークレット オブジェクト データ モデル」に記載されている LSA シークレットを操作する必要がある場合にのみ、LSA プライベート データ関数を使用します

構文

NTSTATUS LsaRetrievePrivateData(
  [in]  LSA_HANDLE          PolicyHandle,
  [in]  PLSA_UNICODE_STRING KeyName,
  [out] PLSA_UNICODE_STRING *PrivateData
);

パラメーター

[in] PolicyHandle

Policy オブジェクトへのハンドル。 ハンドルには、POLICY_GET_PRIVATE_INFORMATIONアクセス権が必要です。 詳細については、「 ポリシー オブジェクト ハンドルを開く」を参照してください。

[in] KeyName

プライベート データが格納 されているキーの名前を含むLSA_UNICODE_STRING構造体へのポインター。

特殊化されたオブジェクトを作成するには、キー名に次のいずれかのプレフィックスを追加します。

Prefix 説明
L$
ローカル オブジェクトの場合。
G$
グローバル オブジェクトの場合。
M$
コンピューター オブジェクトの場合。
 

これらの特殊化された型のいずれかを作成しない場合は、キー名プレフィックスを指定する必要はありません。 詳細については、「 プライベート データ オブジェクト」を参照してください。

[out] PrivateData

プライベート データを含む LSA_UNICODE_STRING 構造体へのポインターを受け取る変数へのポインター。

情報が不要になったら、返されたポインターを LsaFreeMemory に渡します。

戻り値

関数が成功した場合、関数はSTATUS_SUCCESSを返します。

関数が失敗した場合、NTSTATUS 値が返されます。 NTSTATUS 値は、次の値または LSA ポリシー関数の戻り値のいずれかになります。

リターン コード 説明
STATUS_OBJECT_NAME_NOT_FOUND
KeyName パラメーターで指定された名前の下にプライベート データは格納されません。
 

LsaNtStatusToWinError 関数を使用して、NTSTATUS 値を Windows エラー コードに変換できます。

注釈

"管理者として" このプロセスを実行する必要があります。または、ERROR_ACCESS_DENIEDで呼び出しが失敗します。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー ntsecapi.h
Library Advapi32.lib
[DLL] Advapi32.dll

こちらもご覧ください

LSA_UNICODE_STRING

LsaFreeMemory

LsaStorePrivateData