Поделиться через


Обновление устройств Azure RBAC и Azure для Центр Интернета вещей

Для доступа пользователей и приложений к обновлению устройств Azure для Центр Интернета вещей им необходимо предоставить доступ к ресурсу обновления устройств. Субъект-служба обновления устройств также должен получить доступ к связанному центру Интернета вещей для развертывания обновлений и управления устройствами.

В этой статье объясняется, как обновление устройств и Центр Интернета вещей Azure использовать управление доступом на основе ролей Azure (Azure RBAC) для предоставления проверки подлинности и авторизации для пользователей и API-интерфейсов служб. В этой статье также описывается проверка подлинности идентификатора Microsoft Entra для REST API обновления устройств и поддержка управляемых удостоверений в обновлении устройств и Центр Интернета вещей Azure.

Роли управления доступом для обновления устройства

Обновление устройства поддерживает следующие роли RBAC. Дополнительные сведения см. в разделе "Настройка управления доступом" в учетной записи обновления устройств.

Имя роли Description
Администратор обновлений устройств Имеет доступ ко всем ресурсам Обновления устройств
Читатель обновлений устройств Может просматривать все обновления и развертывания.
Администратор содержимого обновлений устройств Может просматривать, импортировать и удалять обновления.
Читатель содержимого обновлений устройств Может просматривать обновления.
Администратор развертывания обновлений устройств Может управлять развертываниями обновлений на устройствах
Читатель развертывания обновлений устройств Может просматривать развертывания обновлений на устройствах.

Можно назначить сочетание ролей, чтобы обеспечить правильный уровень доступа. Например, можно использовать роль администратора содержимого обновления устройства для импорта обновлений и управления ими, но для просмотра хода выполнения обновления требуется роль читателя обновлений обновлений. И наоборот, с ролью читателя обновления устройств можно просмотреть все обновления, но для развертывания обновления устройств на устройствах требуется роль администратора развертывания обновлений устройств.

Доступ субъекта-службы обновления устройства к Центр Интернета вещей

Обновление устройства взаимодействует с связанным центром Интернета вещей для развертывания обновлений и управления ими в большом масштабе. Чтобы включить эту связь, необходимо предоставить субъекту-службе обновления устройств доступ к Центру Интернета вещей с ролью участника Центр Интернета вещей данных.

Предоставление этого разрешения позволяет выполнять следующие действия по развертыванию, управлению устройствами и обновлениями и диагностическим действиям:

  • Создать развертывание
  • Отмена развертывания
  • Повторная попытка развертывания
  • Получение устройства

Это разрешение можно задать на странице контроль доступа Центра Интернета вещей (IAM). Дополнительные сведения см. в разделе "Настройка доступа к Центру Интернета вещей" для субъекта-службы обновления устройств.

REST API обновления устройства

Обновление устройства использует идентификатор Microsoft Entra для проверки подлинности в своих REST API. Чтобы приступить к работе, создайте и настройте клиентское приложение.

Создание клиентского приложения Microsoft Entra

Чтобы интегрировать приложение или службу с идентификатором Microsoft Entra, сначала зарегистрируйте клиентское приложение с идентификатором Microsoft Entra. Настройка клиентского приложения зависит от необходимого потока авторизации: пользователей, приложений или управляемых удостоверений. Например:

  • Чтобы вызвать обновление устройств из мобильного или классического приложения, выберите общедоступный клиент или собственный (мобильный и классический) в разделе "Выбор платформы" и введите https://login.microsoftonline.com/common/oauth2/nativeclient универсальный код ресурса (URI перенаправления).

  • Чтобы вызвать обновление устройств с веб-сайта с неявным входом, используйте веб-платформу . В разделе "Неявное предоставление и гибридные потоки" выберите маркеры доступа (используемые для неявных потоков).

    Примечание.

    Используйте самый безопасный поток проверки подлинности. Неявная проверка подлинности потока требует высокой степени доверия к приложению и несет риски, которые не присутствуют в других потоках. Этот поток следует использовать только в том случае, если другие более безопасные потоки, такие как управляемые удостоверения, не являются жизнеспособными.

Настройка разрешений

Затем предоставьте приложению разрешения на вызов обновления устройств.

  1. Перейдите на страницу Разрешения API приложения и выберите Добавить разрешение.
  2. Перейдите к API, используемые моей организацией и выполните поиск по запросу Обновление устройств Azure.
  3. Выберите разрешение user_impersonation, а затем — Добавить разрешения.

Запрос маркера авторизации

Для REST API обновления устройства требуется маркер авторизации OAuth 2.0 в заголовке запроса. В следующих разделах показаны примеры некоторых способов запроса маркера авторизации.

Azure CLI

az login
az account get-access-token --resource 'https://api.adu.microsoft.com/'

Библиотека MSAL PowerShell

MSAL.PS Модуль PowerShell — это оболочка через библиотеку проверки подлинности Майкрософт для .NET (MSAL .NET), которая поддерживает различные методы проверки подлинности.

  • Учетные данные пользователя:

    $clientId = '<app_id>'
    $tenantId = '<tenant_id>'
    $authority = "https://login.microsoftonline.com/$tenantId/v2.0"
    $Scope = 'https://api.adu.microsoft.com/user_impersonation'
    
    Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope
    
  • Учетные данные пользователя с кодом устройства:

    $clientId = '<app_id>’
    $tenantId = '<tenant_id>’
    $authority = "https://login.microsoftonline.com/$tenantId/v2.0"
    $Scope = 'https://api.adu.microsoft.com/user_impersonation'
    
    Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -Interactive -DeviceCode
    
  • Учетные данные приложения:

    $clientId = '<app_id>’
    $tenantId = '<tenant_id>’
    $cert = '<client_certificate>'
    $authority = "https://login.microsoftonline.com/$tenantId/v2.0"
    $Scope = 'https://api.adu.microsoft.com/.default'
    
    Get-MsalToken -ClientId $clientId -TenantId $tenantId -Authority $authority -Scopes $Scope -ClientCertificate $cert
    

Поддержка управляемых удостоверений

Управляемые удостоверения предоставляют службам Azure безопасные, автоматически управляемые удостоверениями идентификаторов Microsoft Entra. Управляемые удостоверения устраняют необходимость управления учетными данными разработчиками путем предоставления удостоверений. Обновление устройства поддерживает назначаемые системой управляемые удостоверения.

Чтобы добавить управляемое удостоверение, назначаемое системой, для обновления устройств:

  1. В портал Azure перейдите к учетной записи обновления устройств.
  2. В области навигации>слева выберите "Параметры удостоверения".
  3. В разделе "Система" настранице "Удостоверение" установите значение "Состояние включено".
  4. Нажмите кнопку "Сохранить" и нажмите кнопку "Да".

Чтобы добавить управляемое удостоверение, назначаемое системой, для Центр Интернета вещей:

  1. Найдите нужный Центр Интернета вещей на портале Azure.
  2. В области навигации>слева выберите параметры безопасности Identity.
  3. В разделе "Назначаемое системой" на странице "Удостоверение" выберите "Вкл." в разделе "Состояние".
  4. Нажмите кнопку "Сохранить" и нажмите кнопку "Да".

Чтобы удалить управляемое удостоверение, назначаемое системой, из учетной записи обновления устройства или Центра Интернета вещей, установите или выберите "Отключить " на странице "Удостоверение ", а затем нажмите кнопку "Сохранить".