Регистрация идентификатора клиента принтера универсальной печати (UP)
Необходимые разрешения API клиентского приложения принтера OEM
Универсальная печать поддерживает маркер доступа к авторизации OAuth2, выданный Azure. Для разработки принтера универсальной печати требуется, чтобы OEM зарегистрировал клиентское приложение в Azure с необходимым набором разрешений. OAuth2 определяет 2 типа запросов разрешений .
Делегированные разрешения области
Область | Отображаемая строка | Description | Требуется согласие администратора |
---|---|---|---|
Printers.Create | Создайте и зарегистрируйте новый принтер. | Позволяет приложению создавать и зарегистрировать принтер от имени вошедшего пользователя. | Да |
Разрешения области приложения
Область | Отображаемая строка | Description | Требуется согласие администратора |
---|---|---|---|
Printers.Read | Считывать принтеры, к которых у учетной записи есть доступ. | Позволяет приложению считывать принтеры без вошедшего пользователя. | Да |
PrinterProperties.ReadWrite | Доступ к свойствам и атрибутам принтера считывания и записи. | Позволяет приложению считывать и записывать свойства и атрибуты принтера без вошедшего пользователя. | Да |
PrintJob.ReadWriteBasic | Чтение и запись метаданных задания печати. | Позволяет приложению считывать и записывать метаданные заданий печати пользователей без входа пользователя. | Да |
PrintJob.Read | Чтение метаданных задания печати и полезных данных. | Позволяет приложению считывать метаданные и полезные данные заданий печати пользователей без вошедшего пользователя. | Да |
Регистрация клиентских приложений принтера OEM
- Создайте мультитенантное приложение с помощью клиента разработки приложений вашей компании.
- Настройте мультитенантное приложение для запроса требуемого набора разрешений область, как описано выше.
- Printers.Create [Делегировано]
- Printers.Read [Приложение]
- PrinterProperties.ReadWrite [Приложение]
- PrintJob.ReadWriteBasic [Application]
- PrintJob.Read [Приложение]
Регистрация нового приложения
Скопируйте зарегистрированный идентификатор приложения для последующего использования
Настройка параметра проверки подлинности приложения
Добавление необходимых разрешений API с помощью портал Azure
После нажатия кнопки "Добавить разрешение" всплывающий элемент появится справа. В всплывающем элементе выберите "API Майкрософт".
Скорее всего, вам потребуется прокрутить вниз в всплывающем элементе, чтобы найти "Универсальная печать"
Добавьте разрешения, упоминание указанные выше.
При добавлении необходимых разрешений разрешения приложения должны выглядеть следующим образом:
Если вы ищете другой способ настройки разрешений API, см. раздел "Альтернативный вариант".
Обновление издателя клиентского приложения принтера OEM
По умолчанию зарегистрированное приложение будет иметь "неверифицированного" издателя. Если оставить без изменений, клиенты увидят "неотверенную" в диалоговом окне согласия на разрешение. Следуйте инструкциям . Настройка домена издателя приложения для задания издателя приложения.
Для быстрого получения справки основные шаги:
Примечание.
После интеграции этого идентификатора клиентского приложения принтера в код, запущенный на принтере, при первом регистрации принтера в клиенте универсальной печати будет предложено предоставить этому приложению Администратор istrator.
При обновлении домена издателя до проверенного домена диалоговое окно согласия запроса на разрешение приложения отобразит проверенное значение домена.
Пример запроса проверки подлинности устройства OAuth 2.0
После завершения описанных выше действий можно запросить проверку, выпустив HTTP-запрос https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode
POST для синтаксиса текста HTTP
client_id={registered printer client ID}&scope=https%3A%2F%2Fprint.print.microsoft.com%2F.default
POST https://login.microsoftonline.com/organizations/oauth2/v2.0/devicecode HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
client_id=3e41cb36-3180-4566-bf3d-51ec873419e5&scope=https%3A%2F%2Fprint.print.microsoft.com%2F.default
Альтернативный параметр для добавления необходимых разрешений API
- Поиск
requiredResourceAccess
раздела в манифесте - Скопируйте и вставьте следующие необходимые разрешения API в манифест. Самый простой способ заключается в замене всего
requiredResourceAccess
раздела манифеста.
"requiredResourceAccess": [
{
"resourceAppId": "da9b70f6-5323-4ce6-ae5c-88dcc5082966",
"resourceAccess": [
{
"id": "3e306194-d6c5-43ad-afbb-0e7b16a9c10b",
"type": "Scope"
},
{
"id": "1c90a3a7-465b-49c4-adcc-c8ac83d3d3f8",
"type": "Role"
},
{
"id": "2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8",
"type": "Role"
},
{
"id": "b695614a-52ec-4835-9e13-bdf5ff4c7448",
"type": "Role"
},
{
"id": "11f87dac-027f-4d76-bd29-1ea1536b93da",
"type": "Role"
}
]
}
],
значение | Описание |
---|---|
Область действия | Этот доступ к ресурсам определен для использования делегированного разрешения область. |
Роль | Этот доступ к ресурсам определяется для использования разрешения приложения область. |
da9b70f6-5323-4ce6-ae5c-88dcc5082966 | Идентификатор универсальной печати в глобальном облаке Azure. |
3e306194-d6c5-43ad-afbb-0e7b16a9c10b | Идентификатор разрешения Printers.Create. |
1c90a3a7-465b-49c4-adcc-c8ac83d3d3d3f8 | Идентификатор разрешения PrinterProperties.ReadWrite. |
2b1bdd6b-9a0f-47c6-a806-b3e20cfd07a8 | Идентификатор разрешения Printers.Read. |
b695614a-52ec-4835-9e13-bdf5ff4c7448 | Идентификатор разрешения PrintJob.Read. |
11f87dac-027f-4d76-bd29-1ea1536b93da | Идентификатор разрешения PrintJob.ReadWriteBasic. |
- Сохраните изменения.