Terminologia do Serviço de Provisionamento de Dispositivos no Hub IoT

O Serviço de Provisionamento de Dispositivos no Hub IoT (DPS) é um serviço auxiliar para o Hub IoT que permite o provisionamento de dispositivo de toque zero para hubs IoT. Com o Serviço de Provisionamento de Dispositivos, você pode provisionar milhões de dispositivos de uma maneira segura e escalonável.

O provisionamento de dispositivos é um processo de duas partes.

  1. A primeira parte estabelece a conexão inicial entre o dispositivo e a solução de IoT registrando o dispositivo.
  2. A segunda parte aplica a configuração adequada ao dispositivo com base nos requisitos específicos da solução.

Quando as duas etapas forem concluídas, o dispositivo será totalmente provisionado. O Serviço de Provisionamento de Dispositivos automatiza as etapas para fornecer uma experiência perfeita de provisionamento para o dispositivo.

Este artigo fornece uma visão geral dos conceitos de provisionamento aplicáveis ao gerenciamento do serviço. Este artigo é muito relevante para todas as personas envolvidas na etapa de configuração de nuvem da preparação de um dispositivo para implantação.

Ponto de extremidade das operações de serviço

O ponto de extremidade das operações de serviço é o ponto de extremidade para gerenciar as configurações de serviço e manter a lista de registro. Esse ponto de extremidade é usado somente pelo administrador de serviços. Ele não é usado pelos dispositivos.

Ponto de extremidade de provisionamento do dispositivo

O ponto de extremidade de provisionamento de dispositivo é o ponto de extremidade único que todos os dispositivos usam para provisionamento. A URL é a mesma para todas as instâncias de serviço de provisionamento, o que elimina a necessidade de redirecionar dispositivos com novas informações de conexão em cenários de cadeia de suprimentos. O escopo da ID garante o isolamento de locatários.

Hubs IoT vinculados

O Serviço de Provisionamento de Dispositivos somente pode provisionar dispositivos para hubs de IoT que tenham sido vinculados a ele. Vincular um hub IoT a uma instância do Serviço de Provisionamento de Dispositivos fornece ao serviço permissões de leitura/gravação para o registro de dispositivo do Hub IoT. Com o link, um Serviço de Provisionamento de Dispositivos pode registrar uma ID do dispositivo e definir a configuração inicial no dispositivo gêmeo. Hubs de IoT vinculados podem estar em qualquer região do Azure. Você pode vincular hubs em outras assinaturas ao serviço de provisionamento.

Para obter mais informações, consulte Como vincular e gerenciar hubs IoT

Política de alocação

A política de alocação é uma configuração de nível de serviço que determina como o Serviço de Provisionamento de Dispositivos atribui dispositivos a um hub IoT. Há quatro políticas de alocação com suporte:

  • Distribuição igualmente ponderada: Hubs IoT vinculados têm probabilidades iguais de ter dispositivos provisionados a eles. A configuração padrão. Se estiver provisionando dispositivos para apenas um hub IoT, você poderá manter essa configuração.

  • Menor latência: dispositivos são provisionados para um Hub IoT com a menor latência para o dispositivo. Se vários Hubs IoT vinculados fornecerem a mesma menor latência, o serviço de provisionamento reciclará dispositivos entre esses hubs

  • Configuração estática por meio da lista de registro: a especificação do Hub IoT desejado na lista de registro tem prioridade sobre a política de alocação no nível do serviço.

  • Personalizado (uso da Função do Azure): uma política de alocação personalizada oferece mais controle sobre como os dispositivos são atribuídos a um Hub IoT. As políticas de alocação personalizadas usam uma Função do Azure para atribuir dispositivos a um hub IoT. O serviço de provisionamento de dispositivo chama seu código de função do Azure, fornecendo todas as informações relevantes sobre o dispositivo e o registro em seu código. O código de função é executado e retorna as informações do Hub IoT para provisionar o dispositivo. Para obter mais informações, consulte Noções básicas sobre políticas de alocação personalizadas.

Para obter mais informações, consulte Como usar políticas de alocação.

Registro

Um registro é o registro de dispositivos ou grupos de dispositivos que podem se registrar por meio do provisionamento automático. O registro contém informações sobre o dispositivo ou grupo de dispositivos, incluindo:

  • O mecanismo de atestado usado pelo dispositivo
  • A configuração inicial opcional desejada
  • O hub IoT desejado
  • A ID do dispositivo desejada

Há dois tipos de registros compatíveis com o Serviço de Provisionamento de Dispositivos: grupos de registro e registros individuais.

Grupo de registro

Um grupo de registro é um grupo de dispositivos que compartilham um mecanismo de atestado específico. Os grupos de registro dão suporte a certificado X.509 ou a atestado de chave simétrica.

O nome do grupo de registro e as IDs de registro apresentadas pelos dispositivos devem ser cadeias de caracteres que não diferenciam maiúsculas de minúsculas de caracteres alfanuméricos mais os caracteres especiais: - . _ :. O último caractere deve ser alfanumérico ou um traço (-). O nome do grupo de registro pode ter até 128 caracteres. Em grupos de registro de chave simétrica, as IDs de registro apresentadas por dispositivos podem ter até 128 caracteres. No entanto, em grupos de registro X.509, como o comprimento máximo do nome comum de entidade em um certificado X.509 é de 64 caracteres, as IDs de registro são limitadas a 64 caracteres.

Os dispositivos em um grupo de registro X.509 apresentam certificados X.509 assinados pela mesma AC (autoridade de certificação) raiz ou intermediária. O nome comum (CN) de entidade de cada certificado de entidade final (folha) de dispositivo se tornar a ID de registro para esse dispositivo. Os dispositivos em um grupo de registro de chave simétrica apresentam tokens SAS derivados da chave simétrica do grupo.

Para dispositivos em um grupo de registro, a ID de registro também é usada como a ID do dispositivo registrada no Hub IoT.

Dica

É recomendável usar um grupo de registro para um grande número de dispositivos que compartilhem uma configuração inicial desejada ou para dispositivos que vão todos para o mesmo locatário.

Registro individual

Um registro individual é uma entrada para um único dispositivo que pode registrar. Registros individuais podem usar certificados folha X.509 ou tokens SAS (de um TPM físico ou virtual) como os mecanismos de atestado.

A ID de registro em um registro individual não diferencia maiúsculas de minúsculas de caracteres alfanuméricos, além dos caracteres especiais: - . _ :. O último caractere deve ser alfanumérico ou um traço (-). O DPS dá suporte a IDs de registro de até 128 caracteres.

Para registros individuais X.509, o CN (nome comum da entidade) do certificado deve corresponder à ID de registro, portanto, o nome comum deve aderir ao formato de cadeia de caracteres da ID de registro. O nome comum de entidade tem um comprimento máximo de 64 caracteres e, portanto, a ID de registro é limitada a 64 caracteres para registros X.509.

Registros individuais podem ter a ID de dispositivo de Hub IoT desejada especificada na entrada do registro. Se não for especificada, a ID do registro se tornará a ID do dispositivo registrada no Hub IoT.

Dica

É recomendável o uso de registros individuais para dispositivos que exigem configurações iniciais exclusivas ou para dispositivos que somente podem autenticar usando tokens de SAS via atestado de TPM.

Mecanismo de atestado

O mecanismo de atestado é o método usado para confirmar a identidade de um dispositivo. O mecanismo de atestado é configurado em uma entrada de registro e informa ao serviço de provisionamento qual método usar para verificar a identidade de um dispositivo durante o registro.

Observação

O Hub IoT usa o "esquema de autenticação" para um conceito semelhante nesse serviço.

O Serviço de Provisionamento de Dispositivos dá suporte às seguintes formas de atestado:

  • Certificados X.509 com base no fluxo de autenticação do certificado X.509 padrão. Para saber mais, confira Atestado X. 509.
  • Trusted Platform Module (TPM) com base em um desafio nonce, usando o padrão TPM para chaves para apresentar um token de Assinatura de Acesso Compartilhado (SAS) assinado. Isso não requer um TPM físico no dispositivo, mas o serviço espera atestar usando a chave de endosso de acordo com a especificação do TPM. Para saber mais, confira Atestado TPM.
  • Chave simétrica baseada em tokens SAS de SAS (assinatura de acesso compartilhado), que incluem uma assinatura de hash e uma expiração inserida. Para obter mais informações, veja Atestado de chave simétrica.

Módulo de segurança de hardware

Um módulo de segurança de hardware, ou HSM, é usado para armazenamento seguro baseado em hardware de segredos do dispositivo e é a forma mais segura de armazenamento secreto. Os certificados X.509 e os tokens SAS podem ser armazenados em um HSM.

Dica

É altamente recomendável usar um HSM com dispositivos para armazenar segredos com segurança em seus dispositivos.

Os segredos do dispositivo também podem ser armazenados em software (memória), mas é uma forma menos segura de armazenamento do que um HSM.

Escopo da ID

O escopo da ID é atribuído a um Serviço de Provisionamento de Dispositivos quando ele é criado e é usado para identificar exclusivamente o serviço de provisionamento específico. O escopo da ID é gerado pelo serviço e é imutável, o que assegura a exclusividade. A exclusividade do escopo de ID é importante para operações de implantação de longa execução e cenários de fusão e aquisição.

Registro de registro

Um registro de registro é o registro de um dispositivo registrando/provisionando com êxito em um Hub IoT por meio do Serviço de Provisionamento de Dispositivos. Registros são criados automaticamente. Eles podem ser excluídos, mas não podem ser atualizados.

ID de registro

A ID de registro é usada para identificar exclusivamente um registro de dispositivo com o Serviço de Provisionamento de Dispositivos. A ID de registro deve ser exclusiva no escopo da ID do serviço de provisionamento. Cada dispositivo deve ter uma ID de registro. A ID de registro é uma cadeia de caracteres alfanumérica que não diferencia maiúsculas de minúsculas, além dos caracteres especiais: - . _ :. O último caractere deve ser alfanumérico ou um traço (-). O DPS dá suporte a IDs de registro de até 128 caracteres.

  • Com o atestado do TPM, a ID de registro é fornecida pelo próprio TPM.
  • Com o atestado baseado em X.509, a ID de registro é definida como o CN (nome comum) de entidade do certificado do dispositivo. Por esse motivo, o nome comum precisa aderir ao formato de cadeia de caracteres de ID de registro. No entanto, a ID de registro é limitada a 64 caracteres porque esse é o comprimento máximo do nome comum da entidade em um certificado X.509.

ID do Dispositivo

A ID do dispositivo é a ID como ela aparece no Hub IoT. A ID do dispositivo desejada pode ser definida na entrada do registro, mas sua definição não é necessária. A configuração da ID de dispositivo desejada só tem suporte em registros individuais. Se nenhuma ID de dispositivo desejada for especificada na lista de registro, a ID do registro será usada como a ID do dispositivo ao registrar o dispositivo. Saiba mais sobre as IDs de dispositivo do Hub IoT.

Operações

As operações são a unidade de cobrança do Serviço de Provisionamento de Dispositivos. Uma operação é a conclusão bem-sucedida de uma instrução para o serviço. As operações podem incluir registros de dispositivo e re-registros, bem como alterações do lado do serviço, como adicionar e atualizar entradas de lista de registro.