DynamicManagement CSP
아래 표에서는 Windows의 적용 가능성을 보여 줍니다.
버전 | Windows 10 | Windows 11 |
---|---|---|
Home | 아니요 | 아니요 |
Pro | 아니요 | 아니요 |
Windows SE | 아니요 | 아니요 |
Business | 아니요 | 아니요 |
Enterprise | 예 | 예 |
Education | 예 | 예 |
Windows 10 또는 Windows 11 사용하면 위치, 네트워크 또는 시간에 따라 디바이스를 다르게 관리할 수 있습니다. Windows 10 버전 1703에 추가된 이 초점은 조직에서 표현하는 가장 일반적인 관심 영역에 있습니다. 예를 들어 관리되는 디바이스는 회사 위치에 있을 때 카메라를 사용하지 않도록 설정하거나, 로밍 요금을 방지하기 위해 국가/지역 외부에서 셀룰러 서비스를 사용하지 않도록 설정하거나, 디바이스가 회사 건물이나 캠퍼스 내에 없을 때 무선 네트워크를 사용하지 않도록 설정할 수 있습니다. 구성되면 위치 또는 네트워크가 변경될 때 디바이스가 관리 서버에 연결할 수 없는 경우에도 이러한 설정이 적용됩니다. 동적 관리 CSP를 사용하면 장치가 관리되는 방식을 변경하고, 이러한 변경이 발생하는 조건을 설정하는 정책을 구성할 수 있습니다.
이 CSP는 Windows 10 버전 1703에 추가되었습니다.
다음 예제에서는 트리 형식의 DynamicManagement 구성 서비스 공급자를 보여줍니다.
./Device/Vendor/MSFT
DynamicManagement
----NotificationsEnabled
----ActiveList
----Contexts
--------ContextID
------------SignalDefinition
------------SettingsPack
------------SettingsPackResponse
------------ContextStatus
------------Altitude
----AlertsEnabled
DynamicManagement DynamicManagement 구성 서비스 공급자의 루트 노드입니다.
NotificationsEnabled 컨텍스트 변경의 사용자에게 알림을 보내기 위한 부울 값입니다.
기본값은 False입니다.
Get 및 Replace 작업을 지원합니다.
NotificationsEnabled를 설정하는 예제:
<Replace>
<CmdID>100</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/NotificationsEnabled</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">bool</Format>
</Meta>
<Data>true</Data>
</Item>
</Replace>
ActiveList 디바이스의 모든 활성 ContextID 목록을 포함하는 문자열입니다. 구분 기호는 유니코드 문자 0xF000.
지원되는 작업은 Get입니다.
지원되는 작업은 Get입니다.
ContextID 컨텍스트를 정의하기 위해 서버에서 만든 노드입니다. 허용되는 최대 문자 수는 38자입니다.
지원되는 작업은 추가, 가져오기 및 삭제입니다.
값 유형은 문자열입니다.
지원되는 작업은 추가, 가져오기, 삭제 및 바꾸기입니다.
설정패킹 컨텍스트가 활성 상태일 때 적용되는 설정입니다.
값 유형은 문자열입니다.
지원되는 작업은 추가, 가져오기, 삭제 및 바꾸기입니다.
SettingsPackResponse 각 개별 작업에 대한 정보가 포함된 설정 팩을 적용하여 응답합니다.
값 유형은 문자열입니다.
지원되는 작업은 Get입니다.
ContextStatus 컨텍스트의 상태 보고합니다. 오류가 발생한 경우 SettingsPackResponse에서 정확히 무엇이 실패했는지 확인해야 합니다.
값 유형은 정수입니다.
지원되는 작업은 Get입니다.
구역 디바이스에 여러 컨텍스트를 적용하는 충돌 해결을 처리하는 방법을 결정하는 값입니다. 이는 필수이며 다른 우선 순위와 구별되어야 합니다.
값 유형은 정수입니다.
지원되는 작업은 추가, 가져오기, 삭제 및 바꾸기입니다.
AlertsEnabled 컨텍스트가 실패할 때 서버에 경고를 보내기 위한 부울 값입니다. Get 및 Replace 작업을 지원합니다.
예
지정된 위도/경도의 100미터 반경에 있는 경우 오전 9시부터 오후 5시까지 지리적 위치 및 시간에 따라 Cortana를 사용하지 않도록 설정합니다.
<Replace>
<CmdID>200</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/Bldg109/SettingsPack</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">chr</Format>
</Meta>
<Data><SyncML>
<SyncBody><Replace><CmdID>1001</CmdID><Item><Target><LocURI>./Vendor/MSFT/Policy/Config/Experience/AllowCortana</LocURI></Target><Meta><Format xmlns="syncml:metinf">int</Format></Meta><Data>0</Data></Item></Replace><Final/></SyncBody></SyncML></Data>
</Item>
</Replace>
<Replace>
<CmdID>201</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/Bldg109/SignalDefinition</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">chr</Format>
</Meta>
<Data>
<rule schemaVersion="1.0">
<and>
<signal type="geoloc" latitude="47.6375" longitude="-122.1402" radiusInMeters="100"/>
<signal type="time">
<daily startTime="09:00:00" endTime="17:00:00"/>
</signal>
</and>
</rule>
</Data>
</Item>
</Replace>
<Replace>
<CmdID>202</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/Bldg109/Altitude</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">int</Format>
</Meta>
<Data>3</Data>
</Item>
</Replace>
ip4 게이트웨이가 192.168.0.1인 경우 시간 트리거와 함께 네트워크 트리거를 사용하여 카메라를 사용하지 않도록 설정
<Replace>
<CmdID>300</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime/SettingsPack</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">chr</Format>
</Meta>
<Data><SyncML>
<SyncBody><Replace><CmdID>1002</CmdID><Item><Target><LocURI>./Vendor/MSFT/Policy/Config/Camera/AllowCamera</LocURI></Target><Meta><Format xmlns="syncml:metinf">int</Format></Meta><Data>0</Data></Item></Replace> <Final/></SyncBody></SyncML></Data>
</Item>
</Replace>
<Replace>
<CmdID>301</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime/SignalDefinition</LocURI>
</Target>
<Meta>
<Type xmlns="syncml:metinf">text/plain</Type>
<Format xmlns="syncml:metinf">chr</Format>
</Meta>
<Data>
<rule schemaVersion="1.0">
<and>
<signal type="ipConfig">
<ipv4Gateway>192.168.0.1</ipv4Gateway>
</signal>
<signal type="time">
<daily startTime="09:00:00" endTime="17:00:00"/>
</signal>
</and>
</rule>
</Data>
</Item>
</Replace>
<Replace>
<CmdID>302</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime/Altitude</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">int</Format>
</Meta>
<Data>10</Data>
</Item>
</Replace>
컨텍스트 삭제:
<Delete>
<CmdID>400</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime</LocURI>
</Target>
</Item>
</Delete>
특정 컨텍스트에서 ContextStatus 및 SignalDefinition을 가져옵니다.
<Get>
<CmdID>400</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime/ContextStatus</LocURI>
</Target>
</Item>
</Get>
<Get>
<CmdID>401</CmdID>
<Item>
<Target>
<LocURI>./Vendor/MSFT/DynamicManagement/Contexts/NetworkWithTime/SignalDefinition </LocURI>
</Target>
</Item>
</Get>