ホーム › Security.Authentication.Identity › PLSA_GET_CREDENTIALS
PLSA_GET_CREDENTIALS
コールバックシグネチャ
NTSTATUS PLSA_GET_CREDENTIALS(
LUID* LogonId,
DWORD AuthenticationPackage,
DWORD* QueryContext,
BOOLEAN RetrieveAllCredentials,
LSA_STRING* PrimaryKeyValue,
DWORD* PrimaryKeyLength,
LSA_STRING* Credentials
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| LogonId | LUID* | 取得対象の資格情報が属するログオンセッションのセッション ID を格納した LUID 構造体へのポインターです。 |
| AuthenticationPackage | DWORD | 呼び出し元の認証パッケージの認証パッケージ ID です。認証パッケージは、自身の資格情報のみを取得する必要があります。 |
| QueryContext | DWORD* | 複数の資格情報を取得するために、連続した呼び出しをまたいで使用される符号なし LONG 値へのポインターです。この関数を最初に使用するときは、この引数が指す値を 0 にしてください。以降、この値は前回の続きから取得を再開できるように更新されます。そのため、ある問い合わせ操作のすべての資格情報を取得し終えるまで、この値を変更しないでください。 |
| RetrieveAllCredentials | BOOLEAN | 指定したログオンセッションのすべての資格情報を取得するか (TRUE)、指定した PrimaryKeyValue に一致するものだけを取得するか (FALSE) を示します。 |
| PrimaryKeyValue | LSA_STRING* | このパラメーターには 2 つの用途があります。RetrieveAllCredentials パラメーターが FALSE の場合、この文字列には主検索キーとして使用する値を格納します。この場合、対象のログオンセッションに属し、かつ主検索キーがこの値と一致する資格情報のみが取得されます。 RetrieveAllCredentials が TRUE の場合、入力時のこの文字列の値は無視され、取得された各資格情報の主検索キーがこの文字列に返されます。 |
| PrimaryKeyLength | DWORD* | RetrieveAllCredentials パラメーターが TRUE の場合、このパラメーターは PrimaryKeyValue 文字列を格納するために必要な長さを受け取ります。 |
| Credentials | LSA_STRING* | 取得した資格情報を受け取るバッファーへのポインターです。1 回の呼び出しにつき 1 つの資格情報のみが取得されます。資格情報は、この関数が AllocateLsaHeap 関数を呼び出して割り当てたバッファーに返されます。Credentials バッファーが不要になった時点で FreeLsaHeap を呼び出して解放するのは、呼び出し元の責任です。 |
公式ドキュメント
ログオンセッションに関連付けられた資格情報を取得します。
この関数は、Kerberos などの新しい認証パッケージでは使用されません。
戻り値
関数が成功した場合、資格情報が正常に取得されたことを示す NTSTATUS コード STATUS_SUCCESS を返します。
関数が失敗した場合、戻り値は NTSTATUS コードであり、次の値のいずれか、または LSA ポリシー関数の戻り値のいずれかになります。
| 戻り値 | 説明 |
|---|---|
| 利用できる資格情報がこれ以上ありません。最初の呼び出しでこのコードが返された場合は、選択条件に一致する資格情報が存在しません。 | |
| PrimaryKeyValue を受け取るために指定された文字列が、データを格納するのに十分な大きさではありませんでした。この場合、データは取得されず、QueryContext の値も変更されません。そのため、より大きな文字列バッファーを指定して同じ呼び出しを再度実行できます。 | |
| 指定されたログオンセッションが見つかりませんでした。 |
LsaNtStatusToWinError 関数は、NTSTATUS コードを Windows のエラーコードに変換します。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)