DynamicManagement 云解决方案提供商

下表显示了 Windows 的适用性:

版次 Windows 10 Windows 11
Home 键
专业版
Windows SE
商用版
企业
教育

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 列表的字符串。 分隔符是 unicode 字符0xF000。

支持的操作为 Get。

上下文 上下文信息的节点。

支持的操作为 Get。

ContextID 服务器创建的用于定义上下文的节点。 允许的最大字符数为 38。

支持的操作包括“添加”、“获取”和“删除”。

SignalDefinition 信号定义 XML。

值类型为字符串。

支持的操作包括“添加”、“获取”、“删除”和“替换”。

SettingsPack 上下文处于活动状态时应用的设置。

值类型为字符串。

支持的操作包括“添加”、“获取”、“删除”和“替换”。

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 时,禁用网络触发器和时间触发器(从 9 到 5)

<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>

配置服务提供程序参考