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 반환합니다.

가장할 클라이언트가 현재 자체 클라이언트를 가장하고 다음 중 하나가 true이면 STATUS_BAD_IMPERSONATION_LEVEL 반환합니다.

  • 클라이언트의 가장 수준은 SecurityAnonymous 또는 SecurityIdentification이므로 다른 서버에서 사용하기 위해 클라이언트의 유효 토큰을 전달할 수 없습니다.

  • ServerIsRemote 는 TRUE이고 클라이언트 스레드는 SecurityDelegation 수준 이외의 다른 위치에서 클라이언트를 가장합니다.

설명

SeCreateClientSecurityFromSubjectContext 는 클라이언트의 보안 컨텍스트를 나타내기 위해 클라이언트 보안 컨텍스트 블록을 초기화합니다.

ClientSecurityQosContextTrackingMode 멤버가 SECURITY_DYNAMIC_TRACKING 설정되고 ServerIsRemoteFALSE로 설정된 경우 SeCreateClientSecurityFromSubjectContext는 클라이언트의 유효 토큰에 대한 참조를 사용합니다. 그렇지 않으면 SeCreateClientSecurityFromSubjectContext 는 클라이언트 토큰의 복사본을 만듭니다.

SeCreateClientSecurityFromSubjectContext에 대한 각 호출은 SeDeleteClientSecurity에 대한 후속 호출과 일치해야 합니다.

보안 및 액세스 제어에 대한 자세한 내용은 드라이버 개발자를 위한 Windows 보안 모델 및 Windows SDK의 이러한 topics 대한 설명서를 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 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)