AssignedAccess CSP

AssignedAccess 構成サービス プロバイダー (CSP) は、キオスクまたは制限付きユーザー エクスペリエンスを構成するために使用されます。 CSP が実行されると、割り当てられたアクセス プロファイルに関連付けられている次のユーザー ログインによって、デバイスは CSP 構成で指定されたキオスク モードになります。

割り当てられたアクセスを構成する方法の詳細については、「 キオスクと制限付きユーザー エクスペリエンスを構成する」を参照してください。

次の一覧は、AssignedAccess 構成サービス プロバイダー ノードを示しています。

構成

適用範囲 エディション 対象となる OS
✅ デバイス
❌ ユーザー
✅ Pro
✅ Enterprise
✅ Education
✅ Windows SE
✅ IoT Enterprise / IoT Enterprise LTSC
✅Windows 10バージョン 1709 [10.0.16299] 以降
./Vendor/MSFT/AssignedAccess/Configuration

このノードは、AssignedAccessConfiguration xml を入力として受け入れます。

xml ファイルを構成する方法については、「割り当てられたアクセス構成 XML ファイルを作成する」を参照してください。

説明フレームワークのプロパティ:

プロパティ名 プロパティ値
形式 chr (string)
アクセスの種類 追加、削除、取得、置換

:

  • 構成の取得

    <SyncML xmlns='SYNCML:SYNCML1.2'>
       <SyncBody>
           <Get>
               <CmdID>2</CmdID>
               <Item>
                   <Target>
                       <LocURI>./Device/Vendor/MSFT/AssignedAccess/Configuration</LocURI>
                   </Target>
               </Item>
           </Get>
           <Final />
       </SyncBody>
    </SyncML>
    
  • 構成の削除

    <SyncML xmlns='SYNCML:SYNCML1.2'>
       <SyncBody>
           <Delete>
               <CmdID>2</CmdID>
               <Item>
                   <Target>
                       <LocURI>./Device/Vendor/MSFT/AssignedAccess/Configuration</LocURI>
                   </Target>
               </Item>
           </Delete>
           <Final />
       </SyncBody>
    </SyncML>
    

KioskModeApp

このポリシーは非推奨であり、今後のリリースで削除される可能性があります。

適用範囲 エディション 対象となる OS
✅ デバイス
❌ ユーザー
✅ Pro
✅ Enterprise
✅ Education
✅ Windows SE
✅ IoT Enterprise / IoT Enterprise LTSC
✅Windows 10バージョン 1507 [10.0.10240] 以降
./Vendor/MSFT/AssignedAccess/KioskModeApp

このノードは、アカウント名とキオスク モード アプリの AUMID で構成される json 文字列を受け入れて返すことができます。

例: {"User":"domain\\user", "AUMID":"Microsoft. WindowsCalculator_8wekyb3d8bbwe!App"}

キオスク モード アプリを構成する場合、アカウント名を使用してターゲット ユーザーを検索します。 アカウント名には、ドメイン名とユーザー名が含まれます。 ユーザー名がシステム全体で一意の場合、ドメイン名は省略可能です。 ローカル アカウントの場合、ドメイン名はコンピューター名にする必要があります。 このノードで "Get" が実行されると、常に出力にドメイン名が返されます。

このノードでは、Add、Delete、Replace、Get の各メソッドがサポートされています。 構成がない場合、"Get" メソッドと "Delete" メソッドは失敗します。 キオスク モード アプリの構成が既にある場合、"追加" メソッドは失敗します。 "追加" と "置換" のデータ パターンは同じです。

ヒント

上の例では、json 内にあり、JSON が に\エスケープ\\されるため、double \\ が必要です。 MDM サーバーで JSON パーサー\composer を使用する場合は、JSON に含まれる \\ 1 つだけ\を入力するように顧客に依頼する必要があります。 ユーザーが を入力 \\すると、JSON になり \\\\ 、誤った結果が発生します。 同じ理由で、 domain\user Configuration xml で使用されるは必要\\ありませんが、xml は をエスケープ\する必要がないため、 は 1 つだけ\です。

これは、JSON 文字列で が\使用されている限り、 の両方domain\userAzureAD\someone@contoso.onmicrosoft.comに適用されます。

AUMID を取得する方法の詳細については、「 インストールされているアプリのアプリケーション ユーザー モデル ID を検索する」を参照してください。

重要

  • バージョン 1803 Windows 10、構成ノードは KioskModeApp CSP ノードに代わる単一アプリ キオスク プロファイルを導入しました。 KioskModeApp ノードは間もなく非推奨になるため、構成ノードの構成 xml で 1 つのアプリ キオスク プロファイルを使用して、パブリック向けの単一アプリ キオスクを構成する必要があります。
  • さらに、バージョン 1803 Windows 10以降、デバイスで構成ノードが構成されている場合、KioskModeApp ノードは No-Op になります。 KioskModeApp ノードの追加/置換/削除コマンドは、構成ノードが設定されている場合、常に MDM サーバーに SUCCESS を返しますが、KioskModeApp のデータはデバイスに影響しません。 KioskModeApp で Get コマンドを実行すると、有効でなくても、構成された JSON 文字列が返されます。
  • デバイスで KioskModeApp と ShellLauncher の両方を同時に設定することはできません。

説明フレームワークのプロパティ:

プロパティ名 プロパティ値
形式 chr (string)
アクセスの種類 追加、削除、取得、置換

:

  • KioskModeApp の追加

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Add>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/KioskModeApp</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>{"Account":"Domain\\AccountName","AUMID":"Microsoft.WindowsCalculator_8wekyb3d8bbwe!App"}</Data>
                </Item>
            </Add>
            <Final />
        </SyncBody>
    </SyncML>
    
  • KioskModeApp を削除する

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Delete>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/KioskModeApp</LocURI>
                    </Target>
                </Item>
            </Delete>
            <Final />
        </SyncBody>
    </SyncML>
    
  • KioskModeApp を取得する

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Get>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/KioskModeApp</LocURI>
                    </Target>
                </Item>
            </Get>
            <Final />
        </SyncBody>
    </SyncML>
    
  • KioskModeApp を置き換える

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Replace>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/KioskModeApp</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>{"Account":"Domain\\AccountName","AUMID":"Microsoft.WindowsAlarms_8wekyb3d8bbwe!App"}</Data>
                </Item>
            </Replace>
            <Final />
        </SyncBody>
    </SyncML>
    

ShellLauncher

適用範囲 エディション 対象となる OS
✅ デバイス
❌ ユーザー
❌ Pro
✅ Enterprise
✅ Education
❌ Windows SE
✅ IoT Enterprise / IoT Enterprise LTSC
✅Windows 10、バージョン 1803 [10.0.17134] 以降
./Vendor/MSFT/AssignedAccess/ShellLauncher

このノードは、ShellLauncherConfiguration xml を入力として受け入れます。

シェルランチャーの詳細については、「 シェルランチャーとは」を参照してください。

重要

ShellLauncher と KioskModeApp の両方をデバイスで同時に設定することはできません。

ShellLauncher ノードを使用してシェル起動ツールを構成すると、SKU 内でシェル起動ツール機能が使用可能な場合、自動的に有効になります。

機能としてのシェル起動ツールと ShellLauncher ノードの両方が機能するには、Windows Enterprise または Windows Education が必要です。 ShellLauncher ノードは、Windows 10 Proではサポートされていません。

説明フレームワークのプロパティ:

プロパティ名 プロパティ値
形式 chr (string)
アクセスの種類 追加、削除、取得、置換

シェル起動ツールの XSD リファレンス記事を次に示します。 シェル起動ツール XML スキーマ定義 (XSD) です。

:

  • Add

    <SyncML xmlns='SYNCML:SYNCML1.2'>
      <SyncBody>
        <Add>
          <CmdID>2</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/AssignedAccess/ShellLauncher</LocURI>
            </Target>
            <Meta>
              <Format xmlns="syncml:metinf">chr</Format>
            </Meta>
            <Data>
            <![CDATA[
            <!-- Add your XML configuration. For more information, see the Shell Launcher XSD reference article. -->
            ]]>
            </Data>
          </Item>
        </Add>
        <Final />
      </SyncBody>
    </SyncML>
    
  • [ゲームをゲット] を選びます

    <SyncML xmlns='SYNCML:SYNCML1.2'>
      <SyncBody>
        <Get>
          <CmdID>2</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/AssignedAccess/ShellLauncher</LocURI>
            </Target>
          </Item>
        </Get>
        <Final />
      </SyncBody>
    </SyncML>
    

状態

適用範囲 エディション 対象となる OS
✅ デバイス
❌ ユーザー
✅ Pro
✅ Enterprise
✅ Education
✅ Windows SE
✅ IoT Enterprise / IoT Enterprise LTSC
✅Windows 10、バージョン 1803 [10.0.17134] 以降
./Vendor/MSFT/AssignedAccess/Status

この読み取り専用ノードには、キオスク正常性イベント xml が含まれています。

これにより、StatusConfiguration ノードが "On" または "OnWithAlerts" に設定されている限り、MDM サーバーは現在の KioskModeAppRuntimeStatus を照会できます。 StatusConfiguration が "オフ" の場合は、MDM サーバーに "ノードが見つかりません" というエラーが報告されます。

Windows 10 Version 1809以降、割り当てられたアクセス ランタイムの状態では、シングル アプリ キオスクモードとマルチアプリ モードの監視がサポートされています。 可能な状態コードを次に示します。

ステータス コード 状態 説明
0 Unknown 不明な状態。
1 実行中 AssignedAccess アカウント (キオスクまたはマルチアプリ) は正常に実行されています。
2 AppNotFound キオスク アプリはコンピューターにデプロイされません。
3 ActivationFailed AssignedAccess アカウント (キオスクまたはマルチアプリ) のサインインに失敗しました。
4 AppNoResponse キオスク アプリは正常に起動されましたが、応答しなくなった。

さらに、Status ペイロードには次のフィールドが含まれます。

  • profileId: MDM サーバーによって、エラーの原因となったアカウントを関連付けるために使用できます。
  • OperationList: 割り当てられたアクセス CSP (存在する場合) の適用中に発生した失敗した操作の一覧が表示されます。

説明フレームワークのプロパティ:

プロパティ名 プロパティ値
形式 chr (string)
アクセスの種類 [ゲームをゲット] を選びます

AssignedAccessAlert XSD:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema
    elementFormDefault="qualified"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.microsoft.com/AssignedAccess/2018/AssignedAccessAlert"
    xmlns:default="http://schemas.microsoft.com/AssignedAccess/2018/AssignedAccessAlert"
    targetNamespace="http://schemas.microsoft.com/AssignedAccess/2018/AssignedAccessAlert"
    >

    <xs:simpleType name="status_t">
        <xs:restriction base="xs:int">
            <xs:enumeration value="0"/> <!-- Unknown -->
            <xs:enumeration value="1"/> <!-- Running -->
            <xs:enumeration value="2"/> <!-- AppNotFound -->
            <xs:enumeration value="3"/> <!-- ActivationFailed -->
            <xs:enumeration value="4"/> <!-- AppNoResponse -->
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="guid_t">
        <xs:restriction base="xs:string">
            <xs:pattern value="\{[0-9a-fA-F]{8}\-([0-9a-fA-F]{4}\-){3}[0-9a-fA-F]{12}\}"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:complexType name="operation_t">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element name="name" type="xs:string" minOccurs="1" maxOccurs="1"/>
            <xs:element name="errorCode" type="xs:int" minOccurs="1" maxOccurs="1"/>
            <xs:element name="data" type="xs:string" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="operationlist_t">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element name="Operation" type="operation_t" minOccurs="1" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="event_t">
        <xs:sequence minOccurs="1" maxOccurs="1">
            <xs:element name="status" type="status_t" minOccurs="1" maxOccurs="1"/>
            <xs:element name="profileId" type="guid_t" minOccurs="1" maxOccurs="1"/>
            <xs:element name="errorCode" type="xs:int" minOccurs="0" maxOccurs="1"/>
            <xs:element name="OperationList" type="operationlist_t" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <xs:attribute name="Name" type="xs:string" use="required"/>
    </xs:complexType>

    <xs:element name="Events">
        <xs:complexType>
            <xs:choice minOccurs="1" maxOccurs="1">
                <xs:element name="Event" type="event_t" minOccurs="1" maxOccurs="1"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

:

<SyncML xmlns='SYNCML:SYNCML1.2'>
   <SyncBody>
       <Get>
           <CmdID>2</CmdID>
           <Item>
               <Target>
                 <LocURI>./Device/Vendor/MSFT/AssignedAccess/Status</LocURI>
               </Target>
           </Item>
       </Get>
       <Final />
   </SyncBody>
</SyncML>

StatusConfiguration

適用範囲 エディション 対象となる OS
✅ デバイス
❌ ユーザー
✅ Pro
✅ Enterprise
✅ Education
✅ Windows SE
✅ IoT Enterprise / IoT Enterprise LTSC
✅Windows 10、バージョン 1803 [10.0.17134] 以降
./Vendor/MSFT/AssignedAccess/StatusConfiguration

このノードは、StatusConfiguration xml を入力として受け入れます。

StatusConfiguration xml 内の StatusEnabled ノードには、次の 3 つの値が使用できます。

  • オン
  • OnWithAlerts
  • オフ

既定では、StatusConfiguration ノードは存在せず、この機能がオフであることを意味します。 CSP を使用して有効にすると、割り当てられたアクセスはキオスク アプリの状態をチェックし、MDM サーバーが [状態] ノードから最新の状態を照会するまで待機します。 必要に応じて、MDM サーバーは MDM アラートにオプトインして、MDM アラートが生成され、割り当てられたアクセス ランタイムの状態が変更されたときにすぐに MDM サーバーに送信されるようにすることができます。 この MDM アラートには、[状態] ノードで使用できる状態ペイロードが含まれます。 この MDM アラート ヘッダーは、次のように定義されます。

  • MDMAlertMark: Critical
  • MDMAlertType: com.microsoft.mdm.assignedaccess.status
  • MDMAlertDataType: string
  • ソース: ./Vendor/MSFT/AssignedAccess
  • ターゲット: N/A

MDM アラートは、エラーに対してのみ送信されます。

説明フレームワークのプロパティ:

プロパティ名 プロパティ値
形式 chr (string)
アクセスの種類 追加、削除、取得、置換

StatusConfiguration XSD:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema
    elementFormDefault="qualified"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns="http://schemas.microsoft.com/AssignedAccess/2018/StatusConfiguration"
    xmlns:default="http://schemas.microsoft.com/AssignedAccess/2018/StatusConfiguration"
    targetNamespace="http://schemas.microsoft.com/AssignedAccess/2018/StatusConfiguration"
    >

    <xs:simpleType name="status_enabled_t">
        <xs:restriction base="xs:string">
            <xs:enumeration value="Off"/>
            <xs:enumeration value="On"/>
            <xs:enumeration value="OnWithAlerts"/>
        </xs:restriction>
    </xs:simpleType>

    <!--below is the definition of the config xml content-->
    <xs:element name="StatusConfiguration">
        <xs:complexType>
            <xs:sequence minOccurs="1" maxOccurs="1">
                <xs:element name="StatusEnabled" type="status_enabled_t" minOccurs="1" maxOccurs="1"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

:

  • StatusEnabled が OnWithAlerts に設定されている StatusConfiguration を追加する

    <SyncML xmlns='SYNCML:SYNCML1.2'>
      <SyncBody>
        <Add>
          <CmdID>2</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/AssignedAccess/StatusConfiguration</LocURI>
            </Target>
            <Meta>
              <Format xmlns="syncml:metinf">chr</Format>
            </Meta>
            <Data>
              <![CDATA[
              <?xml version="1.0" encoding="utf-8" ?>
              <StatusConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2018/StatusConfiguration">
                <StatusEnabled>OnWithAlerts</StatusEnabled>
              </StatusConfiguration>
              ]]>
            </Data>
          </Item>
        </Add>
        <Final />
      </SyncBody>
    </SyncML>
    
  • StatusConfiguration の削除

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Delete>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                      <LocURI>./Device/Vendor/MSFT/AssignedAccess/StatusConfiguration</LocURI>
                    </Target>
                </Item>
            </Delete>
            <Final />
        </SyncBody>
    </SyncML>
    
  • Get StatusConfiguration

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Get>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                      <LocURI>./Device/Vendor/MSFT/AssignedAccess/StatusConfiguration</LocURI>
                    </Target>
                </Item>
            </Get>
            <Final />
        </SyncBody>
    </SyncML>
    
  • StatusEnabled の値を On に置き換えます

    <SyncML xmlns='SYNCML:SYNCML1.2'>
      <SyncBody>
        <Replace>
          <CmdID>2</CmdID>
          <Item>
            <Target>
              <LocURI>./Device/Vendor/MSFT/AssignedAccess/StatusConfiguration</LocURI>
            </Target>
            <Meta>
              <Format xmlns="syncml:metinf">chr</Format>
            </Meta>
            <Data>
              <![CDATA[
              <?xml version="1.0" encoding="utf-8" ?>
              <StatusConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2018/StatusConfiguration">
                <StatusEnabled>On</StatusEnabled>
              </StatusConfiguration>
              ]]>
            </Data>
          </Item>
        </Replace>
        <Final />
      </SyncBody>
    </SyncML>
    

AssignedAccessConfiguration XSD

割り当てられたアクセス XSD リファレンス記事を次に示します。 割り当て済みアクセス XML スキーマ定義 (XSD) です。

割り当てられたアクセス構成ファイルの実際の例については、「 割り当てられたアクセスの例」を参照してください。

構成での XML の処理

データ ノード内の XML エンコード (エスケープ) と CDATA の両方で、DM クライアントが SyncML を適切に解釈し、構成 xml を文字列として (元の形式ではエスケープされていない) として AssignedAccess CSP に送信して処理できるようにします。

同様に、構成 xml 内の StartLayout xml は、xml 内の xml と同じ形式を文字列として使用します。 上記のサンプル構成 xml では、CDATA を使用して StartLayout xml を埋め込みます。 CDATA を使用して SyncML に構成 xml を埋め込む場合は、CDATA が入れ子になっているので、指定された CDATA サンプルで CDATA を使用する方法に注意してください。 つまり、構成 xml が構築されている場合、MDM サーバーは開始レイアウト xml をエスケープするか、CDATA 内に startlayout xml を配置できます。MDM サーバーが SyncML 内に構成 xml を配置すると、MDM サーバーはそれをエスケープするか、CDATA でラップすることもできます。

エスケープと CDATA は、xml で xml を処理するときに使用されるメカニズムです。 構成 xml をサーバーからクライアントにペイロードとして送信する輸送チャネルであると考えてください。 CSP を構成するエンド ユーザーと CSP の両方に対して透過的です。 サーバー側の顧客と CSP の両方で、元の構成 XML のみを表示する必要があります。

  • この例では、Data ノードのエスケープされた XML を示します。

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Add>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/Configuration</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>
                        &lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
    &lt;AssignedAccessConfiguration xmlns=&quot;http://schemas.microsoft.com/AssignedAccess/2017/config&quot;&gt;
        &lt;Profiles&gt;
            &lt;Profile Id=&quot;{9A2A490F-10F6-4764-974A-43B19E722C23}&quot;&gt;
                &lt;AllAppsList&gt;
                    &lt;AllowedApps&gt;
                        &lt;App DesktopAppPath=&quot;C:\Windows\System32\notepad.exe&quot; /&gt;
                    &lt;/AllowedApps&gt;
                &lt;/AllAppsList&gt;
                &lt;StartLayout&gt;
                    &lt;![CDATA[&lt;LayoutModificationTemplate xmlns:defaultlayout=&quot;http://schemas.microsoft.com/Start/2014/FullDefaultLayout&quot; xmlns:start=&quot;http://schemas.microsoft.com/Start/2014/StartLayout&quot; Version=&quot;1&quot; xmlns=&quot;http://schemas.microsoft.com/Start/2014/LayoutModification&quot;&gt;
                          &lt;LayoutOptions StartTileGroupCellWidth=&quot;6&quot; /&gt;
                          &lt;DefaultLayoutOverride&gt;
                            &lt;StartLayoutCollection&gt;
                              &lt;defaultlayout:StartLayout GroupCellWidth=&quot;6&quot;&gt;
                                &lt;start:Group Name=&quot;Group1&quot;&gt;
                                  &lt;start:Tile Size=&quot;4x4&quot; Column=&quot;0&quot; Row=&quot;0&quot; AppUserModelID=&quot;Microsoft.ZuneMusic_8wekyb3d8bbwe!Microsoft.ZuneMusic&quot; /&gt;
                                &lt;/start:Group&gt;
                              &lt;/defaultlayout:StartLayout&gt;
                            &lt;/StartLayoutCollection&gt;
                          &lt;/DefaultLayoutOverride&gt;
                        &lt;/LayoutModificationTemplate&gt;
                    ]]&gt;
                &lt;/StartLayout&gt;
                &lt;Taskbar ShowTaskbar=&quot;true&quot;/&gt;
            &lt;/Profile&gt;
        &lt;/Profiles&gt;
        &lt;Configs&gt;
            &lt;Config&gt;
                &lt;Account&gt;MultiAppKioskUser&lt;/Account&gt;
                &lt;DefaultProfile Id=&quot;{9A2A490F-10F6-4764-974A-43B19E722C23}&quot;/&gt;
            &lt;/Config&gt;
        &lt;/Configs&gt;
    &lt;/AssignedAccessConfiguration&gt;
    
                    </Data>
                </Item>
            </Add>
            <Final />
        </SyncBody>
    </SyncML>
    
  • この例では、XML の CData を示します。

    <SyncML xmlns='SYNCML:SYNCML1.2'>
        <SyncBody>
            <Add>
                <CmdID>2</CmdID>
                <Item>
                    <Target>
                        <LocURI>./Device/Vendor/MSFT/AssignedAccess/Configuration</LocURI>
                    </Target>
                    <Meta>
                        <Format xmlns="syncml:metinf">chr</Format>
                    </Meta>
                    <Data>
                        <![CDATA[<?xml version="1.0" encoding="utf-8" ?>
    <AssignedAccessConfiguration xmlns="http://schemas.microsoft.com/AssignedAccess/2017/config">
      <Profiles>
        <Profile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}">
          <AllAppsList>
            <AllowedApps>
              <App DesktopAppPath="C:\Windows\System32\notepad.exe" />
            </AllowedApps>
          </AllAppsList>
          <StartLayout>
            <![CDATA[<LayoutModificationTemplate xmlns:defaultlayout="http://schemas.microsoft.com/Start/2014/FullDefaultLayout" xmlns:start="http://schemas.microsoft.com/Start/2014/StartLayout" Version="1" xmlns="http://schemas.microsoft.com/Start/2014/LayoutModification">
                          <LayoutOptions StartTileGroupCellWidth="6" />
                          <DefaultLayoutOverride>
                            <StartLayoutCollection>
                              <defaultlayout:StartLayout GroupCellWidth="6">
                                <start:Group Name="Group1">
                                  <start:Tile Size="4x4" Column="0" Row="0" AppUserModelID="Microsoft.ZuneMusic_8wekyb3d8bbwe!Microsoft.ZuneMusic" />
                                </start:Group>
                                <start:Group Name="Group2">
                                  <start:DesktopApplicationTile Size="2x2" Column="2" Row="0" DesktopApplicationID="{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\mspaint.exe" />
                                  <start:DesktopApplicationTile Size="2x2" Column="0" Row="0" DesktopApplicationID="{1AC14E77-02E7-4E5D-B744-2EB1AE5198B7}\notepad.exe" />
                                </start:Group>
                              </defaultlayout:StartLayout>
                            </StartLayoutCollection>
                          </DefaultLayoutOverride>
                        </LayoutModificationTemplate>
                      ]]]]><![CDATA[>
          </StartLayout>
          <Taskbar ShowTaskbar="true"/>
        </Profile>
      </Profiles>
      <Configs>
        <Config>
          <Account>MultiAppKioskUser</Account>
          <DefaultProfile Id="{9A2A490F-10F6-4764-974A-43B19E722C23}"/>
        </Config>
      </Configs>
    </AssignedAccessConfiguration>
    ]]>
                    </Data>
                </Item>
            </Add>
            <Final />
        </SyncBody>
    </SyncML>
    

構成サービス プロバイダーのリファレンス