RBAC (controle de acesso baseado em função) do Azure e Atualização de Dispositivo

A Atualização de Dispositivo usa o RBAC do Azure para fornecer autenticação e autorização para usuários e APIs de serviço. Para que outros usuários e aplicativos tenham acesso à Atualização de Dispositivo, os usuários ou aplicativos devem ter acesso a esse recurso. Também é necessário configurar o acesso para a entidade de serviço de Atualização de Dispositivo do Azure para implantar atualizações com êxito e gerenciar seus dispositivos.

Configurar funções de controle de acesso

Estas são as funções suportadas pela Atualização de Dispositivo:

Nome do Direito de Acesso Descrição
Administrador de atualização de dispositivo Tem acesso a todos os recursos de Atualização de Dispositivo
Leitor de atualização de dispositivo Pode visualizar todas as atualizações e implantações
Administrador de conteúdo de atualização de dispositivo Pode visualizar, importar e excluir atualizações
Leitor de conteúdo de atualização de dispositivo Pode ver atualizações
Administrador de implantações de atualização de dispositivo Pode gerenciar a implantação de atualizações em dispositivos
Leitor de implantações de atualização de dispositivo Pode visualizar implantações de atualizações para dispositivos

Uma combinação de funções pode ser usada para fornecer o nível certo de acesso. Por exemplo, um desenvolvedor pode importar e gerenciar atualizações usando a função Administrador de Conteúdo de Atualização de Dispositivo, mas precisa de uma função de Leitor de Implantações de Atualização de Dispositivo para exibir o progresso de uma atualização. Por outro lado, um operador de solução com a função Leitor de Atualização de Dispositivo pode exibir todas as atualizações, mas precisa usar a função Administrador de Implantações de Atualização de Dispositivo para implantar uma atualização específica nos dispositivos.

Configurando o acesso para a entidade de serviço de Atualização de Dispositivo do Azure no Hub IoT

A Atualização de Dispositivo para o Hub IoT se comunica com o Hub IoT para implantações e gerencia atualizações em escala. Para habilitar a Atualização de Dispositivo para fazer isso, os usuários precisam definir o acesso do Colaborador de Dados do Hub IoT para a Entidade do Serviço de Atualização de Dispositivo do Azure nas permissões do Hub IoT.

Ações de implantação, gerenciamento e diagnóstico de dispositivos e atualizações não serão permitidas se essas permissões não forem definidas. As operações que serão bloqueadas incluirão:

  • Criar Implementação
  • Cancelar implantação
  • Repetir implantação
  • Obter dispositivo

A permissão pode ser definida a partir do Controle de Acesso do Hub IoT (IAM). Consulte Configurar o acesso para a entidade de serviço de atualização de dispositivo do Azure no hub IoT vinculado

Autenticar em APIs REST de Atualização de Dispositivo

A Atualização de Dispositivo usa o ID do Microsoft Entra para autenticação em suas APIs REST. Para começar, você precisa criar e configurar um aplicativo cliente.

Criar aplicativo cliente Microsoft Entra

Para integrar um aplicativo ou serviço com o Microsoft Entra ID, primeiro registre um aplicativo cliente com o Microsoft Entra ID. A configuração do aplicativo cliente variará dependendo do fluxo de autorização necessário (usuários, aplicativos ou identidades gerenciadas). Por exemplo, para chamar a Atualização de Dispositivo de:

  • Aplicativo móvel ou de desktop, adicione a plataforma de aplicativos móveis e de desktop com https://login.microsoftonline.com/common/oauth2/nativeclient o URI de redirecionamento.
  • Website com início de sessão implícito, adicione plataforma Web e selecione Tokens de acesso (utilizados para fluxos implícitos).

Configurar permissões

Em seguida, adicione permissões para chamar a Atualização de Dispositivo ao seu aplicativo:

  1. Vá para a página de permissões da API do seu aplicativo e selecione Adicionar uma permissão.
  2. Vá para APIs que minha organização usa e procure Atualização de Dispositivo do Azure.
  3. Selecione user_impersonation permissão e selecione Adicionar permissões.

Solicitar token de autorização

A API REST de Atualização de Dispositivo requer um token de autorização OAuth 2.0 no cabeçalho da solicitação. As seções a seguir mostram alguns exemplos de maneiras de solicitar um token de autorização.

Utilizar a CLI do Azure

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

Usando a Biblioteca MSAL do PowerShell

MSAL.PS módulo PowerShell é um wrapper sobre a Biblioteca de Autenticação da Microsoft para .NET (MSAL .NET). Ele suporta vários métodos de autenticação.

Usando credenciais de usuário:

$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

Usando credenciais de usuário com código de dispositivo:

$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

Usando as credenciais do aplicativo:

$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

Suporte para identidades gerenciadas

As identidades gerenciadas fornecem aos serviços do Azure uma identidade gerenciada automaticamente no Microsoft Entra ID de maneira segura. Isso elimina a necessidade de os desenvolvedores terem que gerenciar credenciais fornecendo uma identidade. A Atualização de Dispositivo para o Hub IoT oferece suporte a identidades gerenciadas atribuídas pelo sistema.

Identidade gerida atribuída pelo sistema

Para adicionar e remover uma identidade gerenciada atribuída ao sistema no portal do Azure:

  1. Entre no portal do Azure e navegue até a sua conta desejada de Atualização de Dispositivo para o Hub IoT.
  2. Navegue até Identidade no portal de Atualização de Dispositivo para o Hub IoT
  3. Navegue até Identidade no portal do Hub IoT
  4. Na guia Atribuído pelo sistema, selecione Ativado e clique em Salvar.

Para remover a identidade gerenciada atribuída ao sistema de uma conta de atualização de dispositivo para hub IoT, selecione Desativado e clique em Salvar.

Passos Seguintes