Window Station 보안 및 액세스 권한

보안을 사용하면 창 스테이션 개체에 대한 액세스를 제어할 수 있습니다. 보안에 대한 자세한 내용은 Access-Control 모델을 참조하세요.

CreateWindowStation 함수를 호출할 때 창 스테이션 개체에 대한 보안 설명자를 지정할 수 있습니다. NULL을 지정하는 경우 창 스테이션은 기본 보안 설명자를 가져옵니다. 창 스테이션에 대한 기본 보안 설명자의 ACL은 작성자의 기본 또는 가장 토큰에서 가져옵니다.

창 스테이션 개체의 보안 설명자를 얻거나 설정하려면 GetSecurityInfoSetSecurityInfo 함수를 호출합니다.

OpenWindowStation 함수를 호출할 때 시스템은 요청된 액세스 권한을 개체의 보안 설명자에 대해 확인합니다.

창 스테이션 개체에 대한 유효한 액세스 권한에는 표준 액세스 권한 및 일부 개체별 액세스 권한이 포함됩니다. 다음 표에서는 모든 개체에서 사용하는 표준 액세스 권한을 나열합니다.

의미
DELETE(0x00010000L) 개체를 삭제하는 데 필요합니다.
READ_CONTROL(0x00020000L) SACL의 정보를 포함하지 않고 개체의 보안 설명자에서 정보를 읽는 데 필요합니다. SACL을 읽거나 쓰려면 ACCESS_SYSTEM_SECURITY 액세스 권한을 요청해야 합니다. 자세한 내용은 SACL 액세스 권한을 참조하세요.
SYNCHRONIZE(0x00100000L) 창 스테이션 개체에 대해 지원되지 않습니다.
WRITE_DAC(0x00040000L) 개체의 보안 설명자에서 DACL을 수정하는 데 필요합니다.
WRITE_OWNER(0x00080000L) 개체의 보안 설명자에서 소유자를 변경해야 합니다.

 

다음 표에서는 개체별 액세스 권한을 나열합니다.

액세스 권한 설명
WINSTA_ALL_ACCESS(0x37F) 창 스테이션에 대해 가능한 모든 액세스 권한입니다.
WINSTA_ACCESSCLIPBOARD(0x0004L) 클립보드를 사용하는 데 필요합니다.
WINSTA_ACCESSGLOBALATOMS(0x0020L) 전역 원자를 조작하는 데 필요합니다.
WINSTA_CREATEDESKTOP(0x0008L) 창 스테이션에서 새 데스크톱 개체를 만드는 데 필요합니다.
WINSTA_ENUMDESKTOPS(0x0001L) 기존 데스크톱 개체를 열거하는 데 필요합니다.
WINSTA_ENUMERATE(0x0100L) 창 스테이션을 열거하는 데 필요합니다.
WINSTA_EXITWINDOWS(0x0040L) ExitWindows 또는 ExitWindowsEx 함수 성공적으로 호출하는 데 필요합니다. 사용자가 창 스테이션을 공유할 수 있으며 이 액세스 유형은 창 스테이션의 다른 사용자가 창 스테이션 소유자를 로그오프하지 못하도록 방지할 수 있습니다.
WINSTA_READATTRIBUTES(0x0002L) 창 스테이션 개체의 특성을 읽는 데 필요합니다. 이 특성에는 색 설정 및 기타 전역 창 스테이션 속성이 포함됩니다.
WINSTA_READSCREEN(0x0200L) 화면 내용에 액세스하는 데 필요합니다.
WINSTA_WRITEATTRIBUTES(0x0010L) 창 스테이션 개체의 특성을 수정하는 데 필요합니다. 특성에는 색 설정 및 기타 전역 창 스테이션 속성이 포함됩니다.

 

다음은 대화형 사용자의 로그온 세션에 할당된 창 스테이션인 대화형 창 스테이션 개체에 대한 일반 액세스 권한 입니다.

액세스 권한 설명
GENERIC_READ
STANDARD_RIGHTS_READ
WINSTA_ENUMDESKTOPS
WINSTA_ENUMERATE
WINSTA_READATTRIBUTES
WINSTA_READSCREEN
GENERIC_WRITE
STANDARD_RIGHTS_WRITE
WINSTA_ACCESSCLIPBOARD
WINSTA_CREATEDESKTOP
WINSTA_WRITEATTRIBUTES
GENERIC_EXECUTE
STANDARD_RIGHTS_EXECUTE
WINSTA_ACCESSGLOBALATOMS
WINSTA_EXITWINDOWS
GENERIC_ALL
STANDARD_RIGHTS_REQUIRED
WINSTA_ACCESSCLIPBOARD
WINSTA_ACCESSGLOBALATOMS
WINSTA_CREATEDESKTOP
WINSTA_ENUMDESKTOPS
WINSTA_ENUMERATE
WINSTA_EXITWINDOWS
WINSTA_READATTRIBUTES
WINSTA_READSCREEN
WINSTA_WRITEATTRIBUTES

 

다음은 비대화형 창 스테이션 개체에 대한 일반 액세스 권한 입니다. 시스템은 대화형 사용자 이외의 모든 로그온 세션에 비대화형 창 스테이션을 할당합니다.

액세스 권한 설명
GENERIC_READ
STANDARD_RIGHTS_READ
WINSTA_ENUMDESKTOPS
WINSTA_ENUMERATE
WINSTA_READATTRIBUTES
GENERIC_WRITE
STANDARD_RIGHTS_WRITE
WINSTA_ACCESSCLIPBOARD
WINSTA_CREATEDESKTOP
GENERIC_EXECUTE
STANDARD_RIGHTS_EXECUTE
WINSTA_ACCESSGLOBALATOMS
WINSTA_EXITWINDOWS
GENERIC_ALL
STANDARD_RIGHTS_REQUIRED
WINSTA_ACCESSCLIPBOARD
WINSTA_ACCESSGLOBALATOMS
WINSTA_CREATEDESKTOP
WINSTA_ENUMDESKTOPS
WINSTA_ENUMERATE
WINSTA_EXITWINDOWS
WINSTA_READATTRIBUTES

 

개체의 SACL을 읽거나 쓰려는 경우 창 스테이션 개체에 대한 ACCESS_SYSTEM_SECURITY 액세스 권한을 요청할 수 있습니다. 자세한 내용은 ACL(액세스 제어 목록)SACL 액세스 권한을 참조하세요.