Win32 API 日本語リファレンス
ホーム › Security.Authentication.Identity › PLSA_GET_AUTH_DATA_FOR_USER

PLSA_GET_AUTH_DATA_FOR_USER

コールバック

シグネチャ

NTSTATUS PLSA_GET_AUTH_DATA_FOR_USER(
    SECURITY_STRING* Name,
    SECPKG_NAME_TYPE NameType,
    SECURITY_STRING* Prefix,
    BYTE** UserAuthData,
    DWORD* UserAuthDataSize,
    LSA_UNICODE_STRING* UserFlatName
);

パラメーター

フィールド型説明
NameSECURITY_STRING*SAM アカウントの名前を指定する UNICODE_STRING 構造体へのポインターです。
NameTypeSECPKG_NAME_TYPE

Name に指定されたアカウント名の種類を示す SECPKG_NAME_TYPE 列挙値です。このパラメーターには、次のいずれかの値を指定できます。

値 意味
SecNameSamCompatible
Name は SAM と互換性のある形式です。SAM 互換形式の名前の例は "ExampleDomain\Username" です。
SecNameAlternateId
Name は SAM アカウントの AltSecId プロパティに格納されている名前です。この値を使用する場合は、Prefix パラメーターに値を指定する必要があります。
SecNameFlat
Name はフラットな ユーザープリンシパル名 (UPN) 形式のアカウント名です。
SecNameDN
Name はオブジェクトの識別名 (DN) です。詳細については、「解説」を参照してください。
PrefixSECURITY_STRING*SecNameAlternateId の NameType で指定された名前に使用するプレフィックスを格納する UNICODE_STRING 構造体へのポインターです。
UserAuthDataBYTE**取得されたデータのアドレスを受け取るポインターです。
UserAuthDataSizeDWORD*取得されたデータのサイズを受け取る ULONG へのポインターです。
UserFlatNameLSA_UNICODE_STRING*該当する場合に UPN を受け取る UNICODE_STRING 構造体へのポインターです。

公式ドキュメント

GetAuthDataForUser 関数は、Security Accounts Manager (SAM) データベースからユーザーの認証情報を取得し、 ConvertAuthDataToToken 関数に適した形式にして返します。

戻り値

関数が成功した場合、戻り値は STATUS_SUCCESS です。

関数が失敗した場合、戻り値は失敗の理由を示す NTSTATUS コードです。

解説(Remarks)

GetAuthDataForUser 関数は、 OpenSamUser、 GetUserAuthData、 CloseSamUser の各関数を 1 回の呼び出しにまとめたものです。

これらの関数へのポインターは、 SpInitialize 関数が受け取る LSA_SECPKG_FUNCTION_TABLE 構造体に格納されています。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)