다음을 통해 공유


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 설정되고 ServerIsRemote FALSE 설정된 경우 SeCreateClientSecurityFromSubjectContext 클라이언트의 유효 토큰에 대한 참조를 사용합니다. 그렇지 SeCreateClientSecurityFromSubjectContext 클라이언트 토큰의 복사본을 만듭니다.

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

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

요구 사항

요구
지원되는 최소 클라이언트 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)