다음을 통해 공유


SeCaptureSubjectContext 함수(ntifs.h)

SeCaptureSubjectContext 액세스 유효성 검사 및 감사를 위해 호출 스레드 컨텍스트의 스냅샷을 만듭니다. SeCaptureSubjectContextEx참조하세요.

통사론

void SeCaptureSubjectContext(
  [out] PSECURITY_SUBJECT_CONTEXT SubjectContext
);

매개 변수

[out] SubjectContext

[out] 불투명 호출자가 할당한 SECURITY_SUBJECT_CONTEXT 구조체에 대한 포인터입니다. SeCaptureSubjectContext 이 구조에서 액세스 토큰에 대한 참조를 포함하는 호출 스레드의 보안 프로필의 스냅샷을 작성합니다. 드라이버는 보안 결정을 내리기 위해 이 구조의 멤버를 수정하거나 직접 액세스하려고 시도해서는 안 됩니다. 대신 권한 부여의 보안 문제를 방지하려면 SeAccessCheck 또는 SePrivilegeCheck호출에서 이 불투명 구조를 전달합니다.

반환 값

없음

발언

액세스 유효성 검사 또는 감사 메시지 생성과 같은 서비스를 수행하기 전에 SeCaptureSubjectContext 호출해야 합니다. 이는 다음과 같은 루틴에 일관된 보안 컨텍스트를 제공하는 데 필요합니다.

  • seQueryAuthenticationIdToken
  • seQuerySubjectContextToken
  • SeQueryInformationToken
  • SePrivilegeCheck

액세스 유효성 검사, 권한 검사 및 감사 생성 서비스가 수행된 후 SeReleaseSubjectContext호출하여 캡처된 컨텍스트를 최대한 빨리 해제합니다.

SeCaptureSubjectContext 호출 스레드의 보안 컨텍스트의 스냅샷을 가져오는 동안 필요에 따라 토큰을 잠급니다.

반환할 때 액세스 토큰에 대한 참조는 subjectContext 가리키는 구조에 포함됩니다. 해당 구조의 내용이 변경 될 수 있습니다. 이를 방지하려면 SeLockSubjectContext 호출하여 기본 액세스 토큰 및 구조와 연결된 모든 가장 토큰을 잠급니다. 예를 들어 이전에 나열된 것과 같은 동일한 보안 컨텍스트에서 토큰 정보를 두 번 이상 쿼리하는 루틴을 사용하는 경우 SeLockSubjectContext 주체 컨텍스트를 잠가 일관된 결과를 얻습니다.

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

요구 사항

요구
지원되는 최소 클라이언트 Windows 2000
대상 플랫폼 보편적
헤더 ntifs.h(Ntifs.h, Wdm.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

참고 항목

SeCaptureSubjectContextEx

SECURITY_SUBJECT_CONTEXT

SeLockSubjectContext

SePrivilegeCheck

seQueryAuthenticationIdToken

SeQueryInformationToken

seQuerySubjectContextToken

SeReleaseSubjectContext

SeUnlockSubjectContext