次の方法で共有


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 は、クライアントのセキュリティ コンテキストを表すクライアント セキュリティ コンテキスト ブロックを初期化します。

ClientSecurityQosContextTrackingMode メンバーが SECURITY_DYNAMIC_TRACKING に設定され、ServerIsRemoteFALSE に設定されている場合、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)