Compartilhar via


Controle de acesso baseado em função em Gêmeos Digitais do Azure

Importante

Uma nova versão do serviço dos Gêmeos Digitais do Azure foi lançada. À luz das funcionalidades expandidas do novo serviço, o serviço original dos Gêmeos Digitais do Azure (descrito neste conjunto de documentação) foi desativado.

Para exibir a documentação do novo serviço, visite a Documentação ativa dos Gêmeos Digitais do Azure.

Os Gêmeos Digitais do Azure permitem um controle de acesso preciso sobre dados, recursos e ações específicos no grafo espacial. Ele faz isso por meio da função granular e do gerenciamento de permissões chamado RBAC ( controle de acesso baseado em função ). O RBAC consiste em funções e atribuições de funções. Funções de identificam o nível de permissões. As atribuições de função associam uma função com um usuário ou dispositivo.

Usando o RBAC, pode ser concedida permissão para:

  • Um usuário.
  • Um dispositivo.
  • Uma entidade de serviço.
  • Uma função definida pelo usuário.
  • Todos os usuários que pertencem a um domínio.
  • Um locatário.

O grau de acesso também pode ser ajustado.

O RBAC é único, pois as permissões são herdadas no gráfico espacial.

O que posso fazer com o RBAC?

Um desenvolvedor pode usar o RBAC para:

  • Conceda ao usuário a capacidade de gerenciar dispositivos para um prédio inteiro ou apenas para uma sala ou andar específico.
  • Conceda a um administrador acesso global a todos os nós de gráfico espacial para um gráfico inteiro ou apenas para uma seção do gráfico.
  • Conceda um acesso de leitura de especialista em suporte ao gráfico, exceto para as chaves de acesso.
  • Conceda a todos os membros de um domínio de acesso de leitura a todos os objetos de gráfico.

Práticas recomendadas de RBAC

O controle de acesso baseado em função é uma estratégia de segurança orientada por herança para o gerenciamento de acesso, permissões e funções. Funções descendentes herdam permissões das funções pai. As permissões também podem ser atribuídas sem serem herdadas de uma função pai. Eles também podem ser atribuídos para personalizar uma função conforme necessário.

Por exemplo, um administrador de espaço pode precisar de acesso global para executar todas as operações de um espaço especificado. O acesso inclui todos os nós abaixo ou dentro do espaço. Um instalador de dispositivo pode precisar apenas de read e atualização de permissões para dispositivos e sensores.

Em todos os casos, as funções são concedidas exatamente e não mais do que o acesso necessário para cumprir suas tarefas de acordo com o Princípio de Menor Privilégio. De acordo com esse princípio, uma identidade é concedida apenas:

  • A extensão de acesso necessária para concluir o trabalho.
  • Uma função apropriada e limitada para a realização do trabalho.

Importante

Sempre siga o princípio de privilégios mínimos.

Duas outras importantes práticas de controle de acesso baseadas em função devem ser seguidas:

  • Auditar periodicamente as atribuições de função para verificar se cada função tem as permissões corretas.
  • Limpe funções e atribuições quando os indivíduos mudam de função ou atribuição.

Funções

Definições de função

Uma definição de função é uma coleção de permissões e outros atributos que constituem uma função. Uma definição de função lista as operações permitidas, que incluem CRIAR, LER, ATUALIZAR e EXCLUIR que qualquer objeto com essa função pode executar. Ele também especifica a quais tipos de objeto as permissões se aplicam.

A tabela a seguir descreve as funções que estão disponíveis no Gêmeos Digitais do Azure:

Função Descrição Identificador
Administrador de Espaço Permissão CREATE, READ, UPDATE e DELETE para o espaço especificado e todos os nós abaixo. Permissão global. 98e44ad7-28d4-4007-853b-b9968ad132d1
Administrador de usuários Permissão CREATE, READ, UPDATE e DELETE para usuários e objetos relacionados ao usuário. Permissão READ para espaços. dfaac54c-f583-4dd2-b45d-8d4bbc0aa1ac
Administrador de Dispositivo Permissão CREATE, READ, UPDATE e DELETE para dispositivos e objetos relacionados aos dispositivos. Permissão READ para espaços. 3cdfde07-bc16-40d9-bed3-66d49a8f52ae
Administrador de Chave Permissão CREATE, READ, UPDATE e DELETE para chaves de acesso. Permissão READ para espaços. 5a0b1afc-e118-4068-969f-b50efb8e5da6
Administrador de Token Permissão READ e UPDATE para chaves de acesso. Permissão READ para espaços. 38a3bb21-5424-43b4-b0bf-78ee228840c3
Usuário Permissão READ para espaços, sensores e usuários, incluindo seus respectivos objetos relacionados. b1ffdb77-c635-4e7e-ad25-948237d85b30
Especialista de Suporte Permissão READ para tudo, exceto chaves de acesso. 6e46958b-dc62-4e7c-990c-c3da2e030969
Instalador do Dispositivo Permissão READ e UPDATE para dispositivos e sensores, incluindo seus respectivos objetos relacionados. Permissão READ para espaços. b16dd9fe-4efe-467b-8c8c-720e2ff8817c
Dispositivos de gateway Permissão CREATE para sensores. Permissão READ para dispositivos e sensores, que inclui seus objetos relacionados correspondentes. d4c69766-e9bd-4e61-bfc1-d8b6e686c7a8

Observação

Para recuperar as definições completas para funções anteriores, consulte as sistema/funções de API. Saiba mais, lendo Criar e gerenciar atribuições de função.

Tipos de identificador de objeto

O objectIdType (ou tipo de identificador de objeto) refere-se ao tipo de identidade que é dada a uma função. Além dos tipos DeviceId e UserDefinedFunctionId, os tipos de identificador de objeto correspondem às propriedades dos objetos do Azure Active Directory.

A tabela a seguir contém os tipos de identificador de objeto com suporte no Gêmeos Digitais do Azure:

Type Descrição
UserId Atribui uma função a um usuário.
deviceId Atribui uma função a um dispositivo.
DomainName Atribui uma função a um nome de domínio. Cada usuário com o nome de domínio especificado possui os direitos de acesso da função correspondente.
TenantId Atribui uma função a um locatário. Cada usuário que pertence ao ID de locatário do Microsoft Azure Active Directory especificado tem os direitos de acesso da função correspondente.
ServicePrincipalId Atribui uma função a uma ID de objeto de entidade de serviço.
UserDefinedFunctionId Atribui uma função a uma UDF (função definida pelo usuário).

Dica

Saiba como conceder permissões à entidade de serviço, lendo Criar e gerenciar atribuição de função.

Os seguintes artigos de documentação de referência descrevem:

Atribuições de função

Uma atribuição de função do Azure Digital Twins associa um objeto, como um usuário ou um locatário dos Gêmeos Digitais do Azure, a uma função e um espaço. As permissões são concedidas a todos os objetos que pertencem a esse espaço. O espaço inclui todo o gráfico espacial abaixo dele.

Por exemplo, um usuário recebe uma atribuição de função com a função DeviceInstaller para o nó raiz de um gráfico espacial, que representa um edifício. O usuário pode então ler e atualizar dispositivos para esse nó e todos os outros espaços filhos no edifício.

Para conceder permissões a um destinatário, crie uma atribuição de função. Para revogar permissões, remova a atribuição de função.

Importante

Saiba mais sobre atribuições de funções, lendo Criar e gerenciar atribuições de função.

Próximas etapas