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.

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

各デバイス ファミリで Windows デバイス ポータルを利用できますが、機能とセットアップは各デバイスの要件によって異なります。Windows Device Portal is available on each device family, but features and setup vary based on each 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 デバイス ポータルの機能は、REST API を使用して実装されています。REST API は、プログラムを使用してデータに直接アクセスしてデバイスを制御するために使用できます。The functionality of the Windows Device Portal is implemented with REST APIs that you can use directly to access 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. デバイスで開発者モードとデバイス ポータルを有効にします (設定アプリで構成)。Enable Developer Mode and Device Portal on your device (configured in the Settings app).

  2. デバイスと PC をローカル ネットワーク経由または USB を使用して接続します。Connect your device and PC through a local network or with USB.

  3. ブラウザーでデバイス ポータルのページに移動します。Navigate to the Device Portal page in your browser. 次の表は、各デバイス ファミリで使用されるポートとプロトコルを示しています。This table shows the ports and protocols 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:10080
IoTIoT 開発者モードでオンYes, in Dev Mode 80808080 レジストリ キーで有効化するEnable via regkey なしN/A
XboxXbox 開発者モードで有効化するEnable inside Dev Mode 無効Disabled 1144311443 なしN/A
デスクトップDesktop 開発者モードで有効化するEnable inside Dev Mode 50080*50080* 50043*50043* なしN/A
電話Phone 開発者モードで有効化するEnable inside Dev Mode 8080 443443 http://127.0.0.1:10080

* デスクトップ上のデバイス ポータルが、デバイス上の既存のポート要求との競合を避ける目的でエフェメラル範囲 (>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 features.

  • [電源] :電源オプションにアクセスします。Power: Access power options.
    • [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 device families are described here. デバイスによってはその他のオプションを利用できる場合があります。Other options might be available depending on the device. 詳しくは、お使いのデバイスの種類用のページをご覧ください。For more info, see the specific page for your device type.

アプリ マネージャーApps manager

アプリ マネージャーでは、ホスト デバイス上でアプリ パッケージとバンドルのインストール/アンインストールおよび管理を行う機能が提供されます。The Apps manager provides install/uninstall and management functionality for app packages and bundles on the host device.

デバイス ポータル アプリ マネージャーのページ

  • [Deploy apps](アプリのデプロイ) :ローカル、ネットワーク、または Web ホストからパッケージ アプリをデプロイし、ネットワーク共有からルーズ ファイルを登録します。Deploy apps: Deploy packaged apps from local, network, or web hosts and register loose files from network shares.
  • [Installed apps](インストール済みのアプリ) : ドロップダウン メニューを使用して、デバイスにインストールされているアプリを削除または開始します。Installed apps: Use the dropdown menu to remove or start apps that are installed on the device.
  • [Running apps](実行中のアプリ) : 現在実行中のアプリに関する情報を取得し、必要に応じて閉じます。Running apps: Get information about the apps that are currently running and close them as necessary.

アプリのインストール (サイドロード)Install (sideload) an app

Windows デバイス ポータルを使用して、開発中にアプリをサイドロードできます。You can sideload apps during development using Windows Device Portal:

  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. Windows デバイス ポータルで、 [Apps manager](アプリ マネージャー) ページに移動します。In Windows Device Portal, navigate to the Apps manager page.

  3. [Deploy apps](アプリのデプロイ) セクションで、 [ローカル ストレージ] を選択します。In the Deploy apps section, select Local Storage.

  4. [Select the application package](アプリケーション パッケージの選択) で、 [ファイルの選択] を選択し、サイドロードするアプリ パッケージを参照します。Under Select the application package, select Choose File and browse to the app package that you want to sideload.

  5. [Select certificate file (.cer) used to sign app package](アプリ パッケージに署名するために使用する証明書ファイル (.cer) の選択) で、 [ファイルの選択] を選択し、そのアプリ パッケージに関連付けられている証明書を参照します。Under Select certificate file (.cer) used to sign app package, select Choose File and browse to the certificate associated with that app package.

  6. アプリのインストールと共にオプションまたはフレームワークのパッケージをインストールする場合は、それぞれのボックスをオンにし、 [次へ] を選択して選択します。Check the respective boxes if you want to install optional or framework packages along with the app installation, and select Next to choose them.

  7. [インストール] を選択すると、インストールが開始されます。Select Install to initiate the installation.

  8. デバイス上で Windows 10 が S モードで実行されていて、特定の証明書がそのデバイスに初めてインストールされた場合は、デバイスを再起動します。If the device is running Windows 10 in S mode, and it is the first time that the given certificate has been installed on the device, restart the device.

証明書をインストールするInstall a certificate

または、Windows デバイス ポータルを使用して証明書をインストールし、他の方法でアプリをインストールすることもできます。Alternatively, you can install the certificate via Windows Device Portal, and install the app through other means:

  1. Windows デバイス ポータルで、 [Apps manager](アプリ マネージャー) ページに移動します。In Windows Device Portal, navigate to the Apps manager page.

  2. [Deploy apps](アプリのデプロイ) セクションで、 [証明書のインストール] を選択します。In the Deploy apps section, select Install Certificate.

  3. [Select certificate file (.cer) used to sign app package](アプリ パッケージに署名するために使用する証明書ファイル (.cer) の選択) で、 [ファイルの選択] を選択し、サイドロードするアプリ パッケージに関連付けられている証明書を参照します。Under Select certificate file (.cer) used to sign an app package, select Choose File and browse to the certificate associated with the app package that you want to sideload.

  4. [インストール] を選択すると、インストールが開始されます。Select Install to initiate the installation.

  5. デバイス上で Windows 10 が S モードで実行されていて、特定の証明書がそのデバイスに初めてインストールされた場合は、デバイスを再起動します。If the device is running Windows 10 in S mode, and it is the first time that the given certificate has been installed on the device, restart the device.

アプリをアンインストールする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 you attempt to reinstall the app.
  3. ドロップダウンからアプリを選択し、 [削除] をクリックします。Select the app from the dropdown and click Remove.

実行中のプロセスRunning processes

このページには、ホスト デバイス上で現在実行中のプロセスの詳細が表示されます。This page shows details about processes currently running on the host device. これには、アプリとシステムの両方のプロセスが含まれます。This includes both apps and system processes. 一部のプラットフォーム (Desktop、IoT、および HoloLens) では、プロセスを終了することができます。On some platforms (Desktop, IoT, and HoloLens), you can terminate processes.

デバイス ポータルの [実行中のプロセス] ページ

エクスプローラーFile explorer

このページでは、サイドロードされた任意のアプリによって保存されたファイルを表示および操作できます。This page allows you to view and manipulate files stored by any sideloaded apps. エクスプローラーとその使用方法について詳しくは、アプリ エクスプローラーの使用に関するブログ記事をご覧ください。See the Using the App File Explorer blog post to learn more about the File explorer and how to use it.

デバイス ポータルの [エクスプローラー] ページ

[パフォーマンス]Performance

[パフォーマンス] ページには、電力消費、フレーム レート、CPU 負荷など、システムの診断情報のグラフがリアルタイムで表示されます。The Performance page shows real-time graphs of system diagnostic info like power usage, frame rate, and CPU load.

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

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

デバイス ポータルの [パフォーマンス] ページ

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

[ETW logging](ETW ログ) ページでは、デバイス上のリアルタイム Windows イベント トレーシング (ETW) 情報を管理します。The ETW logging page manages real-time Event Tracing for Windows (ETW) information on the device.

デバイス ポータルの [ETW logging](ETW ログ) ページ

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

  • [Registered providers](登録済みプロバイダー) : イベント プロバイダーとトレース レベルを選択します。Registered providers: Select the event provider and the tracing level. トレース レベルは次のいずれかの値になります。The 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 にはかっこを含めないでください。Do not include brackets in the GUID.

  • [Enabled providers](有効なプロバイダー) : 有効なプロバイダーを一覧表示します。Enabled providers: This 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: This 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.

  • [フィルター]/[イベント] : [イベント] セクションには、選択したプロバイダーの ETW イベントが表形式で一覧表示されます。Filters / Events: The Events section lists ETW events from the selected providers in table format. この表はリアルタイムで更新されます。The table is updated in real time. [フィルター] メニューを使用して、表示するイベントのカスタム フィルターを設定します。Use the Filters menu to set up custom filters for which events will be displayed. すべての ETW イベントを表から削除するには、 [クリア] ボタンをクリックします。Click the Clear button to delete all ETW events from the table. これによってプロバイダーが無効になることはありません。This does not disable any providers. [ファイルに保存] をクリックすると、現在収集されている ETW イベントをローカルの CSV ファイルにエクスポートできます。You can click Save to file to export the currently collected ETW events to a local CSV file.

ETW ログの使用について詳しくは、デバイス ポータルを使用したデバッグ ログの表示に関するブログ記事をご覧ください。For more details on using ETW logging, see the Use Device Portal to view debug logs blog post.

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

[パフォーマンスのトレース] ページでは、ホスト デバイスからの Windows パフォーマンス レコーダー (WPR) トレースを表示できます。The Performance tracing page allows you for view the Windows Performance Recorder (WPR) traces from the host device.

デバイス ポータルの [パフォーマンスのトレース] ページ

  • [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 finished downloading.

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

デバイス マネージャーDevice manager

[デバイス マネージャー] ページでは、デバイスに接続されているすべての周辺機器が列挙されます。The Device manager page enumerates all peripherals attached to your device. 設定アイコンをクリックして、それぞれのプロパティを表示できます。You can click the settings icons to view the properties of each.

デバイス ポータルの [デバイス マネージャー] ページ

ネットワークNetworking

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

  • [Available networks](使用可能なネットワーク) : デバイスで利用可能な Wi-Fi ネットワークが表示されます。Available networks: Shows 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 does not yet support Enterprise Authentication. [プロファイル] ドロップダウンを使用して、デバイスで認識されている任意の Wi-Fi プロファイルへの接続を試すこともできます。You can also use the Profiles dropdown to attempt to connect to any of the WiFi profiles known to the device.
  • [IP configuration](IP 構成) : 各ホスト デバイスのネットワーク ポートについてのアドレス情報が表示されます。IP configuration: Shows address information about each of the host device's network ports.

デバイス ポータルの [ネットワーク] ページ

サービスの機能と注意事項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.*", for example, 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 を使用できなくなります。This protection prevents usages of the REST APIs from a standalone client (such as command-line utilities). これは 3 つの方法で解決できます。This can be solved in 3 ways:

  • "auto-" ユーザー名を使用します。Use an "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. 例:デバイス ポータルのユーザー名が "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.
  • クライアントで 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.
  • 認証を無効にして、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.

クロスサイト 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.