문서의 각 단락이 어느 리비전에서 마지막으로 수정되었는지 확인할 수 있습니다. 왼쪽의 정보 칩을 통해 작성자와 수정 시점을 파악하세요.

WMI 필터 | |
정의 | WMI(Windows Management Instrumentation) 쿼리를 사용하여 그룹 정책 객체(GPO)를 적용할 컴퓨터 또는 사용자를 제한하는 조건 |
주요 용도 | 그룹 정책의 적용 대상을 특정 조건(예: 운영 체제 버전, 설치된 소프트웨어, 하드웨어 구성)에 맞는 컴퓨터로 세밀하게 제한 |
관련 분야 | 그룹 정책 액티브 디렉터리 시스템 관리 |
사용 환경 | Microsoft Windows 도메인 환경 |
작동 방식 | GPO에 연결된 WMI 필터는 클라이언트 컴퓨터에서 WMI 쿼리를 실행하여 결과가 True인 경우에만 해당 GPO의 정책 설정을 적용 |
상세 정보 | |
쿼리 언어 | WQL(WMI Query Language) |
관리 도구 | 그룹 정책 관리 콘솔(GPMC) |
적용 단위 | WMI 필터는 GPO에 연결되며, 해당 GPO가 연결된 도메인, 사이트, 조직 구성 단위(OU) 내에서 조건부로 적용 |
주의사항 | WMI 필터 처리는 클라이언트 측에서 수행되므로 정책 적용에 추가적인 부하와 시간이 소요될 수 있음 필터링 조건이 복잡할수록 정책 처리 성능에 영향을 미칠 수 있음 |

WMI 필터는 마이크로소프트 윈도우 도메인 환경에서 그룹 정책의 적용 대상을 세밀하게 제어하기 위한 조건부 필터링 메커니즘이다. WMI 쿼리를 사용하여 그룹 정책 객체를 적용할 컴퓨터 또는 사용자를 제한하는 역할을 한다. 이 기술은 액티브 디렉터리 기반의 시스템 관리에서 특정 정책이 특정 조건을 만족하는 대상에게만 적용되도록 하는 데 핵심적으로 활용된다.
주요 용도는 그룹 정책의 적용 대상을 운영 체제 버전, 설치된 소프트웨어, 하드웨어 구성 등 특정 조건에 맞는 컴퓨터로 제한하는 것이다. 예를 들어, 특정 보안 패치 정책을 윈도우 10 컴퓨터에만 적용하거나, 특정 응용 프로그램이 설치된 컴퓨터에만 설정을 배포하는 등의 시나리오에서 사용된다.
WMI 필터는 그룹 정책 객체에 연결되어 작동한다. 클라이언트 컴퓨터에서 그룹 정책을 처리할 때, 연결된 WMI 필터의 쿼리가 실행된다. 이 쿼리 결과가 참인 경우에만 해당 그룹 정책 객체의 모든 정책 설정이 컴퓨터에 적용된다. 이를 통해 관리자는 광범위한 OU 구조 내에서도 매우 정확한 대상 지정이 가능해진다.
이러한 기능은 대규모 기업 IT 인프라에서 효율적인 정책 관리를 가능하게 하며, 잘못된 대상에 정책이 적용되는 것을 방지하여 시스템 안정성을 높인다. WMI 필터의 사용은 윈도우 서버와 클라이언트를 아우르는 통합된 관리 체계의 중요한 부분을 구성한다.

WMI 필터는 WMI 쿼리를 사용하여 그룹 정책 객체의 적용 대상을 조건부로 제한하는 기능이다. 액티브 디렉터리 기반의 Microsoft Windows 도메인 환경에서 시스템 관리자가 특정 GPO를 모든 컴퓨터나 사용자에게 일괄 적용하는 대신, 운영 체제 버전, 설치된 소프트웨어, 하드웨어 사양 등과 같은 조건을 만족하는 대상에게만 정책을 적용할 수 있도록 한다. 이는 정책 적용의 정밀도를 높여 관리 효율성을 향상시키는 핵심 도구 역할을 한다.
WMI 필터의 핵심 역할은 그룹 정책의 적용 범위를 세분화하는 것이다. 예를 들어, 특정 보안 패치 정책을 Windows 10 이상의 운영 체제를 실행하는 컴퓨터에만 적용하거나, 특정 응용 프로그램이 설치되지 않은 컴퓨터에만 해당 프로그램의 설치 정책을 적용하는 등의 조건부 배포가 가능하다. 이는 도메인 내 다양한 사양과 구성의 클라이언트 컴퓨터를 효율적으로 관리하는 데 필수적이다.
동작 방식은 비교적 직관적이다. 관리자가 GPO에 WMI 필터를 연결하면, 그룹 정책을 처리할 때 클라이언트 컴퓨터는 해당 필터에 정의된 WQL 쿼리를 로컬에서 실행한다. 쿼리 실행 결과가 참(True)으로 반환되면 해당 GPO의 설정이 컴퓨터에 적용되고, 거짓(False)이면 정책 적용이 건너뛰어진다. 이 과정을 통해 하드웨어 및 소프트웨어 인벤토리 정보를 기반으로 동적인 정책 적용 결정이 이루어진다.
WMI 필터의 동작 원리는 그룹 정책 객체(GPO)가 도메인 내의 특정 컴퓨터에만 적용되도록 조건을 검사하는 과정이다. 액티브 디렉터리에 연결된 GPO는 도메인 내 모든 컴퓨터와 사용자에게 기본적으로 적용될 수 있다. 여기에 WMI 필터를 연결하면, 정책이 실제로 적용되기 전에 클라이언트 컴퓨터에서 추가적인 조건 평가가 이루어진다.
구체적으로, 그룹 정책이 처리되는 시점(컴퓨터 시작 또는 사용자 로그온 시)에 클라이언트 컴퓨터는 GPO에 연결된 WMI 필터 내의 WQL 쿼리를 로컬에서 실행한다. 이 쿼리는 해당 컴퓨터의 WMI 리포지토리를 조회하여 운영 체제 버전, 디스크 여유 공간, 설치된 소프트웨어, CPU 모델 등의 정보를 확인한다. 쿼리 실행 결과 하나 이상의 데이터가 반환되면(True) 해당 컴퓨터는 조건을 만족한 것으로 판단되어 GPO의 모든 정책 설정을 적용받는다. 반대로 쿼리 결과가 빈 집합을 반환하면(False) 해당 컴퓨터는 그 GPO의 정책 설정을 전혀 적용받지 않는다.
이러한 동작 방식은 동일한 OU(조직 구성 단위) 내에 다양한 사양의 컴퓨터가 혼재해 있을 때 유용하게 활용된다. 예를 들어, 특정 보안 소프트웨어가 설치된 컴퓨터에만 보안 정책을 강화하거나, 윈도우 10 이상의 운영 체제를 실행하는 컴퓨터에만 최신 기능 관련 정책을 배포하는 것이 가능해진다. 결과적으로 WMI 필터는 그룹 정책의 적용 대상을 하드웨어 및 소프트웨어 구성에 따라 세밀하게 제어하는 필터링 메커니즘으로 작동한다.

WMI는 계층적으로 구성된 정보 저장소를 통해 시스템 리소스를 관리한다. 이 계층 구조의 최상위에는 루트 네임스페이스가 위치하며, 이 아래에 다양한 자식 네임스페이스가 트리 구조로 배치된다. 각 네임스페이스는 논리적으로 그룹화된 클래스와 인스턴스의 컨테이너 역할을 하여, 관련된 관리 정보를 체계적으로 분류한다.
WMI 쿼리를 실행하거나 WMI 필터를 작성할 때는 반드시 대상 네임스페이스를 지정해야 한다. 가장 일반적으로 사용되는 네임스페이스는 root\CIMv2이다. 이 네임스페이스에는 운영 체제, 프로세서, 디스크 드라이브, 설치된 소프트웨어 등 Windows 시스템의 핵심 하드웨어 및 소프트웨어 구성 요소에 대한 정보를 제공하는 대부분의 클래스가 포함되어 있다.
일반적인 네임스페이스 | 주요 포함 정보 |
|---|---|
| 운영 체제, 하드웨어, 소프트웨어, 성능 카운터 |
| 방화벽, 안티바이러스 소프트웨어 상태 |
| Windows Update 관련 정보 |
| 그룹 정책 결과 집합 데이터 |
네임스페이스의 계층 구조를 이해하는 것은 정확한 WQL 쿼리를 작성하는 데 필수적이다. 관리자는 필요한 시스템 정보가 위치한 정확한 네임스페이스를 쿼리함으로써, 특정 하드웨어 사양을 가진 컴퓨터나 특정 버전의 응용 프로그램이 설치된 컴퓨터에만 그룹 정책 객체가 적용되도록 세밀하게 제어할 수 있다.
WMI 필터를 구성하는 핵심 요소는 WQL이다. WQL은 WMI에서 정보를 질의하기 위해 사용하는 언어로, SQL의 구문과 유사한 구조를 가진다. 이 언어를 통해 시스템 관리자는 운영 체제 버전, 하드웨어 구성, 설치된 소프트웨어 목록 등 WMI가 제공하는 광범위한 시스템 정보를 조건으로 지정할 수 있다. WQL 쿼리의 결과는 참(True) 또는 거짓(False)으로 평가되며, 이 평가 결과에 따라 그룹 정책의 적용 여부가 결정된다.
WQL 쿼리는 기본적으로 SELECT 문을 사용하여 특정 WMI 클래스의 속성(Property)을 조회하는 형태를 취한다. 쿼리 내에서 WHERE 절을 활용하여 구체적인 조건을 부여하는 것이 일반적이다. 예를 들어, 운영 체제가 Windows 10이고 서비스 팩 버전이 특정 수준 이상인 컴퓨터를 대상으로 필터링할 수 있다. 이처럼 WQL은 관리자가 도메인 내 다양한 컴퓨터를 세부적으로 구분하여 정책을 적용하는 데 필요한 논리적 기준을 제공한다.
WQL 쿼리의 정확성은 WMI 필터의 효과를 좌우한다. 잘못 구성된 쿼리는 의도하지 않은 컴퓨터에 정책을 적용하거나, 반대로 적용해야 할 컴퓨터에서 정책을 누락시키는 결과를 초래할 수 있다. 따라서 관리자는 대상 컴퓨터의 시스템 환경을 정확히 이해하고, 해당 정보가 어떤 WMI 클래스와 속성에 매핑되는지 숙지해야 한다. 그룹 정책 관리 콘솔에서 WMI 필터를 생성하거나 편집할 때 직접 WQL 쿼리를 작성하고 테스트하는 과정이 필수적이다.

WMI 필터는 액티브 디렉터리 환경에서 그룹 정책 객체의 적용 대상을 세밀하게 제어하는 핵심 도구이다. 조직 단위나 보안 그룹과 같은 전통적인 연결 방식만으로는 부족한, 특정 조건을 만족하는 컴퓨터에만 정책을 적용해야 할 필요가 있을 때 사용된다. 예를 들어, 특정 운영 체제 버전을 실행 중이거나, 특정 하드웨어 구성을 가졌거나, 특정 소프트웨어가 설치된 컴퓨터에만 보안 정책이나 배포 설정을 적용할 수 있다.
이 기술은 그룹 정책 관리 콘솔에서 그룹 정책 객체에 연결하여 사용한다. 관리자는 WMI 필터를 생성할 때 WQL이라는 쿼리 언어를 사용하여 조건을 정의한다. 클라이언트 컴퓨터가 정책을 받아 처리할 때, 이 쿼리가 로컬에서 실행되어 결과를 반환한다. 쿼리 결과가 참(True)이면 연결된 그룹 정책 객체의 모든 설정이 해당 컴퓨터에 적용되고, 거짓(False)이면 정책 적용이 완전히 건너뛰어진다.
이러한 방식은 관리 효율성을 크게 높인다. 동일한 조직 단위 내에 다양한 사양의 컴퓨터가 혼재해 있어도, 하나의 그룹 정책 객체와 여러 개의 WMI 필터를 조합하여 각기 다른 조건의 시스템에 맞춤형 설정을 배포할 수 있다. 이는 특히 운영 체제 버전별로 다른 레지스트리 설정을 적용하거나, 메모리 용량이 충분한 컴퓨터에만 대용량 응용 프로그램을 설치하는 정책을 구현할 때 유용하다.
그러나 WMI 필터의 과도한 사용이나 복잡한 쿼리는 정책 처리 성능에 부정적인 영향을 미칠 수 있다는 점에 유의해야 한다. 모든 클라이언트 컴퓨터는 정책 새로 고침 주기마다 연결된 WMI 쿼리를 실행해야 하므로, 쿼리가 복잡하거나 WMI 서비스 자체에 문제가 있으면 정책 적용이 지연되거나 실패할 수 있다. 따라서 필터 설계 시 성능을 고려한 간결하고 효율적인 쿼리 작성이 중요하다.
WMI 필터는 그룹 정책의 적용 여부를 결정하는 조건으로서의 역할 외에도, 시스템 관리자가 도메인 내 컴퓨터의 상태를 파악하고 정보를 수집하는 데 유용하게 활용된다. 이는 WMI 필터의 핵심 구성 요소인 WQL 쿼리를 통해 광범위한 시스템 정보에 접근할 수 있기 때문이다. 관리자는 특정 하드웨어 사양, 설치된 소프트웨어 목록, 운영 체제의 세부 설정 등에 대한 쿼리를 작성하여, 해당 조건을 만족하는 컴퓨터 그룹을 동적으로 식별할 수 있다.
이러한 정보 수집 기능은 주로 모니터링과 인벤토리 관리 목적으로 사용된다. 예를 들어, 특정 보안 패치가 설치되지 않은 컴퓨터, 메모리 용량이 일정 기준 미만인 컴퓨터, 또는 특정 바이러스 백신 프로그램이 실행 중이지 않은 컴퓨터들을 찾아내는 쿼리를 WMI 필터로 생성할 수 있다. 이렇게 식별된 컴퓨터 집합에 대해 별도의 그룹 정책 객체를 적용하여 설정을 수정하거나, 보고서를 생성하는 등의 후속 조치를 취할 수 있다.
실제 운영에서는 액티브 디렉터리 그룹 정책 관리 콘솔에서 WMI 필터를 생성하고, 해당 필터의 쿼리 결과를 확인하는 과정을 통해 도메인 환경의 전반적인 상태를 점검한다. 이는 수동으로 각 클라이언트 컴퓨터에 접속하지 않고도 중앙에서 효율적으로 자산 관리와 보안 정책 준수 여부를 감시할 수 있는 강력한 도구가 된다. 따라서 WMI 필터는 정책 적용의 정밀도를 높이는 동시에 Microsoft Windows 기반 인프라의 관리 및 모니터링 자동화에 기여한다.

WMI 필터를 생성할 때는 WQL을 사용하여 쿼리를 작성한다. 쿼리는 대상 컴퓨터의 WMI 리포지토리에서 정보를 조회하며, 특정 조건을 만족하는 경우 True를 반환하여 그룹 정책이 적용되도록 한다.
일반적인 쿼리 예시로는 운영 체제 버전 확인이 있다. 예를 들어, Windows 10 이상의 64비트 운영 체제를 실행 중인 컴퓨터만 필터링하려면 SELECT * FROM Win32_OperatingSystem WHERE Version >= '10.0' AND OSArchitecture = '64-bit'와 같은 쿼리를 사용한다. 설치된 소프트웨어 유무를 기준으로 할 수도 있으며, 특정 서비스 팩 버전이나 하드웨어 구성(예: 특정 용량 이상의 RAM 보유)을 조건으로 삼는 쿼리도 작성 가능하다.
쿼리 작성 시 주의할 점은, 결과 집합이 비어 있지 않으면(즉, 조건에 맞는 인스턴스가 하나라도 존재하면) 필터 평가 결과가 True가 된다는 것이다. 따라서 쿼리의 정확성이 매우 중요하다. 부정확한 쿼리는 의도하지 않은 컴퓨터에 정책이 적용되거나, 반대로 필요한 컴퓨터가 제외되는 결과를 초래할 수 있다.
WMI 필터는 그룹 정책 편집기 내에서 생성하고 그룹 정책 객체에 연결하여 사용한다. 관리자는 그룹 정책 관리 콘솔을 열고 WMI 필터 노드를 선택한 후 새 필터를 생성할 수 있다. 생성 시에는 필터에 설명적인 이름을 부여하고, 적용 조건을 정의하는 WQL 쿼리를 작성해야 한다. 이 쿼리는 운영 체제 버전, 디스크 여유 공간, 특정 소프트웨어의 설치 여부 등과 같은 시스템 속성을 평가한다.
생성된 WMI 필터는 하나 이상의 GPO에 연결하여 활용된다. 그룹 정책 관리 콘솔에서 대상 GPO를 선택한 후, '범위' 탭의 WMI 필터 섹션에서 '추가'를 클릭하고 원하는 필터를 선택하면 연결이 완료된다. 하나의 GPO에는 오직 하나의 WMI 필터만 연결할 수 있으며, 이 연결은 도메인 컨트롤러를 통해 전체 액티브 디렉터리 포리스트에 복제된다.
클라이언트 컴퓨터가 그룹 정책을 새로 고칠 때, 연결된 GPO의 WMI 필터 쿼리가 로컬에서 실행된다. 쿼리 결과가 하나 이상의 객체를 반환하면(True), 해당 GPO의 모든 정책 설정이 해당 컴퓨터에 적용된다. 반대로 쿼리 결과가 빈 상태(null)로 반환되면(False), GPO의 정책 설정은 적용되지 않고 무시된다. 이 방식을 통해 동일한 그룹 정책 객체를 다양한 하드웨어 또는 소프트웨어 환경을 가진 컴퓨터 그룹에 대해 조건부로 적용하는 정교한 시스템 관리가 가능해진다.

WMI 필터는 그룹 정책의 적용 대상을 세밀하게 제어할 수 있게 해주지만, 관리의 복잡성과 성능 오버헤드라는 단점도 동시에 가지고 있다.
주요 장점은 정책 적용의 정밀성과 유연성이다. 운영 체제 버전, 디스크 여유 공간, 특정 소프트웨어의 설치 여부, 램 용량 등 WMI를 통해 쿼리할 수 있는 거의 모든 시스템 속성을 조건으로 활용할 수 있다. 이는 단순히 OU(조직 구성 단위)에 기반한 적용보다 훨씬 동적이고 정확한 대상 지정을 가능하게 하며, 결과적으로 잘못된 정책이 적용되어 발생할 수 있는 시스템 불안정성을 줄이는 데 기여한다. 또한, 복잡한 스크립트를 작성하지 않고도 비교적 간단한 WQL(WMI Query Language) 쿼리 문법으로 이러한 조건을 정의할 수 있다는 점도 강점이다.
반면, 가장 큰 단점은 관리 복잡성 증가와 성능에 미치는 영향이다. WMI 필터는 클라이언트 컴퓨터에서 매번 정책을 새로 고칠 때마다 쿼리를 실행하여 결과를 평가해야 한다. 이는 특히 대규모 액티브 디렉터리 환경에서 정책 처리 시간을 지연시키고 네트워크 및 클라이언트 시스템에 부하를 줄 수 있다. 또한, 필터 조건이 복잡해질수록 관리자가 의도한 대로 작동하는지 검증하기 어려워지며, WMI 서비스 자체의 상태나 권한 문제로 인해 쿼리 평가가 실패하면 정책이 예상치 못하게 적용되거나 적용되지 않을 수 있다.
따라서 WMI 필터는 강력한 도구이지만, 신중하게 사용해야 한다. 성능 저하를 최소화하기 위해 쿼리를 최적화하고, 정말 필요한 경우에만 사용하며, 그 적용 결과를 꾸준히 모니터링하는 것이 좋다. 간단한 대상 구분은 보안 그룹 필터링이나 아이템 수준 대상 지정과 같은 다른 방법으로 먼저 고려해 볼 수 있다.