ロックダウン XML を使った Windows 10 Mobile の構成

企業は Windows 10 Mobile を使用して、デバイスのロックダウン、複数のユーザー ロールの定義、およびデバイス上のカスタム レイアウトの構成を行うことができます。 たとえば、企業はデバイスをロックダウンして、許可リストのアプリケーションと設定のみを使用可能にすることができます。

ここで示す XML の例は、プロビジョニング パッケージに含めるロックダウン XML ファイルで使用できます。または、モバイル デバイス管理 (MDM) ソリューションを使用して登録済みデバイスにロックダウン設定をプッシュするときに使用できます。

ロックダウン設定を適用すると、ロックダウン構成はデバイスの wehlockdown.xml ファイルに格納されます。

各構成項目の詳細については、EnterpriseAssignedAccess 構成サービス プロバイダー (CSP) のリファレンスで AssignedAccess/AssignedAccessXml の項を参照してください。

ロックダウン設定の順序

設定をロックダウンするとき構成項目は次の順序にする必要があります。

複数のアプリ パッケージの構成

複数のアプリ パッケージを使用して、同一パッケージ内に複数のアプリを存在させることができます。 製品 ID ではアプリケーションではなくパッケージが識別されるため、製品 ID の指定では、複数アプリ パッケージ内での個々のアプリを区別することはできません。 製品 ID のみを使用して複数アプリ パッケージのアプリケーション タイルをピン留めしようとすると、予期しない動作が発生することがあります。

複数アプリ パッケージのアプリケーションのピン留めをサポートするには、AUMID パラメーターを lockdown.xml に指定できます。

次の例は、Outlook のメールと Outlook のカレンダーの両方をピン留めする方法を示しています。

<Apps>
    <!-- Outlook Calendar -->
    <Application productId="{A558FEBA-85D7-4665-B5D8-A2FF9C19799B}" aumid="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendar">
        <PinToStart>
            <Size>Large</Size>
            <Location>
                <LocationX>1</LocationX>
                <LocationY>4</LocationY>
            </Location>
        </PinToStart>
    </Application>
    <!-- Outlook Mail-->
    <Application productId="{A558FEBA-85D7-4665-B5D8-A2FF9C19799B}" aumid="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.mail">
        <PinToStart>
            <Size>Large</Size>
            <Location>
                <LocationX>1</LocationX>
                <LocationY>6</LocationY>
            </Location>
        </PinToStart>
    </Application>
</Apps>

ロックダウン XML ファイルで使用するロックダウンの例

この XML の例は、Windows イメージングおよび構成デザイナー (ICD) で作成されるプロビジョニング パッケージに含めるロックダウン ファイルとして使用できます。 ただし、MDM を使用してロックダウン ファイルをデバイスに直接プッシュする場合は、XML を XML に埋め込むため、XML の例ではロックダウンのために文字をエスケープする必要があります (たとえば、< ではなく &lt;)。 このプロセスに役立つオンライン エスケープ ツールは簡単に見つかります。

<?xml version="1.0" encoding="utf-8"?>
<HandheldLockdown version="1.0" >
    <Default>
        <ActionCenter enabled="true" />
        <Apps>
            <!-- Settings -->
            <Application productId="{2A4E62D8-8809-4787-89F8-69D0F01654FB}">
                <PinToStart>
                    <Size>Large</Size>
                    <Location>
                        <LocationX>0</LocationX>
                        <LocationY>0</LocationY>
                    </Location>
                </PinToStart>
            </Application>
            <!-- Outlook Calendar -->
            <Application productId="{A558FEBA-85D7-4665-B5D8-A2FF9C19799B}" aumid="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendar">
                <PinToStart>
                    <Size>Small</Size>
                    <Location>
                        <LocationX>0</LocationX>
                        <LocationY>2</LocationY>
                    </Location>
                </PinToStart>
            </Application>
            <!-- Photos -->
            <Application productId="{FCA55E1B-B9A4-4289-882F-084EF4145005}">
                <PinToStart>
                    <Size>Medium</Size>
                    <Location>
                        <LocationX>2</LocationX>
                        <LocationY>2</LocationY>
                    </Location>
                </PinToStart>
            </Application>
            <!-- Edge -->
            <Application productId="{395589FB-5884-4709-B9DF-F7D558663FFD}" />
            <!-- Login App -->
            <Application productId="{C85DC60D-30D4-4C67-A4B4-58282F1D152C}" />
        </Apps>
        <Buttons>
            <ButtonLockdownList>
                <!-- Lockdown all buttons -->
                <Button name="Search">
                </Button>
                <Button name="Camera">
                </Button>
                <Button name="Custom1">
                </Button>
                <Button name="Custom2">
                </Button>
                <Button name="Custom3">
                </Button>
            </ButtonLockdownList>
            <ButtonRemapList>
                <Button name="Search">
                    <ButtonEvent name="Press">
                        <!-- Edge-->
                        <Application productId="{395589FB-5884-4709-B9DF-F7D558663FFD}" parameters="" />
                    </ButtonEvent>
                </Button>
            </ButtonRemapList>
        </Buttons>
        <CSPRunner>
            <SyncML xmlns="SYNCML:SYNCML1.2">
                <SyncBody>
                    <Replace>
                        <CmdID>1</CmdID>
                        <Item>
                            <Target>
                                <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeAccentColorID</LocURI>
                            </Target>
                            <Meta>
                                <Format xmlns="syncml:metinf">int</Format>
                            </Meta>
                            <!-- zero based index of available theme colors -->
                            <Data>7</Data>
                        </Item>
                    </Replace>
                    <Final/>
                </SyncBody>
            </SyncML>
            <SyncML xmlns="SYNCML:SYNCML1.2">
                <SyncBody>
                    <Replace>
                        <CmdID>1</CmdID>
                        <Item>
                            <Target>
                                <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeBackground</LocURI>
                            </Target>
                            <Meta>
                                <Format xmlns="syncml:metinf">int</Format>
                            </Meta>
                            <!-- 0 for "light", 1 for "dark" -->
                            <Data>1</Data>
                        </Item>
                    </Replace>
                    <Final/>
                </SyncBody>
            </SyncML>
            <SyncML xmlns="SYNCML:SYNCML1.2">
                <SyncBody>
                    <Replace>
                        <CmdID>2</CmdID>
                        <Item>
                            <Target>
                                <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/LockScreenWallpaper/BGFileName</LocURI>
                            </Target>
                            <Meta>
                                <Format xmlns="syncml:metinf">chr</Format>
                                <Type xmlns="syncml:metinf">text/plain</Type>
                            </Meta>
                            <Data>c:\windows\system32\lockscreen\480x800\Wallpaper_05.jpg</Data>
                        </Item>
                    </Replace>
                    <Final/>
                </SyncBody>
            </SyncML>
        </CSPRunner>
        <MenuItems>
            <DisableMenuItems/>
        </MenuItems>
        <Settings>
            <!-- Quick actions: Brightness, Rotation -->
            <System name="SystemSettings_System_Display_QuickAction_Brightness"/>
            <System name="SystemSettings_System_Display_Internal_Rotation"/>
            <!-- Brightness+Rotation, About -->
            <System name="SettingsPageGroupPCSystem"/>
            <System name="SettingsPageDisplay"/>
            <System name="SettingsPagePCSystemInfo"/>
            <!-- Ringtones, sounds -->
            <System name="SettingsPageGroupPersonalization"/>
            <System name="SettingsPageSounds"/>
        </Settings>
        <Tiles>
            <EnableTileManipulation/>
        </Tiles>
        <StartScreenSize>Small</StartScreenSize>
    </Default>
    <RoleList>
        <Role guid="{88501844-3b51-4c9f-9da7-7ca745e7da6b}" name="Associate">
            <ActionCenter enabled="0"/>
            <Apps>
                <!-- Settings -->
                <Application productId="{2A4E62D8-8809-4787-89F8-69D0F01654FB}">
                    <PinToStart>
                        <Size>Small</Size>
                        <Location>
                            <LocationX>0</LocationX>
                            <LocationY>0</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Outlook Calendar -->
                <Application productId="{A558FEBA-85D7-4665-B5D8-A2FF9C19799B}" aumid="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendar">
                    <PinToStart>
                        <Size>Large</Size>
                        <Location>
                            <LocationX>0</LocationX>
                            <LocationY>2</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Login App -->
                <Application productId="{C85DC60D-30D4-4C67-A4B4-58282F1D152C}" />
            </Apps>
            <Buttons />
            <CSPRunner>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>1</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeAccentColorID</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">int</Format>
                                </Meta>
                                <!-- zero based index of available theme colors -->
                                <Data>10</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>1</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeBackground</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">int</Format>
                                </Meta>
                                <!-- 0 for "light", 1 for "dark" -->
                                <Data>0</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>2</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/LockScreenWallpaper/BGFileName</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">chr</Format>
                                    <Type xmlns="syncml:metinf">text/plain</Type>
                                </Meta>
                                <Data>c:\windows\system32\lockscreen\480x800\Wallpaper_08.jpg</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
            </CSPRunner>
            <MenuItems>
                <DisableMenuItems/>
            </MenuItems>
            <Settings>
                <!-- Brightness+Rotation, Notifications, About -->
                <System name="SettingsPageGroupPCSystem"/>
                <System name="SettingsPageAppsNotifications"/>
                <System name="SettingsPageDisplay"/>
                <System name="SettingsPagePCSystemInfo"/>
                <!-- Ringtones, sounds -->
                <System name="SettingsPageGroupPersonalization"/>
                <System name="SettingsPageSounds"/>
                <!-- Workplace -->
                <System name="SettingsPageGroupAccounts"/>
                <System name="SettingsPageAccountsWorkplace"/>
            </Settings>
        </Role>
        <Role guid="{7bb62e8c-81ba-463c-b691-74af68230b42}" name="Manager">
            <ActionCenter enabled="true" />
            <Apps>
                <!-- Alarms and Clock -->
                <Application productId="{44F7D2B4-553D-4BEC-A8B7-634CE897ED5F}">
                    <PinToStart>
                        <Size>Small</Size>
                        <Location>
                            <LocationX>0</LocationX>
                            <LocationY>0</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Settings -->
                <Application productId="{2A4E62D8-8809-4787-89F8-69D0F01654FB}">
                    <PinToStart>
                        <Size>Small</Size>
                        <Location>
                            <LocationX>1</LocationX>
                            <LocationY>0</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Outlook Calendar -->
                <Application productId="{A558FEBA-85D7-4665-B5D8-A2FF9C19799B}" aumid="microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendar">
                    <PinToStart>
                        <Size>Medium</Size>
                        <Location>
                            <LocationX>2</LocationX>
                            <LocationY>0</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Calculator -->
                <Application productId="{B58171C6-C70C-4266-A2E8-8F9C994F4456}" />
                <!-- Photos -->
                <Application productId="{FCA55E1B-B9A4-4289-882F-084EF4145005}">
                    <PinToStart>
                        <Size>Small</Size>
                        <Location>
                            <LocationX>0</LocationX>
                            <LocationY>2</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Store -->
                <Application productId="{7D47D89A-7900-47C5-93F2-46EB6D94C159}">
                    <PinToStart>
                        <Size>Medium</Size>
                        <Location>
                            <LocationX>2</LocationX>
                            <LocationY>2</LocationY>
                        </Location>
                    </PinToStart>
                </Application>
                <!-- Login App -->
                <Application productId="{C85DC60D-30D4-4C67-A4B4-58282F1D152C}" />
            </Apps>
            <Buttons />
            <CSPRunner>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>1</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeAccentColorID</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">int</Format>
                                </Meta>
                                <!-- zero based index of available theme colors -->
                                <Data>2</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>1</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/Theme/ThemeBackground</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">int</Format>
                                </Meta>
                                <!-- 0 for "light", 1 for "dark" -->
                                <Data>1</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
                <SyncML xmlns="SYNCML:SYNCML1.2">
                    <SyncBody>
                        <Replace>
                            <CmdID>2</CmdID>
                            <Item>
                                <Target>
                                    <LocURI>./Vendor/MSFT/EnterpriseAssignedAccess/LockScreenWallpaper/BGFileName</LocURI>
                                </Target>
                                <Meta>
                                    <Format xmlns="syncml:metinf">chr</Format>
                                    <Type xmlns="syncml:metinf">text/plain</Type>
                                </Meta>
                                <Data>c:\windows\system32\lockscreen\480x800\Wallpaper_015.jpg</Data>
                            </Item>
                        </Replace>
                        <Final/>
                    </SyncBody>
                </SyncML>
            </CSPRunner>
            <MenuItems>
                <DisableMenuItems/>
            </MenuItems>
            <Settings>
                <!-- Allow all settings -->
            </Settings>
            <Tiles>
                <EnableTileManipulation/>
            </Tiles>
        </Role>
    </RoleList>
</HandheldLockdown>

ロックダウン XML をプロビジョニング パッケージに追加する

Windows 10 の Windows アセスメント & デプロイメント キット (ADK) に含まれている Windows ICD ツールを使って、プロビジョニング パッケージを作成します。 ADK をインストールします。

  1. プロビジョニング パッケージをビルドして適用する」の指示に従ってプロジェクトを作成し、プロジェクトについて [Common to all Windows mobile editions] (すべての Windows モバイル エディションに共通) を選択します。

  2. [利用可能なカスタマイズ] にアクセスして、[実行時の設定][EmbeddedLockdownProfiles][AssignedAccessXml] に移動します。

  3. 中央のウィンドウで [参照] をクリックし、作成したロックダウン XML ファイルを探して選択します。

    [参照] ボタン

  4. [ファイル] メニューの [保存] をクリックします。

  5. [エクスポート] メニューの [プロビジョニング パッケージ] をクリックします。

  6. [所有者][IT 管理者] に変更して、このプロビジョニング パッケージの優先順位を他のソースからこのデバイスに適用されるプロビジョニング パッケージよりも高くします。次に、[次へ] を選択します。

  7. (省略可能) [プロビジョニング パッケージ セキュリティ] ウィンドウで、パッケージの暗号化を選択してパッケージの署名を有効にできます。

    • [パッケージの暗号化を有効にする] - このオプションを選択した場合、自動生成されたパスワードが画面に表示されます。

    • [パッケージの署名を有効にする] - このオプションを選んだ場合、パッケージの署名に使う有効な証明書を選ぶ必要があります。 [選択] をクリックし、パッケージの署名に使う証明書を選んで、証明書を指定します。

  8. [次へ] をクリックし、ビルドしたプロビジョニング パッケージの出力先を指定します。 既定では、Windows ICD はプロジェクト フォルダーを出力先として使います。

    必要に応じて、[参照] をクリックして既定の出力先を変更できます。

  9. [次へ] をクリックします。

  10. パッケージのビルドを開始するには、[ビルド] をクリックします。 プロビジョニング パッケージのビルドにはそれほど時間はかかりません。 ビルド ページにプロジェクト情報が表示され、進行状況バーでビルドの状態が示されます。

    ビルドを取り消す必要がある場合は、[キャンセル] をクリックします。 これにより、現在のビルド プロセスが取り消され、ウィザードが閉じられて、[カスタマイズ ページ] に戻ります。

  11. ビルドに失敗した場合は、プロジェクト フォルダーへのリンクが含まれたエラー メッセージが表示されます。 エラーの原因を特定するには、ログを調べることができます。 問題が解決したら、パッケージをもう一度ビルドしてみてください。

    ビルドに成功した場合は、プロビジョニング パッケージの名前、出力ディレクトリ、プロジェクト ディレクトリが表示されます。

    • 必要に応じて、パッケージの出力先として別のパスを選択し、もう一度プロビジョニング パッケージをビルドすることもできます。 これを行うには、[戻る] をクリックして出力パッケージの名前とパスを変更し、[次へ] をクリックしてもう一度ビルドを開始します。

    • 完了したら、[完了] をクリックしてウィザードを閉じ、[カスタマイズ ページ] に戻ります。

プロビジョニング パッケージを作成したら、実行時に Windows 10 Mobile にプロビジョニング パッケージを適用する指示に従います。

MDM を使用してロックダウン XML をプッシュする

デバイスを展開した後も、MDM ソリューションが EnterpriseAssignedAccess CSP をサポートしている場合は、MDM ソリューションを介してロックダウン設定を構成できます。

ロックダウン設定を登録済みのデバイスにプッシュするには、AssignedAccessXML 設定を使用し、ロックダウン XML を値として使用します。 ロックダウン XML は、XML 内の埋め込み XML として HandheldLockdown セクションに含まれます。入力する XML では文字をエスケープする必要があります (< の代わりに &lt; など)。 MDM プロバイダーがロックダウン設定をデバイスにプッシュすると、CSP がファイルを処理してデバイスを更新します。

関連トピック

Windows 10 Mobile でロックダウンできる設定とクイックアクション

Windows 10 Mobile の製品 ID