SeCreateClientSecurityFromSubjectContext 関数 (ntifs.h)
SeCreateClientSecurityFromSubjectContext ルーチンは、セキュリティ サブジェクト コンテキストのアクセス トークンを取得し、その結果を使用して、SeImpersonateClientEx を呼び出すために必要な情報を使用してセキュリティ クライアント コンテキストを初期化します。
構文
NTSTATUS SeCreateClientSecurityFromSubjectContext(
[in] PSECURITY_SUBJECT_CONTEXT SubjectContext,
[in] PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos,
[in] BOOLEAN ServerIsRemote,
[out] PSECURITY_CLIENT_CONTEXT ClientContext
);
パラメーター
[in] SubjectContext
偽装されるクライアントのセキュリティサブジェクトコンテキストへのポインター。
[in] ClientSecurityQos
実行する偽装の形式を示す呼び出し元によって割り当てられたSECURITY_QUALITY_OF_SERVICE構造体へのポインター。
[in] ServerIsRemote
クライアントの要求のサーバーがリモートの場合は TRUE に設定します。
[out] ClientContext
初期化する呼び出し元によって割り当てられたSECURITY_CLIENT_CONTEXT構造体へのポインター。
戻り値
SeCreateClientSecurityFromSubjectContext は、 セキュリティ クライアント コンテキストを正常に初期化したときにSTATUS_SUCCESSを返します。
これは、偽装するクライアントが現在独自のクライアントを偽装している場合にSTATUS_BAD_IMPERSONATION_LEVELを返します。次のいずれかが当てはまります。
偽装レベルが SecurityAnonymous または SecurityIdentification であるため、クライアントの有効なトークンを別のサーバーで使用するために渡すことはできません。
ServerIsRemote は TRUE で、クライアント スレッドは SecurityDelegation レベル以外でクライアントを偽装しています。
注釈
SeCreateClientSecurityFromSubjectContext は、クライアントのセキュリティ コンテキストを表すクライアント セキュリティ コンテキスト ブロックを初期化します。
ClientSecurityQos の ContextTrackingMode メンバーが SECURITY_DYNAMIC_TRACKING に設定され、ServerIsRemote が FALSE に設定されている場合、SeCreateClientSecurityFromSubjectContext はクライアントの有効なトークンへの参照を使用します。 それ以外の場合、 SeCreateClientSecurityFromSubjectContext は クライアントのトークンのコピーを作成します。
SeCreateClientSecurityFromSubjectContext の各呼び出しは、SeDeleteClientSecurity の後続の呼び出しと一致する必要があります。
セキュリティとアクセス制御の詳細については、 ドライバー開発者向けの Windows セキュリティ モデル と、Windows SDK のこれらのトピックに関するドキュメントを参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 |
対象プラットフォーム | ユニバーサル |
Header | ntifs.h (Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
こちらもご覧ください
[SECURITY_SUBJECT_CONTEXT/(/windows-hardware/drivers/kernel/eprocess##security_subject_context)
[SeDeleteClientSecurity/(nf-ntifs-sedeleteclientsecurity.md)
[SeImpersonateClientEx/(nf-ntifs-seimpersonateclientex.md)