Обзор портала устройств WindowsWindows 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 — это веб-сервер на устройстве, к которому можно подключаться из веб-браузера на ПК.Windows Device Portal is a web server on your device that you can connect to from a web browser on a PC. Если устройство оснащено веб-браузером, можно также подключаться локально из браузера на устройстве.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. В этой статье дается общее описание портала устройства, а также приведены ссылки на статьи, содержащие более подробные сведения по каждому семейству устройств.This article provides a general description of Device Portal and links to articles with more specific information for each device family.

Функциональность портала устройств Windows реализована на API-интерфейсах REST, которые можно использовать для прямого доступа к данным и программного управления устройством.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

Каждое устройство имеет свои инструкции для подключения к порталу устройства, однако к каждому из них применимы следующие общие действия: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. Подключите устройство к ПК по локальной сети или через 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
Интернет вещейIoT Да, в режиме разработки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 (Питание): доступ к параметрам электропитания.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 (Развертывание приложений): развертывание упакованных приложений из локальных, сетевых или веб-узлов и регистрация свободных файлов из общих сетевых ресурсов.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 (Развертывание приложений) выберите Local Storage (Локальное хранилище).In the Deploy apps section, select Local Storage.

  4. В разделе Select the application package (Выбор пакета приложения) щелкните Choose File (Выбрать файл) и найдите пакет неопубликованного приложения, который вы намерены загрузить.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-файл сертификата, использовавшийся для подписывания пакета приложения) щелкните Choose File (Выбрать файл) и перейдите к сертификату, который связан с этим пакетом приложения.Under Select certificate file (.cer) used to sign app package, select Choose File and browse to the certificate associated with that app package.

  6. Установите соответствующие флажки, если вы хотите установить необязательные пакеты или пакеты платформы вместе с приложением, и щелкните Next (Далее), чтобы выбрать их.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. Нажмите Install (Установить), чтобы запустить установку.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 (Развертывание приложений) выберите Install Certificate (Установить сертификат).In the Deploy apps section, select Install Certificate.

  3. В разделе Select certificate file (.cer) used to sign app package (Выбрать CER-файл сертификата, использовавшийся для подписывания пакета приложения) щелкните Choose File (Выбрать файл) и перейдите к сертификату, который связан с загружаемым пакетом приложения.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. Нажмите Install (Установить), чтобы запустить установку.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. Выберите приложение из раскрывающегося списка и щелкните Remove (Удалить).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. На некоторых платформах (настольные ПК, Интернет вещей и 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

На странице Performance (Производительность) в реальном времени отображаются графики системной диагностической информации, например энергопотребления, частоты кадров и загрузки ЦП.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: 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 позволяет управлять на устройстве трассировкой событий Windows (ETW) в режиме реального времени.The ETW logging page manages real-time Event Tracing for Windows (ETW) information on the device.

Портал устройств, страница ведения журнала трассировки событий Windows

Установите только флажок Скрыть поставщиков для отображения только списка «События».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

    Щелкните или нажмите Включить для запуска трассировки.Click or tap Enable to start tracing. Поставщик добавляется в раскрывающийся список Включенные поставщики.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. Выберите поставщика в раскрывающемся списке и щелкните или нажмите Отключить, чтобы остановить трассировки.Select a provider from the dropdown and click or tap Disable to stop tracing. Щелкните или нажмите Стоп, чтобы приостановить всю трассировку.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. Щелкните или нажмите Включить, чтобы активировать поставщика, который ранее был отключен.Click or tap Enable to activate a provider that was disabled. Щелкните или нажмите Очистить, чтобы очистить журнал.Click or tap Clear to clear the history.

  • Filters / Events (Фильтры и события): Раздел Events (События) содержит список событий трассировки событий Windows для выбранных поставщиков в формате таблицы.Filters / Events: The Events section lists ETW events from the selected providers in table format. Эта таблица обновляется в режиме реального времени.The table is updated in real time. Используйте меню Filters (Фильтры), чтобы настроить пользовательские фильтры для отображения событий.Use the Filters menu to set up custom filters for which events will be displayed. Нажмите кнопку Clear (Очистить), чтобы удалить из таблицы все события трассировки событий Windows.Click the Clear button to delete all ETW events from the table. Это не приводит к отключению каких-либо поставщиков.This does not disable any providers. Вы можете выбрать вариант Save to file (Сохранить в файл), чтобы экспортировать собранные события трассировки событий Windows в локальный CSV-файл.You can click Save to file to export the currently collected ETW events to a local CSV file.

Дополнительные сведения о ведении журналов трассировки событий Windows см. в этой записи блога.For more details on using ETW logging, see the Use Device Portal to view debug logs blog post.

Трассировка производительностиPerformance tracing

На странице Performance tracing (Трассировка производительности) можно просмотреть трассировки Windows Performance Recorder (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 (Обзор) для выбора профиля WPR на своем компьютере.Custom profiles: Click or tap Browse to choose a WPR profile from your PC. Щелкните или нажмите Передать и пуск для запуска трассировки.Click or tap Upload and start to start tracing.

Чтобы остановите трассировку, нажмите Остановить.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

На странице 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

На странице 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. Можно также использовать раскрывающийся список Profiles (Профили), чтобы попытаться подключиться к любому из известных устройству профилей 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.

Портал устройств, страница Networking (Сеть)

Возможности служб и примечанияService features and notes

DNS-SDDNS-SD

Портал устройств сообщает о своем присутствии в локальной сети с помощью DNS-SD.Device Portal advertises its presence on the local network using DNS-SD. Все экземпляры Портала устройств, независимо от типа устройства, объявляют себя с помощью "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 TypeType ОписаниеDescription
SS intint Защищенный порт Портала устройств.Secure port for Device Portal. Если значение равно нулю (0), Портал устройств не выполняет прослушивание на предмет подключений HTTPS.If 0 (zero), Device Portal is not listening for HTTPS connections.
DD строкаstring Тип устройства.Type of device. Значение имеет формат "Windows.*", например Windows.Xbox или Windows.DesktopThis will be in the format "Windows.*", for example, Windows.Xbox or Windows.Desktop
AA строкаstring Архитектура устройства.Device architecture. Архитектурой будет ARM, x86 или AMD64.This will be ARM, x86, or AMD64.
TT разбитый список строк нуль-символаnull-character delineated list of strings Пользовательские теги для устройства.User-applied tags for the device. Инструкции по использованию см. в разделе "Теги, REST API".See the Tags REST API for how to use this. Список заканчивается двойным символом NULL.List is double-null terminated.

Так как не все устройства прослушивают порт HTTP, объявляемый записью DNS-SD, подключение рекомендуется устанавливать к порту 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, извлекается из файла cookie сеанса — CSRF-Token.This token, the X-CSRF-Token request header, is derived from a session cookie, CSRF-Token. В веб-интерфейсе пользователя Портала устройств при каждом запросе файл cookie CSRF-Token копируется в заголовок X-CSRF-Token.In the Device Portal web UI, the CSRF-Token cookie is copied into the X-CSRF-Token header on each request.

Важно!

Эта защита ограничивает возможность использования API-интерфейсов REST автономным клиентом (например, служебными программами командной строки).This protection prevents usages of the REST APIs from a standalone client (such as command-line utilities). Эту проблему можно решить тремя способами: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. Важно не использовать это имя пользователя для входа на Портал устройств с помощью браузера, так как при этом служба будет становиться открытой для атак 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 серверу с каждым запросом в качестве части заголовка HTTP.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-атак все клиенты, открывающие WebSocket-соединение с порталом устройств должны также предоставлять заголовок источника, совпадающий с заголовком узла.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. Это демонстрирует порталу устройств, что запрос отправляется либо пользовательским интерфейсом портала устройств, либо действительным клиентским приложением.This proves to Device Portal that the request comes either from the Device Portal UI or a valid client application. Без заголовка источника запрос будет отклонен.Without the Origin header your request will be rejected.