SecLookupWellKnownSid 함수(ntifs.h)
SecLookupWellKnownSid 잘 알려진 SID(보안 식별자) 형식을 입력으로 허용하고 잘 알려진 이 SID에 대한 로컬 SID(보안 식별자)를 검색합니다.
통사론
KSECDDDECLSPEC NTSTATUS SEC_ENTRY SecLookupWellKnownSid(
[in] WELL_KNOWN_SID_TYPE SidType,
[out] PSID Sid,
[in] ULONG SidBufferSize,
[in_out, optional] PULONG SidSize
);
매개 변수
[in] SidType
함수가 반환하는 SID(보안 식별자) 형식을 나타내는 열거형 형식입니다. 이 매개 변수는 WELL_KNOWN_SID_TYPE 다음 열거형 중 하나일 수 있습니다.
값 | 의미 |
---|---|
WinNullSid | 이 값은 null SID를 나타냅니다. |
WinWorldSid | 이 값은 모든 사용자와 일치하는 SID를 나타냅니다. |
WinLocalSid | 이 값은 로컬 SID를 나타냅니다. |
WinCreatorOwnerSid | 개체의 소유자 또는 작성자와 일치하는 SID를 나타냅니다. 이 SID는 상속 가능한 액세스 제어 항목에 사용됩니다. |
WinCreatorGroupSid | 개체의 작성자 그룹과 일치하는 SID를 나타냅니다. 이 SID는 상속 가능한 액세스 제어 항목에 사용됩니다. |
WinCreatorOwnerServerSid | 작성자 소유자 서버 SID를 나타냅니다. |
WinCreatorGroupServerSid | 작성자 그룹 서버 SID를 나타냅니다. |
WinNtAuthoritySid | Windows NT 기관의 SID를 나타냅니다. |
WinDialupSid | 전화 접속 계정의 SID를 나타냅니다. |
WinNetworkSid | 네트워크 계정에 대한 SID를 나타냅니다. 이 SID는 네트워크를 통해 로그온할 때 토큰 프로세스에 추가됩니다. 해당 로그온 유형이 LOGON32_LOGON_NETWORK. |
WinBatchSid | 일괄 처리 프로세스에 대한 SID를 나타냅니다. 이 SID는 일괄 작업으로 로그온할 때 토큰 프로세스에 추가됩니다. 해당 로그온 유형이 LOGON32_LOGON_BATCH. |
WinInteractiveSid | 대화형 계정의 SID를 나타냅니다. 이 SID는 대화형으로 로그온할 때 토큰 프로세스에 추가됩니다. 해당 로그온 유형이 LOGON32_LOGON_INTERACTIVE. |
WinServiceSid | 서비스의 SID를 나타냅니다. 이 SID는 서비스로 로그온할 때 토큰 프로세스에 추가됩니다. 해당 로그온 유형이 LOGON32_LOGON_SERVICE. |
WinAnonymousSid | 익명 계정의 SID를 나타냅니다. |
WinProxySid | 프록시 SID를 나타냅니다. |
WinEnterpriseControllersSid | 엔터프라이즈 컨트롤러의 SID를 나타냅니다. |
WinSelfSid | 자체에 대한 SID를 나타냅니다. |
WinAuthenticatedUserSid | 인증된 사용자와 일치하는 SID를 나타냅니다. |
WinRestrictedCodeSid | 제한된 코드에 대한 SID를 나타냅니다. |
WinTerminalServerSid | 터미널 서버 계정과 일치하는 SID를 나타냅니다. |
WinRemoteLogonIdSid | 원격 로그온과 일치하는 SID를 나타냅니다. |
WinLogonIdsSid | 로그온 ID와 일치하는 SID를 나타냅니다. |
WinLocalSystemSid | 로컬 시스템과 일치하는 SID를 나타냅니다. |
WinLocalServiceSid | 로컬 서비스와 일치하는 SID를 나타냅니다. |
WinNetworkServiceSid | 네트워크 서비스와 일치하는 SID를 나타냅니다. |
WinBuiltinDomainSid | 도메인 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinAdministratorsSid | 관리자 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinUsersSid | 기본 제공 사용자 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinGuestsSid | 게스트 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinPowerUsersSid | 전원 사용자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinAccountOperatorsSid | 계정 운영자 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinSystemOperatorsSid | 시스템 연산자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinPrintOperatorsSid | 인쇄 연산자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinBackupOperatorsSid | 백업 연산자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinReplicatorSid | 복제자 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinPreWindows2000CompatibleAccessSid | Windows 2000 이전 호환 계정과 일치하는 SID를 나타냅니다. |
WinBuiltinRemoteDesktopUsersSid | 원격 데스크톱 사용자와 일치하는 SID를 나타냅니다. |
WinBuiltinNetworkConfigurationOperatorsSid | 네트워크 운영자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountAdministratorSid | 계정 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountGuestSid | 계정 게스트 그룹과 일치하는 SID를 나타냅니다. |
WinAccountKrbtgtSid | 계정 Kerberos 대상 그룹과 일치하는 SID를 나타냅니다. |
WinAccountDomainAdminsSid | 계정 도메인 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountDomainUsersSid | 계정 도메인 사용자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountDomainGuestsSid | 계정 도메인 게스트 그룹과 일치하는 SID를 나타냅니다. |
WinAccountComputersSid | 계정 컴퓨터 그룹과 일치하는 SID를 나타냅니다. |
WinAccountControllersSid | 계정 컨트롤러 그룹과 일치하는 SID를 나타냅니다. |
WinAccountCertAdminsSid | 인증서 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountSchemaAdminsSid | 스키마 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountEnterpriseAdminsSid | 엔터프라이즈 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountPolicyAdminsSid | 정책 관리자 그룹과 일치하는 SID를 나타냅니다. |
WinAccountRasAndIasServersSid | RAS 및 IAS 서버 계정과 일치하는 SID를 나타냅니다. |
WinNTLMAuthenticationSid | Microsoft NTLM 인증 패키지가 클라이언트를 인증할 때 SID가 있음을 나타냅니다. |
WinDigestAuthenticationSid | Microsoft Digest 인증 패키지가 클라이언트를 인증할 때 SID가 있음을 나타냅니다. |
WinSChannelAuthenticationSid | 보안 채널(SSL/TLS) 인증 패키지가 클라이언트를 인증할 때의 SID를 나타냅니다. |
WinThisOrganizationSid | 사용자가 포리스트 내에서 또는 선택적 인증 옵션을 사용하도록 설정하지 않은 트러스트를 통해 인증할 때 SID가 있음을 나타냅니다. 이 SID가 있으면 WinOtherOrganizationSid를 사용할 수 없습니다. |
WinOtherOrganizationSid | 선택적 인증 옵션을 사용하도록 설정된 포리스트에서 사용자가 인증할 때 SID가 있음을 나타냅니다. 이 SID가 있으면 WinThisOrganizationSid를 사용할 수 없습니다. |
WinBuiltinIncomingForestTrustBuildersSid | 사용자가 들어오는 포리스트 트러스트를 만들 수 있는 SID를 나타냅니다. 포리스트의 루트 도메인에 있는 들어오는 포리스트 트러스트 작성기 기본 제공 그룹의 멤버인 사용자의 토큰에 추가됩니다. |
WinBuiltinPerfMonitoringUsersSid | 성능 모니터 사용자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinPerfLoggingUsersSid | 성능 로그 사용자 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinAuthorizationAccessSid | Windows 권한 부여 액세스 그룹과 일치하는 SID를 나타냅니다. |
WinBuiltinTerminalServerLicenseServersSid | 터미널 서버 라이선스를 발급할 수 있는 서버에 SID가 있음을 나타냅니다. |
WinBuiltinDCOMUsersSid | DCOM 사용자 그룹과 일치하는 SID를 나타냅니다. |
[out] Sid
SidType 매개 변수에 해당하는 SID 구조를 수신하는 버퍼에 대한 포인터입니다. 이 매개 변수가 NULL
[in] SidBufferSize
Sid 버퍼의 크기를 바이트 단위로 지정하는 변수입니다.
[in_out, optional] SidSize
Sid 버퍼의 크기를 지정하는 변수에 대한 선택적 포인터입니다. 버퍼가 너무 작거나 SidBufferSize 0이므로 함수가 실패하면 이 변수는 필요한 버퍼 크기를 받습니다. 성공 시 이 변수에는 반환된 Sid크기가 포함됩니다.
반환 값
SecLookupWellKnownSid 성공 시 STATUS_SUCCESS 반환하거나 실패 시 다음 오류 코드 중 하나를 반환합니다.
반환 코드 | 묘사 |
---|---|
SEC_E_INTERNAL_ERROR | LSA(로컬 시스템 기관) 또는 LPC(로컬 프로시저 호출)에 보안 공급자에 연결하는 동안 내부 오류가 발생했습니다. |
STATUS_ACCESS_DENIED | 현재 실행 중인 스레드와 연결된 프로세스 ID가 현재 프로세스 ID와 일치하지 않습니다. |
STATUS_BUFFER_TOO_SMALL | SidBufferSize 매개 변수인 Sid버퍼 크기가 너무 작습니다. |
STATUS_INVALID_PARAMETER | Sid 매개 변수에 대해 NULL 포인터가 전달되었거나 지정된 SidType에 대해 잘 알려진 SID를 찾을 수. |
STATUS_PROCESS_IS_TERMINATING | 이 프로세스가 종료되었으므로 LPC(로컬 프로시저 호출) 연결을 설정할 수 없습니다. |
발언
SecLookupWellKnownSidSidType 매개 변수를 사용하여 잘 알려진 SID를 찾으려고 시도합니다. 로컬 컴퓨터에서 잘 알려진 SID를 찾는 것 외에도 SecLookupWellKnownSid 로컬 도메인에서 잘 알려진 SID를 조회할 수 있습니다. SecLookupWellKnownSid먼저 잘 알려진 로컬 SID 목록을 확인합니다. SidType 잘 알려진 로컬 SID와 일치하지 않는 경우 함수는 주 도메인에서 잘 알려진 SID를 확인합니다.
함수가
SecLookupWellKnownSid Win32 CreateWellKnownSid 함수와 동일합니다. 사용자 모드 애플리케이션의 경우 WELL_KNOWN_SID_TYPE 열거형은 winbase.h
SecLookupWellKnownSid 사용자 모드 도우미 서비스를 사용하여 이 함수를 구현하는 ksecdd 드라이버에서 내보냅니다. 따라서 파일 시스템 내에서 이 함수를 사용하는 경우 사용자 모드 서비스와의 통신에 대한 일반적인 규칙을 준수해야 합니다. SecLookupWellKnownSid 페이징 파일 I/O 중에 사용할 수 없습니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | 이 SecLookupWellKnownSid 함수는 Windows Server 2003부터만 사용할 수 있습니다. |
대상 플랫폼 | 보편적 |
헤더 | ntifs.h(Ntifs.h 포함) |
라이브러리 | Ksecdd.lib |
IRQL |
<= APC_LEVEL |