Windows Device Portal の概要Windows Device Portal overview

Windows Device Portal では、ネットワーク経由でリモートから、または USB 接続によって、デバイスの構成と管理を行えます。The Windows Device Portal lets you configure and manage your device remotely over a network or USB connection. また、Windows デバイスのトラブルシューティングを行ったり、リアルタイムのパフォーマンスを表示するための高度な診断ツールも用意されています。It also provides advanced diagnostic tools to help you troubleshoot and view the real time performance of your Windows device.

デバイス ポータルは、お使いの PC に Web ブラウザーから接続することができるデバイス上の Web サーバーです。The Device Portal is a web server on your device that you can connect to from a web browser on your PC. デバイスに Web ブラウザーがある場合、デバイスのブラウザーにローカル接続することもできます。If your device has a web browser, you can also connect locally with the browser on your device.

各デバイス ファミリで Windows Device Portal を利用できますが、機能とセットアップはデバイスの要件によって異なります。Windows Device Portal is available on each device family, but features and setup vary based on the device's requirements. ここでは、Device Portal の一般的な説明と、各デバイス ファミリに関するさらに詳細な情報が掲載されている記事へのリンクを示します。This article provides a general description of Device Portal and links to articles with more specific information for each device family.

Windows Device Portal のすべての機能は REST API の上に構築されます。REST API を使用してデータにアクセスしたり、プログラムを使ってデバイスを制御することができます。Everything in the Windows Device Portal is built on top of REST API's that you can use to access the data and control your device programmatically.

セットアップSetup

Device Portal への接続の具体的な手順はデバイスによって異なりますが、どのデバイスでも次の一般的な手順が必要です。Each device has specific instructions for connecting to Device Portal, but each requires these general steps:

  1. デバイスで開発者モードと Device Portal を有効にします。Enable Developer Mode and Device Portal on your device.
  2. デバイスと PC をローカル ネットワークまたは USB 経由で接続します。Connect your device and PC via local network or USB.
  3. ブラウザーでデバイス ポータルのページに移動します。Navigate to the Device Portal page in your browser. 次の表は、各デバイス ファミリで使用されるポートとプロトコルを示しています。This table shows the ports and protcols used by each device family.
デバイス ファミリDevice family 既定でオンになっているかOn by default? HTTPHTTP HTTPSHTTPS USBUSB
HoloLensHoloLens 開発者モードでオンYes, in Dev Mode 80 (既定)80 (default) 443 (既定)443 (default) http://127.0.0.1:10080http://127.0.0.1:10080
IoTIoT 開発者モードでオンYes, in Dev Mode 80808080 レジストリ キーで有効化するEnable via regkey なしN/A
XboxXbox 開発者モードで有効化するEnable inside Dev Mode 無効Disabled 1144311443 なしN/A
DesktopDesktop 開発者モードで有効化するEnable inside Dev Mode 50080*50080* 50043*50043* なしN/A
PhonePhone 開発者モードで有効化するEnable inside Dev Mode 8080 443443 http://127.0.0.1:10080http://127.0.0.1:10080

* デスクトップ上の Device Portal が、デバイス上の既存のポート要求との競合を避ける目的で ephemeral ポートの範囲 (>50,000) にあるポートを要求するため、この表が当てはまらない場合があります。* This is not always the case, as Device Portal on desktop claims ports in the ephemeral range (>50,000) to prevent collisions with existing port claims on the device. 詳しくは、デスクトップに関する「ポート番号を設定する」のセクションをご覧ください。To learn more, see the Port Settings section for desktop.

デバイス固有のセットアップ手順については、以下をご覧ください。For device-specific setup instructions, see:

機能Features

ツールバーとナビゲーションToolbar and navigation

ページの最上部にあるツール バーでは、よく使われる状態や機能にアクセスできます。The toolbar at the top of the page provides access to commonly used status and features.

  • [Shutdown] (シャットダウン): デバイスをオフにします。Shutdown: Turns off the device.
  • [Restart] (再起動): デバイスの電源を入れ直します。Restart: Cycles power on the device.
  • [Help] (ヘルプ): ヘルプ ページを開きます。Help: Opens the help page.

ページの左側にあるナビゲーション ウィンドウのリンクを使用して、デバイスの管理と監視に利用可能なツールに移動します。Use the links in the navigation pane along the left side of the page to navigate to the available management and monitoring tools for your device.

ここでは、すべてのデバイスに共通のツールについて説明します。Tools that are common across devices are described here. デバイスによってはその他のオプションを利用できる場合があります。Other options might be available depending on the device. 詳しくは、お使いのデバイス用のページをご覧ください。For more info, see the specific page for your device.

ホームHome

デバイス ポータル セッションはホーム ページで開始します。Your Device Portal session starts at the home page. 通常、ホーム ページには、名前や OS のバージョンなどのデバイスに関する情報、およびデバイスについて設定できる項目が表示されます。The home page typically has information about the device, such as name and OS version, and preferences that you can set for the device.

アプリApps

デバイスへの AppX パッケージとバンドルのインストール/アンインストールおよび管理を行う機能を提供します。Provides install/uninstall and management functionality for AppX packages and bundles on your device.

モバイル用 Device Portal

  • [Installed apps] (インストール済みのアプリ): アプリを削除および起動します。Installed apps: Remove and start apps.
  • [Running apps] (実行中のアプリ): 現在実行されているアプリを一覧表示し、アプリを閉じるためのオプションを提供します。Running apps: Lists apps that are running currently and provides the option to close them.
  • [Install app] (アプリのインストール): コンピューターまたはネットワーク上のフォルダーからインストールするアプリ パッケージを選択します。Install app: Select app packages for installation from a folder on your computer or network.
  • [Dependency] (依存関係): インストールするアプリの依存関係を追加します。Dependency: Add dependencies for the app you are going to install.
  • [Deploy] (展開): 選択したアプリと依存関係をデバイスに展開します。Deploy: Deploy the selected app and dependencies to your device.

アプリをインストールするにはTo install an app

  1. アプリ パッケージを作成したら、デバイス上にリモートでインストールできます。When you've created an app package, you can remotely install it onto your device. Visual Studio でビルドすると、出力フォルダーが生成されます。After you build it in Visual Studio, an output folder is generated.

    アプリのインストール

  2. [参照] をクリックして、アプリ パッケージ (.appx) を検索します。Click browse and find your app package (.appx).
  3. [参照] をクリックして、証明書ファイル (.cer) を検索します。Click browse and find the certificate file (.cer). (デバイスによっては不要です。)(Not required on all devices.)
  4. 依存関係を追加します。Add dependencies. 1 つ以上ある場合は、それぞれを個別に追加します。If you have more than one, add each one individually.
  5. [Deploy] (展開) の下の [Go] (進む) をクリックします。Under Deploy, click Go.
  6. 別のアプリをインストールするには、[Reset] (リセット) ボタンをクリックしてフィールドをクリアします。To install another app, click the Reset button to clear the fields.

アプリをアンインストールするにはTo uninstall an app

  1. アプリが実行中でないことを確認します。Ensure that your app is not running.
  2. 実行中の場合、[Running apps] に移動してそのアプリを閉じます。If it is, go to 'running apps' and close it. アプリの実行中にアンインストールすると、そのアプリを再インストールしようとするときに問題が発生することがあります。If you attempt to uninstall while the app is running, it will cause issues when trying to re-install the app.
  3. 準備ができたら、[Uninstall] (アンインストール) をクリックします。Once you're ready, click Uninstall.

プロセスProcesses

現在実行中のプロセスに関する詳細を表示します。Shows details about currently running processes. これには、アプリとシステムの両方のプロセスが含まれます。This includes both apps and system processes.

このページでは、PC のタスク マネージャーと同様に、現在実行されているプロセスと、そのプロセスのメモリ使用量を確認できます。Much like the Task Manager on your PC, this page lets you see which processes are currently running as well as their memory usage. 一部のプラットフォーム (Desktop、IoT、および HoloLens) では、プロセスを終了することができます。On some platforms (Desktop, IoT, and HoloLens) you can terminate processes.

モバイル用 Device Portal

パフォーマンスPerformance

電力消費、フレーム レート、CPU 負荷など、システムの診断情報のグラフをリアルタイムで表示します。Shows real-time graphs of system diagnostic info, like power usage, frame rate, and CPU load.

利用可能なメトリックを次に示します。These are the available metrics:

  • [CPU]: 使用可能量の合計に対するパーセントCPU: Percent of total available
  • [Memory] (メモリ): 合計メモリ、使用中のメモリ、使用可能なコミット メモリ、ページ メモリ、および非ページ メモリMemory: Total, in use, available committed, paged, and non-paged
  • [GPU]: GPU エンジンの使用率、使用可能量の合計に対するパーセントGPU: GPU engine utilization, percent of total available
  • [I/O]: 読み取りと書き込みI/O: Reads and writes
  • [Network] (ネットワーク): 受信と送信Network: Received and sent

モバイル用 Device Portal

Windows イベント トレーシング (ETW)Event Tracing for Windows (ETW)

デバイス上の Windows イベント トレーシング (ETW) をリアルタイムで管理します。Manages realtime Event Tracing for Windows (ETW) on the device.

モバイル用 Device Portal

[Hide Providers] (プロバイダを非表示にする) チェックボックスをオンにすると、イベントの一覧のみが表示されます。Check Hide providers to show the Events list only.

  • [Registered providers] (登録済みプロバイダー): ETW プロバイダーとトレース レベルを選択します。Registered providers: Select the ETW provider and the tracing level. トレース レベルは次のいずれかの値になります。Tracing level is one of these values:
    1. 異常終了または終了Abnormal exit or termination
    2. 重大なエラーSevere errors
    3. 警告Warnings
    4. エラーではない警告Non-error warnings
    5. 詳細なトレース ()Detailed trace ()

トレースを開始するには、[Enable] (有効にする) をクリックまたはタップします。Click or tap Enable to start tracing. [Enabled Providers] (有効なプロバイダー) ドロップダウン リストにプロバイダーが追加されます。The provider is added to the Enabled Providers dropdown.

  • [Custom providers] (カスタム プロバイダー): カスタム ETW プロバイダーとトレース レベルを選択します。Custom providers: Select a custom ETW provider and the tracing level. GUID を使用してプロバイダーを識別します。Identify the provider by its GUID. GUID にはかっこを含めないでください。Don't include brackets in the GUID.
  • [Enabled providers] (有効なプロバイダー): 有効なプロバイダーを一覧表示します。Enabled providers: Lists the enabled providers. ドロップダウンからプロバイダーを選択し、[Disable] (無効にする) をクリックまたはタップしてトレースを停止します。Select a provider from the dropdown and click or tap Disable to stop tracing. すべてのトレースを中断するには、[Stop All] (すべて停止) をクリックまたはタップします。Click or tap Stop all to suspend all tracing.
  • [Providers history] (プロバイダー履歴): 現在のセッション中に有効になった ETW プロバイダーを表示します。Providers history: Shows the ETW providers that were enabled during the current session. 無効になっているプロバイダーをアクティブ化するには、[Enable] (有効にする) をクリックまたはタップします。Click or tap Enable to activate a provider that was disabled. 履歴をクリアするには、[Clear] (クリア) をクリックまたはタップします。Click or tap Clear to clear the history.
  • [Events] (イベント): 選択したプロバイダーの ETW イベントを表形式で一覧表示します。Events: Lists ETW events from the selected providers in table format. この表は、リアルタイムで更新されます。This table is updated in real time. すべての ETW イベントを表から削除するには、表の下にある [Clear] (クリア) ボタンをクリックします。Beneath the table, click the Clear button to delete all ETW events from the table. これによってプロバイダーが無効になることはありません。This does not disable any providers. [Save to file] (ファイルに保存) をクリックすると、現在収集されている ETW イベントをローカルの CSV ファイルにエクスポートできます。You can click Save to file to export the currently collected ETW events to a CSV file locally.

ETW トレースの使い方について詳しくは、アプリからリアルタイムのログを収集する方法に関するブログの記事をご覧ください。For more details on using ETW tracing, see the blogpost about using it to collect real-time logs from your app.

パフォーマンス トレースPerformance tracing

Windows Performance Recorder (WPR) のトレースをデバイスからキャプチャします。Capture Windows Performance Recorder (WPR) traces from your device.

モバイル用 Device Portal

  • [Available profiles] (利用可能なプロファイル): ドロップダウン リストから WPR プロファイルを選択し、[Start] (開始) をクリックまたはタップすると、トレースを開始できます。Available profiles: Select the WPR profile from the dropdown, and click or tap Start to start tracing.
  • [Custom profiles] (カスタム プロファイル): [Browse] (参照) をクリックまたはタップして、PC から WPR プロファイルを選択します。Custom profiles: Click or tap Browse to choose a WPR profile from your PC. [Upload and start] (アップロードして開始) をクリックまたはタップすると、トレースが開始します。Click or tap Upload and start to start tracing.

トレースを停止するには、[Stop] (停止) をクリックします。To stop the trace, click Stop. トレース ファイル (.ETL) のダウンロードが完了するまで、このページを閉じないでください。Stay on this page until the trace file (.ETL) has completed downloading.

キャプチャした ETL ファイルは、Windows Performance Analyzer で開いて分析に使用できます。Captured ETL files can be opened for analysis in Windows Performance Analyzer.

デバイスDevices

デバイスに接続されているすべての周辺機器を列挙します。Enumerates all peripherals attached to your device.

モバイル用 Device Portal

ネットワークNetworking

デバイス上のネットワーク接続を管理します。Manages network connections on the device. デバイス ポータルに USB 経由で接続している場合を除き、これらの設定を変更するとデバイス ポータルとの接続が切断される可能性があります。Unless you are connected to Device Portal via USB, changing these settings will likely disconnect you from Device Portal.

  • [Profiles] (プロファイル): 使用する Wi-Fi プロファイルを選択します。Profiles: Select a different WiFi profile to use.
  • [Available networks] (利用可能なネットワーク): デバイスで利用可能な Wi-Fi ネットワーク。Available networks: The WiFi networks available to the device. ネットワークをクリックまたはタップすると、そのネットワークに接続し、必要に応じてパスキーを提供できます。Clicking or tapping on a network will allow you to connect to it and supply a passkey if needed. 注: Device Portal では Enterprise Authentication はまだサポートされていません。Note: Device Portal does not yet support Enterprise Authentication.

モバイル用 Device Portal

アプリのエクスプローラーApp File Explorer

サイドロードされたアプリによって保存されたファイルを表示および操作できるようにします。Allows you to view and manipulate files stored by your sideloaded apps. これは、Windows Phone 8.1 の分離ストレージ エクスプローラーの新しいクロスプラットフォーム バージョンです。アプリのエクスプローラーとその使用方法について詳しくは、こちらのブログの投稿をご覧ください。This is a new, cross-platform version of the Isolated Storage Explorer from Windows Phone 8.1 See this blog post to learn more about the App File Explorer and how to use it.

モバイル用 Device Portal

サービスの機能と注意事項Service Features and Notes

DNS-SDDNS-SD

Device Portal は DNS-SD を使用して、ローカル ネットワーク上でその存在をアドバタイズしますDevice Portal advertises its presence on the local network using DNS-SD. Device Portal のすべてのインスタンスは、デバイスの種類に関係なく、"WDP._wdp._tcp.local" でアドバタイズします。All Device Portal instances, regardless of their device type, advertise under "WDP._wdp._tcp.local". サービス インスタンスの TXT レコードは、次の情報を提供します。The TXT records for the service instance provide the following:

キーKey Type 説明Description
SS intint Device Portal 用のセキュリティで保護されたポート。Secure port for Device Portal. 0 (ゼロ) の場合、Device Portal は HTTPS 接続をリッスンしていません。If 0 (zero), Device Portal is not listening for HTTPS connections.
DD stringstring デバイスの種類。Type of device. "Windows." の形式 (Windows.Xbox、Windows.Desktop など) になります。This will be in the format "Windows.", e.g. Windows.Xbox or Windows.Desktop
AA stringstring デバイスのアーキテクチャ。Device architecture. これは、ARM、x86、AMD64 のいずれかです。This will be ARM, x86, or AMD64.
TT null 文字で区切られた string のリストnull-character delineated list of strings ユーザーが適用したデバイスのタグ。User-applied tags for the device. 使い方については、タグの REST API に関する説明をご覧ください。See the Tags REST API for how to use this. リストは 2 つの null で終了します。List is double-null terminated.

DNS-SD レコードでアドバタイズされる HTTP ポートですべてのデバイスがリッスンしているわけではないため、HTTPS ポートでの接続をお勧めします。Connecting on the HTTPS port is suggested, as not all devices are listening on the HTTP port advertised by the DNS-SD record.

CSRF に対する保護とスクリプトCSRF Protection and Scripting

CSRF 攻撃に対する保護のために、すべての非 GET 要求に一意のトークンが必要です。In order to protect against CSRF attacks, a unique token is required on all non-GET requests. このトークン、X-CSRF-Token 要求ヘッダーは、セッション Cookie、CSRF-Token から派生します。This token, the X-CSRF-Token request header, is derived from a session cookie, CSRF-Token. Device Portal の Web UI では、CSRF-Token Cookie が、各要求の X-CSRF-Token にコピーされます。In the Device Portal web UI, the CSRF-Token cookie is copied into the X-CSRF-Token header on each request.

重要: この保護によって、スタンドアロン クライアント (コマンド ライン ユーティリティなど) から REST API を使用できなくなります。Important This protection prevents usages of the REST APIs from a standalone client (e.g. command-line utilities). これは 3 つの方法で解決できます。This can be solved in 3 ways:

  1. "auto-" というユーザー名を使用します。Use of the "auto-" username. クライアントはユーザー名の前に "auto-" を追加することによって、CSRF に対する保護を迂回できます。Clients that prepend "auto-" to their username will bypass CSRF protection. このユーザー名は、ブラウザーから Device Portal にログインするために使用しないでください。サービスが CSRF 攻撃を受ける可能性があります。It is important that this username not be used to log in to Device Portal through the browser, as it will open up the service to CSRF attacks. 例: Device Portal のユーザー名が "admin" である場合、CSRF に対する保護を迂回するために curl -u auto-admin:password <args> を使用します。Example: If Device Portal's username is "admin", curl -u auto-admin:password <args> should be used to bypass CSRF protection.

  2. クライアントで cookie-to-header スキームを実装します。Implement the cookie-to-header scheme in the client. そのためには、GET 要求でセッション Cookie を確立し、それ以降のすべての要求にヘッダーと Cookie の両方を含めます。This requires a GET request to establish the session cookie, and then the inclusion of both the header and the cookie on all subsequent requests.

  3. 認証を無効にして、HTTP を使用します。Disable authentication and use HTTP. CSRF に対する保護は HTTPS エンドポイントにのみ適用されるため、HTTP エンドポイントに接続する場合、上記のいずれの操作も必要ありません。CSRF protection only applies to HTTPS endpoints, so connections on HTTP endpoints will not need to do either of the above.

: ユーザー名が "auto-" で始まる場合、ブラウザーを使用して Device Portal にログインできません。Note: a username that begins with "auto-" will not be able to log into Device Portal via the browser.

クロスサイト WebSocket ハイジャック (CSWSH) に対する保護Cross-Site WebSocket Hijacking (CSWSH) protection

CSWSH 攻撃を防御するために、Device Portal に対して WebSocket 接続を開くすべてのクライアントは、Host ヘッダーと一致する Origin ヘッダーも提供する必要があります。To protect against CSWSH attacks, all clients opening a WebSocket connection to Device Portal must also provide an Origin header that matches the Host header. これにより、Device Portal に対して、要求が Device Portal の UI または有効なクライアント アプリケーションからの要求であることを証明します。This proves to Device Portal that the request comes either from the Device Portal UI or a valid client application. Origin ヘッダーがない場合、要求は拒否されます。Without the Origin header your request will be rejected.