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

PLSA_OPEN_SAM_USER

コールバック

シグネチャ

NTSTATUS PLSA_OPEN_SAM_USER(
    SECURITY_STRING* Name,
    SECPKG_NAME_TYPE NameType,
    SECURITY_STRING* Prefix,
    BOOLEAN AllowGuest,
    DWORD Reserved,
    void** UserHandle
);

パラメーター

フィールド型説明
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 はオブジェクトの識別名です。詳細については、「解説」を参照してください。
PrefixSECURITY_STRING*NameType に SecNameAlternateId を指定した名前と共に使用するプレフィックスを指定する UNICODE_STRING 構造体へのポインターです。
AllowGuestBOOLEAN

SAM アカウントが見つからない場合に Guest アカウントを使用するかどうかを指定します。このパラメーターには、次のいずれかの値を指定できます。

値 意味
FALSE
ユーザーが見つからない場合、OpenSamUser 関数の呼び出しは失敗します。
TRUE
ユーザーが見つからず、Guest アカウントが有効になっている場合は、Guest アカウントが使用されます。
ReservedDWORD予約されています。ゼロを指定してください。
UserHandlevoid**ユーザーアカウントへのハンドルを受け取るポインターへのポインターです。

公式ドキュメント

Security Accounts Manager (SAM) データベース内のユーザーアカウントへのハンドルを取得します。

戻り値

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

関数が失敗した場合、戻り値は失敗の理由を示す次のいずれかの NTSTATUS エラーコードです。

リターンコード 説明
STATUS_INVALID_PARAMETER
NameType が SecNameAlternateId で、かつ Prefix が NULL です。
STATUS_NO_SUCH_USER
SAM アカウントが見つかりませんでした。

解説(Remarks)

UserHandle パラメーターで受け取ったハンドルを閉じるには、 CloseSamUser 関数を呼び出します。

ユーザーの識別名は、そのユーザーを表す Active Directory オブジェクトの名前、ドメイン、および完全なパスを示します。

OpenSamUser 関数へのポインターは、 SpInitialize 関数が受け取る LSA_SECPKG_FUNCTION_TABLE 構造体で利用できます。

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