AuthzAccessCheck 함수(authz.h)
AuthzAccessCheck 함수는 지정된 보안 설명자 집합에 대해 클라이언트에 부여할 수 있는 액세스 비트를 결정합니다. AUTHZ_ACCESS_REPLY 구조체는 부여된 액세스 마스크 및 오류 상태 배열을 반환합니다. 필요에 따라 항상 부여되는 액세스 마스크를 캐시할 수 있으며 캐시된 값에 대한 핸들이 반환됩니다.
구문
AUTHZAPI BOOL AuthzAccessCheck(
[in] DWORD Flags,
[in] AUTHZ_CLIENT_CONTEXT_HANDLE hAuthzClientContext,
[in] PAUTHZ_ACCESS_REQUEST pRequest,
[in, optional] AUTHZ_AUDIT_EVENT_HANDLE hAuditEvent,
[in] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in, optional] PSECURITY_DESCRIPTOR *OptionalSecurityDescriptorArray,
[in, optional] DWORD OptionalSecurityDescriptorCount,
[in, out] PAUTHZ_ACCESS_REPLY pReply,
[out, optional] PAUTHZ_ACCESS_CHECK_RESULTS_HANDLE phAccessCheckResults
);
매개 변수
[in] Flags
보안 설명자를 복사하는 방법을 지정하는 DWORD 값입니다. 이 매개 변수는 다음 값 중 하나일 수 있습니다.
Windows 8 및 Windows Server 2012 시작하여 원격 컨텍스트 핸들에서 이 함수를 호출할 때 상위 16비트 는 0이어야 합니다.
값 | 의미 |
---|---|
|
phAccessCheckResults가 NULL이 아닌 경우 보안 설명자의 심층 복사본이 phAccessCheckResults에서 참조하는 핸들에 복사됩니다. |
|
보안 설명자의 심층 복사본이 수행되지 않습니다. 호출 애플리케이션은 phAccessCheckResults에서 AUTHZ_ACCESS_CHECK_RESULTS_HANDLE 핸들의 주소를 전달해야 합니다. AuthzAccessCheck 함수는 이 핸들을 AuthzCachedAccessCheck에 대한 후속 호출 중에 유효한 상태로 유지해야 하는 보안 설명자로 설정합니다. |
[in] hAuthzClientContext
클라이언트를 나타내는 구조체에 대한 핸들입니다.
Windows 8 및 Windows Server 2012 클라이언트 컨텍스트는 로컬 또는 원격일 수 있습니다.
[in] pRequest
원하는 액세스 마스크, 보안 주체 SID(자체 보안 식별자) 및 개체 유형 목록 구조(있는 경우)를 지정하는 AUTHZ_ACCESS_REQUEST 구조체에 대한 포인터입니다.
[in, optional] hAuditEvent
개체별 감사 정보를 포함하는 구조체입니다. 이 매개 변수의 값이 null이 아닌 경우 감사가 자동으로 요청됩니다. 정적 감사 정보는 리소스 관리자 구조에서 읽습니다.
Windows 8 및 Windows Server 2012 시작하여 이 함수를 원격 컨텍스트 핸들과 함께 사용하는 경우 매개 변수의 값은 NULL이어야 합니다.
[in] pSecurityDescriptor
액세스 검사에 사용할 SECURITY_DESCRIPTOR 구조체에 대한 포인터입니다. 개체의 소유자 SID는 이 보안 설명자에서 선택됩니다. 이 보안 설명자의 NULL DACL(임의 액세스 제어 목록)은 전체 개체에 대한 NULL DACL을 나타냅니다. 보안 설명자에 OWNER 및 DACL 정보가 포함되어 있는지 확인하거나 오류 코드 87 또는 "잘못된 매개 변수" 메시지가 생성됩니다.
[in, optional] OptionalSecurityDescriptorArray
SECURITY_DESCRIPTOR 구조체의 배열입니다. 이러한 보안 설명자의 NULL ACL(액세스 제어 목록)은 빈 ACL로 처리됩니다. 전체 개체에 대한 ACL은 모든 ACL의 논리적 연결입니다.
[in, optional] OptionalSecurityDescriptorCount
기본 보안 설명자를 포함하지 않는 보안 설명자의 수입니다.
[in, out] pReply
액세스 검사 결과를 포함하는 AUTHZ_ACCESS_REPLY 구조체에 대한 포인터입니다. AuthzAccessCheck 함수를 호출하기 전에 애플리케이션은 pReply에서 참조하는 AUTHZ_ACCESS_REPLY 구조체의 GrantedAccessMask 및 SaclEvaluationResults 멤버에 대한 메모리를 할당해야 합니다.
[out, optional] phAccessCheckResults
액세스 검사 캐시된 결과에 대한 핸들을 반환하는 포인터입니다. 이 매개 변수 값이 null이 아닌 경우 이 액세스 검사 호출의 결과가 캐시됩니다. 그러면 MAXIMUM_ALLOWED 검사 발생합니다.
Windows 8 및 Windows Server 2012 시작하여 이 함수를 원격 컨텍스트 핸들과 함께 사용하는 경우 매개 변수의 값은 NULL이어야 합니다.
반환 값
함수가 성공하면 함수는 TRUE를 반환 합니다.
함수가 실패하면 FALSE를 반환합니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
pSecurityDescriptor 매개 변수가 가리키는 SECURITY_DESCRIPTOR 구조체의 DACL에 ACE(콜백 액세스 제어 항목)가 포함된 경우 AuthzAccessCheckCallback 콜백 함수가 호출됩니다.
조건식에서 참조하는 경우 보안 특성 변수가 클라이언트 컨텍스트에 있어야 합니다. 그렇지 않으면 참조하는 조건식 용어가 알 수 없음으로 평가됩니다. 자세한 내용은 조건부 ACE에 대한 보안 설명자 정의 언어 항목을 참조하세요.
자세한 내용은 AccessCheck 작동 방식 및 중앙 집중식 권한 부여 정책 개요를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | authz.h |
라이브러리 | Authz.lib |
DLL | Authz.dll |
재배포 가능 파일 | Windows XP의 Windows Server 2003 관리 도구 팩 |