Início Rápido: Provisionar um dispositivo simulado de chave simétrica
Neste início rápido, você cria um dispositivo simulado no seu computador Windows. O dispositivo simulado está configurado para usar o mecanismo de atestado de chave simétrica para autenticação. Depois que você configurou seu dispositivo, você então o provisiona no seu hub IoT usando o Serviço de Provisionamento de Dispositivos no Hub IoT do Azure.
Se você não estiver familiarizado com o processo de provisionamento, examine a visão geral de provisionamento.
Este guia de início rápido demonstra uma solução para uma estação de trabalho baseada em Windows. No entanto, também é possível executar os procedimentos no Linux. Para um exemplo do Linux, consulte Tutorial: provisão para latência geográfica.
Pré-requisitos
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Conclua as etapas em Configurar o Serviço de Provisionamento de Dispositivos no Hub IoT com o portal do Azure.
- Se você estiver usando um ambiente de desenvolvimento Windows, instale o Visual Studio 2019 com a carga de trabalho 'Desenvolvimento de área de trabalho com C++' habilitada. Também há suporte para o Visual Studio 2015 e o Visual Studio 2017. Para Linux ou macOS, confira a seção apropriada em Preparar seu ambiente de desenvolvimento na documentação do SDK.
Instale o SDK do .NET 6.0 ou posterior no computador baseado no Windows. Use o comando a seguir para verificar a versão.
dotnet --info
- Instale o Node.js v4.0+.
- Instale o Python 3.7 ou posterior no computador baseado no Windows. Verifique sua versão do Python executando
python --version
.
Instale o Java SE Development Kit 8 ou posterior no computador.
Baixe e instale o Maven.
- Instale a versão mais recente do Git. Verifique se o Git foi adicionado às variáveis de ambiente que podem ser acessadas pela janela de comando. Confira Ferramentas de cliente Git do Software Freedom Conservancy para obter a versão mais recente das ferramentas
git
a serem instaladas, que inclui o Git Bash, o aplicativo de linha de comando que você pode usar para interagir com seu repositório Git local.
Preparar seu ambiente de desenvolvimento
Nesta seção, você prepara um ambiente de desenvolvimento usado para compilar o SDK de C do IoT do Azure. O código de exemplo tenta provisionar o dispositivo durante a sequência de inicialização do dispositivo.
Baixe o sistema de build CMake mais recente.
Importante
Confirme que os pré-requisitos do Visual Studio (Visual Studio e a carga de trabalho de 'Desenvolvimento para Desktop com C++') estão instalados no computador antes de iniciar a instalação de
CMake
. Após a instalação dos pré-requisitos e verificação do download, instale o sistema de compilação CMake. Além disso, esteja ciente de que as versões mais antigas do sistema de build CMake não geram o arquivo de solução usado neste artigo. Use a versão mais recente do CMake.Abra um navegador da Web e acesse a página de versão do SDK do Azure IoT para C.
Selecione a guia Marcas na parte superior da página.
Copie o nome da marca para a versão mais recente do SDK do Azure IoT para C.
Abra um prompt de comando ou o shell Bash do Git. Execute os seguintes comandos para clonar a última versão do repositório do GitHub do SDK do dispositivo IoT do Azure para C. Substitua
<release-tag>
pela marca que você copiou na etapa anterior, por exemplo:lts_01_2023
.git clone -b <release-tag> https://github.com/Azure/azure-iot-sdk-c.git cd azure-iot-sdk-c git submodule update --init
Essa operação pode levar vários minutos para ser concluída.
Quando a operação for concluída, execute os seguintes comandos no diretório
azure-iot-sdk-c
:mkdir cmake cd cmake
O exemplo de código usa uma chave simétrica para fornecer atestado. Execute o seguinte comando para compilar uma versão do SDK específica para sua plataforma de cliente de desenvolvimento que inclui o cliente de provisionamento de dispositivos:
cmake -Dhsm_type_symm_key:BOOL=ON -Duse_prov_client:BOOL=ON ..
Dica
Se
cmake
não encontrar o compilador do C++, você poderá obter erros de build ao executar o comando acima. Se isso acontecer, tente executar o comando no prompt de comando do Visual Studio.Quando o build for concluído com êxito, as últimas linhas da saída serão semelhantes à seguinte saída:
$ cmake -Dhsm_type_symm_key:BOOL=ON -Duse_prov_client:BOOL=ON .. -- Building for: Visual Studio 16 2019 -- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19042. -- The C compiler identification is MSVC 19.29.30040.0 -- The CXX compiler identification is MSVC 19.29.30040.0 ... -- Configuring done -- Generating done -- Build files have been written to: E:/IoT Testing/azure-iot-sdk-c/cmake
Abra um ambiente de linha de comando Git CMD ou Git Bash.
Clone o repositório do GitHub do SDK da IoT do Azure para C# usando o seguinte comando:
git clone https://github.com/Azure/azure-iot-sdk-csharp.git
Abra um ambiente de linha de comando Git CMD ou Git Bash.
Clone o repositório GitHub SDK do Azure IoT para Node.js usando o seguinte comando:
git clone https://github.com/Azure/azure-iot-sdk-node.git --recursive
Abra um ambiente de linha de comando Git CMD ou Git Bash.
Clone o repositório GitHub SDK do Azure IoT para Python usando o seguinte comando:
git clone -b v2 https://github.com/Azure/azure-iot-sdk-python.git --recursive
Observação
Os exemplos usados neste tutorial estão na ramificação v2 do repositório azure-iot-sdk-python. A V3 do SDK do Python está disponível para uso na versão beta.
Abra um ambiente de linha de comando Git CMD ou Git Bash.
Clone o repositório GitHub SDK do Azure IoT para Java usando o seguinte comando:
git clone https://github.com/Azure/azure-iot-sdk-java.git --recursive
Acesse o diretório
azure-iot-sdk-java
raiz e crie o projeto para baixar todos os pacotes necessários. Essa etapa pode levar vários minutos para ser concluída.cd azure-iot-sdk-java mvn install -DskipTests=true
Criar um registro do dispositivo
O Serviço de Provisionamento de Dispositivos de IoT do Azure dá suporte a dois tipos de registros:
- Grupos de registros: usados para inscrever vários dispositivos relacionados.
- Registros individuais: usados para inscrever um único dispositivo.
Este artigo demonstra um registro individual de um único dispositivo a ser provisionado com um Hub IoT.
Entre no portal do Azure e navegue até instância do Serviço de Provisionamento de Dispositivos.
Selecione Gerenciar registros na seção Configurações do menu de navegação.
Selecione a guia Registros individuais e, em seguida, selecione Adicionar registro individual.
Na guia Registro + provisionamento da página Adicionar registro, forneça as seguintes informações para configurar os detalhes do registro:
Campo Descrição Atestado Selecione Chave simétrica como o Mecanismo de atestado. Configurações de chave simétrica Marque a caixa Gerar chaves simétricas automaticamente se você quiser usar chaves geradas aleatoriamente. Desmarque essa caixa se quiser fornecer suas próprias chaves. ID de registro Forneça uma ID de registro exclusiva para o dispositivo. Status do provisionamento Marque a caixa Habilitar este registro se quiser que esse registro esteja disponível para provisionar seu dispositivo. Desmarque essa caixa se quiser que o registro seja desabilitado. Você poderá alterar essa configuração mais tarde. Reprovisionar política Escolha uma política de reprovisionamento que reflita como você deseja que o DPS manipule os dispositivos que solicitam o reprovisionamento. Para obter mais informações, confira Reprovisionar políticas. Selecione Próximo: hubs IoT.
Na guia Hubs IoT da página Adicionar registro, forneça as seguintes informações para determinar para quais hubs IoT o registro pode provisionar dispositivos:
Campo Descrição Hubs IoT de destino Selecione um ou mais dos hubs IoT vinculados ou adicione um novo link a um hub IoT. Para saber mais sobre como vincular hubs IoT à instância do DPS, confira Como vincular e gerenciar hubs IoT. Política de alocação Se você selecionou mais de um hub IoT vinculado, selecione como deseja atribuir dispositivos aos diferentes hubs. Para saber mais sobre políticas de alocação, confira Como usar políticas de alocação.
Se você selecionou apenas um hub IoT vinculado, recomendamos usar a política de Distribuição uniformemente ponderada.Selecione Avançar: Configurações do dispositivo
Na guia Configurações do dispositivo da página Adicionar registro, forneça as seguintes informações para definir como os dispositivos provisionados recentemente serão configurados:
Campo Descrição ID do Dispositivo Forneça uma ID do dispositivo que será atribuída ao dispositivo provisionado no Hub IoT. Se você não fornecer uma ID de dispositivo, a ID de registro será usada. IoT Edge Verifique Habilitar IoT Edge em dispositivos provisionados se o dispositivo provisionado executará o Azure IoT Edge. Desmarque essa caixa se esse registro for para um dispositivo não habilitado para IoT Edge. Marcas de dispositivo Use esta caixa de texto para fornecer as marcas que você deseja aplicar ao dispositivo gêmeo do dispositivo provisionado. Propriedades desejadas Use esta caixa de texto para fornecer as propriedades desejadas que você quer aplicar ao dispositivo gêmeo do dispositivo provisionado. Para saber mais, veja Noções básicas e uso de dispositivos gêmeos no Hub IoT.
Selecione Avançar: Revisar + criar.
Na guia Revisar + Criar, verifique todos os valores e, em seguida, selecione Criar.
Depois de criar o registro individual, uma chave primária e uma chave secundária são geradas e adicionadas à entrada de registro. Você usa a chave primária no exemplo de dispositivo mais adiante neste início rápido.
Para exibir o registro do dispositivo simulado de chave simétrica, selecione a guia Registros individuais.
Selecione a ID de registro do dispositivo na lista de registros individuais.
Copie o valor da Chave primária gerada.
Preparar e executar o código de provisionamento de dispositivos
Nesta seção, você atualiza o código de exemplo de dispositivo para enviar a sequência de inicialização do dispositivo para a instância do Serviço de Provisionamento de Dispositivos. Essa sequência de inicialização faz com que o dispositivo seja reconhecido, autenticado e atribuído a um hub IoT vinculado à instância do Serviço de Provisionamento de Dispositivos.
O código de provisionamento de exemplo realiza as seguintes tarefas, em ordem:
Autentica seu dispositivo com o recurso de Provisionamento de Dispositivos usando os três seguintes parâmetros:
- O escopo de ID do Serviço de Provisionamento de Dispositivos
- A ID do registro do dispositivo.
- A chave simétrica primária para o registro do dispositivo.
Atribui o dispositivo ao hub IoT já vinculado à sua instância do Serviço de Provisionamento de Dispositivos.
Para atualizar e executar o exemplo de provisionamento com as informações do seu dispositivo:
No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Visão geral.
Copie o valor de Escopo da ID.
No Visual Studio, abra o arquivo da solução azure_iot_sdks.sln que foi gerado pela execução do CMake. O arquivo da solução deve estar no seguinte local:
\azure-iot-sdk-c\cmake\azure_iot_sdks.sln
Dica
Se o arquivo não foi gerado em seu diretório do CMake, verifique se você usou uma versão recente do sistema de build do CMake.
Na janela Gerenciador de Soluções do Visual Studio, acesse a pasta Provision_Samples. Expanda o projeto de exemplo chamado prov_dev_client_sample. Expanda Arquivos de Origem e abra prov_dev_client_sample.c.
Localize a constante
id_scope
e substitua o valor pelo valor de Escopo de ID copiado na etapa 2.static const char* id_scope = "0ne00002193";
Encontre a definição da função
main()
no mesmo arquivo. Certifique-se de que a variávelhsm_type
está definida paraSECURE_DEVICE_TYPE_SYMMETRIC_KEY
conforme mostrado no seguinte exemplo:SECURE_DEVICE_TYPE hsm_type; //hsm_type = SECURE_DEVICE_TYPE_TPM; //hsm_type = SECURE_DEVICE_TYPE_X509; hsm_type = SECURE_DEVICE_TYPE_SYMMETRIC_KEY;
Localize a chamada para
prov_dev_set_symmetric_key_info()
em prov_dev_client_sample.c que está comentado.// Set the symmetric key if using they auth type //prov_dev_set_symmetric_key_info("<symm_registration_id>", "<symmetric_Key>");
Remova a marca de comentário da chamada de função e substitua os valores de espaço reservado (incluindo os colchetes angulares) pela ID de registro do seu dispositivo e pelo valor de chave primária que você copiou.
// Set the symmetric key if using they auth type prov_dev_set_symmetric_key_info("symm-key-device-007", "your primary key here");
Salve o arquivo.
Clique com botão direito do mouse no projeto prov_dev_client_sample e selecione Definir como Projeto de Inicialização.
No menu do Visual Studio, selecione Depurar>Iniciar sem depuração para executar a solução. Na recompilação do prompt de projeto, selecione Sim para recompilar o projeto antes da execução.
A seguinte saída é um exemplo do dispositivo que se conecta com êxito à instância de Serviço de provisionamento a ser atribuída a um hub IoT:
Provisioning API Version: 1.2.8 Registering Device Provisioning Status: PROV_DEVICE_REG_STATUS_CONNECTED Provisioning Status: PROV_DEVICE_REG_STATUS_ASSIGNING Registration Information received from service: test-docs-hub.azure-devices.net, deviceId: device-007 Press enter key to exit:
O código de provisionamento de exemplo realiza as seguintes tarefas:
Autentica seu dispositivo com o recurso de Provisionamento de Dispositivos usando os três seguintes parâmetros:
- O escopo de ID do Serviço de Provisionamento de Dispositivos
- A ID do registro do dispositivo.
- A chave simétrica primária para o registro do dispositivo.
Atribui o dispositivo ao hub IoT já vinculado à sua instância do Serviço de Provisionamento de Dispositivos.
Envia uma mensagem de telemetria de teste para o hub IoT.
Para atualizar e executar o exemplo de provisionamento com as informações do seu dispositivo:
No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Visão geral.
Copie o valor de Escopo da ID.
Abra um prompt de comando e acesse o SymmetricKeySample no repositório de SDKs clonados:
cd '.\azure-iot-sdk-csharp\provisioning\device\samples\how to guides\SymmetricKeySample\'
Na pasta SymmetricKeySample, abra Parameters.cs em um editor de texto. Este arquivo mostra os parâmetros disponíveis para a amostra. Somente os três primeiros parâmetros obrigatórios são usados neste artigo durante a execução do exemplo. Examine o código deste arquivo. Nenhuma alteração é necessária.
Parâmetro Obrigatório Descrição --i
ou--IdScope
True O Escopo da ID da instância do DPS --r
ou--RegistrationId
True A ID do registro é uma cadeia de caracteres que não diferencia maiúsculas de minúsculas (até 128 caracteres) de caracteres alfanuméricos mais os caracteres especiais: '-'
,'.'
,'_'
,':'
. O último caractere deve ser alfanumérico ou um traço ('-'
).--p
ou--PrimaryKey
True A chave primária de um registro individual ou a chave de dispositivo derivada do registro de grupo. Confira ComputeDerivedSymmetricKeySample para saber como gerar a chave derivada. --g
ou--GlobalDeviceEndpoint
Falso O ponto de extremidade global no qual os dispositivos se conectarão. Usa como padrão global.azure-devices-provisioning.net
--t
ou--TransportType
Falso O transporte a ser usado para se comunicar com a instância de provisionamento de dispositivos. Assume o padrão de Mqtt
. Os valores possíveis incluemMqtt
,Mqtt_WebSocket_Only
,Mqtt_Tcp_Only
,Amqp
,Amqp_WebSocket_Only
,Amqp_Tcp_only
eHttp1
.Na pasta SymmetricKeySample, abra ProvisioningDeviceClientSample.cs em um editor de texto. Esse arquivo mostra como a classe SecurityProviderSymmetricKey é usada junto com a classe ProvisioningDeviceClient para provisionar o dispositivo de chave simétrica simulada. Examine o código deste arquivo. Nenhuma alteração é necessária.
Compile e execute o código de exemplo usando o seguinte comando:
- Substitua
<id-scope>
pelo Escopo da ID que você copiou na etapa 2. - Substitua
<registration-id>
pela ID de Registro que você forneceu no registro do dispositivo. - Substitua
<primarykey>
pela Chave Primária que você copiou do registro do dispositivo.
dotnet run --i <id-scope> --r <registration-id> --p <primarykey>
- Substitua
Agora você deverá ver algo semelhante à saída a seguir. Uma cadeia de caracteres "TestMessage" é enviada ao Hub como uma mensagem de teste.
D:\azure-iot-sdk-csharp\provisioning\device\samples\how to guides\SymmetricKeySample>dotnet run --i 0ne00000A0A --r symm-key-csharp-device-01 --p sbDDeEzRuEuGKag+kQKV+T1QGakRtHpsERLP0yPjwR93TrpEgEh/Y07CXstfha6dhIPWvdD1nRxK5T0KGKA+nQ== Initializing the device provisioning client... Initialized for registration Id symm-key-csharp-device-01. Registering with the device provisioning service... Registration status: Assigned. Device csharp-device-01 registered to ExampleIoTHub.azure-devices.net. Creating symmetric key authentication for IoT Hub... Testing the provisioned device with IoT Hub... Sending a telemetry message... Finished. Enter any key to exit.
O código de provisionamento de exemplo realiza as seguintes tarefas, em ordem:
Autentica seu dispositivo com o recurso de Provisionamento de Dispositivos usando os quatro seguintes parâmetros:
PROVISIONING_HOST
PROVISIONING_IDSCOPE
PROVISIONING_REGISTRATION_ID
PROVISIONING_SYMMETRIC_KEY
Atribui o dispositivo ao hub IoT já vinculado à sua instância do Serviço de Provisionamento de Dispositivos.
Envia uma mensagem de telemetria de teste para o hub IoT.
Para atualizar e executar o exemplo de provisionamento com as informações do seu dispositivo:
No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Visão geral.
Copie os valores Escopo da ID e Ponto de extremidade de dispositivo global.
Abra um prompt de comando para executar comandos do Node.js e navegue até o seguinte diretório:
cd azure-iot-sdk-node/provisioning/device/samples
Na pasta provisionamento/dispositivo/exemplos, abra register_symkey.js e examine o código. Observe que o código de exemplo define uma carga personalizada:
provisioningClient.setProvisioningPayload({a: 'b'});
Você pode comentar fora deste código, pois ele não é necessário para este início rápido. Um conteúdo personalizado seria necessário se você quisesse usar uma função de alocação personalizada para atribuir seu dispositivo a um hub IoT. Para saber mais, confira Tutorial: Usar políticas de alocação personalizadas.
O método
provisioningClient.register()
tenta o registro do seu dispositivo.Nenhuma alteração adicional é necessária.
No prompt de comando, execute os seguintes comandos para definir as variáveis de ambiente usadas pela amostra:
- Substitua
<provisioning-global-endpoint>
pelo Ponto de extremidade global que você copiou na etapa 2. - Substitua
<id-scope>
pelo Escopo da ID que você copiou na etapa 2. - Substitua
<registration-id>
pela ID de Registro que você forneceu no registro do dispositivo. - Substitua
<primarykey>
pela Chave Primária que você copiou do registro do dispositivo.
set PROVISIONING_HOST=<provisioning-global-endpoint>
set PROVISIONING_IDSCOPE=<id-scope>
set PROVISIONING_REGISTRATION_ID=<registration-id>
set PROVISIONING_SYMMETRIC_KEY=<primarykey>
- Substitua
Crie e execute o código de exemplo usando os seguintes comandos:
npm install
node register_symkey.js
Agora você deverá ver algo semelhante à saída a seguir. Uma cadeia de caracteres "Olá, Mundo" é enviada ao hub como uma mensagem de teste.
D:\azure-iot-samples-csharp\provisioning\device\samples>node register_symkey.js registration succeeded assigned hub=ExampleIoTHub.azure-devices.net deviceId=nodejs-device-01 payload=undefined Client connected send status: MessageEnqueued
O código de provisionamento de exemplo realiza as seguintes tarefas, em ordem:
Autentica seu dispositivo com o recurso de Provisionamento de Dispositivos usando os quatro seguintes parâmetros:
PROVISIONING_HOST
PROVISIONING_IDSCOPE
PROVISIONING_REGISTRATION_ID
PROVISIONING_SYMMETRIC_KEY
Atribui o dispositivo ao hub IoT já vinculado à sua instância do Serviço de Provisionamento de Dispositivos.
Envia uma mensagem de telemetria de teste para o hub IoT.
Para atualizar e executar o exemplo de provisionamento com as informações do seu dispositivo:
No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Visão geral.
Copie os valores Escopo da ID e Ponto de extremidade de dispositivo global.
Abra um prompt de comando e acesse o diretório em que o arquivo de exemplo, provision_symmetric_key.py, está localizado.
cd azure-iot-sdk-python\samples\async-hub-scenarios
No prompt de comando, execute os seguintes comandos para definir as variáveis de ambiente usadas pela amostra:
- Substitua
<provisioning-global-endpoint>
pelo Ponto de extremidade global que você copiou na etapa 2. - Substitua
<id-scope>
pelo Escopo da ID que você copiou na etapa 2. - Substitua
<registration-id>
pela ID de Registro que você forneceu no registro do dispositivo. - Substitua
<primarykey>
pela Chave Primária que você copiou do registro do dispositivo.
set PROVISIONING_HOST=<provisioning-global-endpoint>
set PROVISIONING_IDSCOPE=<id-scope>
set PROVISIONING_REGISTRATION_ID=<registration-id>
set PROVISIONING_SYMMETRIC_KEY=<primarykey>
- Substitua
Instale a biblioteca azure-iot-device executando o comando a seguir.
pip install azure-iot-device
Execute o código de exemplo do Python em provision_symmetric_key.py.
python provision_symmetric_key.py
Agora você deverá ver algo semelhante à saída a seguir. Algumas mensagens de exemplo de telemetria da velocidade do vento também são enviadas para o hub como um teste.
D:\azure-iot-sdk-python\samples\async-hub-scenarios>python provision_symmetric_key.py RegistrationStage(RequestAndResponseOperation): Op will transition into polling after interval 2. Setting timer. The complete registration result is python-device-008 docs-test-iot-hub.azure-devices.net initialAssignment null Will send telemetry from the provisioned device sending message #8 sending message #9 sending message #3 sending message #10 sending message #4 sending message #2 sending message #6 sending message #7 sending message #1 sending message #5 done sending message #8 done sending message #9 done sending message #3 done sending message #10 done sending message #4 done sending message #2 done sending message #6 done sending message #7 done sending message #1 done sending message #5
O código de provisionamento de exemplo realiza as seguintes tarefas, em ordem:
Autentica seu dispositivo com o recurso de Provisionamento de Dispositivos usando os quatro seguintes parâmetros:
GLOBAL_ENDPOINT
SCOPE_ID
REGISTRATION_ID
SYMMETRIC_KEY
Atribui o dispositivo ao hub IoT já vinculado à sua instância do Serviço de Provisionamento de Dispositivos.
Envia uma mensagem de telemetria de teste para o hub IoT.
Para atualizar e executar o exemplo de provisionamento com as informações do seu dispositivo:
No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Visão geral.
Copie os valores Escopo da ID e Ponto de extremidade de dispositivo global. Estes valores são seus parâmetros
SCOPE_ID
eGLOBAL_ENDPOINT
, respectivamente.Abra o código de exemplo do dispositivo Java para edição. O caminho completo para o código de exemplo do dispositivo é:
azure-iot-sdk-java/provisioning/provisioning-device-client-samples/provisioning-symmetrickey-individual-sample/src/main/java/samples/com/microsoft/azure/sdk/iot/ProvisioningSymmetricKeyIndividualEnrollmentSample.java
Defina o valor das seguintes variáveis para o registro do DPS e do dispositivo:
- Substitua
<id-scope>
pelo Escopo da ID que você copiou na etapa 2. - Substitua
<provisioning-global-endpoint>
pelo Ponto de extremidade global que você copiou na etapa 2. - Substitua
<registration-id>
pela ID de Registro que você forneceu no registro do dispositivo. - Substitua
<primarykey>
pela Chave Primária que você copiou do registro do dispositivo.
private static final String SCOPE_ID = "<id-scope>"; private static final String GLOBAL_ENDPOINT = "<provisioning-global-endpoint>"; private static final String SYMMETRIC_KEY = "<primarykey>"; private static final String REGISTRATION_ID = "<registration-id>";
- Substitua
Abra um prompt de comando para criação. Acesse a pasta de projeto de exemplo de provisionamento do repositório do SDK do Java.
cd azure-iot-sdk-java\provisioning\provisioning-device-client-samples\provisioning-symmetrickey-individual-sample
Compile o exemplo.
mvn clean install
Vá para a pasta
target
e execute o arquivo.jar
criado. No comandojava
, substitua o espaço reservado{version}
pela versão no nome do arquivo.jar
no computador.cd target java -jar ./provisioning-symmetrickey-individual-sample-{version}-with-deps.jar
Agora você deverá ver algo semelhante à saída a seguir.
Starting... Beginning setup. Initialized a ProvisioningDeviceClient instance using SDK version 1.11.0 Starting provisioning thread... Waiting for Provisioning Service to register Opening the connection to device provisioning service... Connection to device provisioning service opened successfully, sending initial device registration message Authenticating with device provisioning service using symmetric key Waiting for device provisioning service to provision this device... Current provisioning status: ASSIGNING Device provisioning service assigned the device successfully IotHUb Uri : <Your IoT hub name>.azure-devices.net Device ID : java-device-007 Sending message from device to IoT Hub... Press any key to exit... Message received! Response status: OK_EMPTY
Confirmar o registro de provisionamento de dispositivos
Acesse o portal do Azure.
No menu à esquerda ou na página do portal, selecione Todos os recursos.
Selecione o hub IoT ao qual o dispositivo foi atribuído.
No menu Gerenciamento de dispositivo, selecione Dispositivos.
Se seu dispositivo foi provisionado com sucesso, a identidade do dispositivo deverá aparecer na lista, com o Status definido como Habilitada. Se você não vir seu dispositivo, selecione Atualizar na parte superior da página.
Observação
Se você tiver alterado o estado de dispositivo gêmeo inicial do valor padrão na entrada de registro para o seu dispositivo, pode receber o estado desejado duas do hub e agir de acordo. Para saber mais, veja Noções básicas e uso de dispositivos gêmeos no Hub IoT.
Limpar os recursos
Se planejar continuar trabalhando e explorando o dispositivo cliente de exemplo, não limpe os recursos criados neste início rápido. Se não quiser continuar, use as etapas a seguir para excluir todos os recursos criados por este guia de início rápido.
Excluir o registro do dispositivo
Feche a janela de saída de exemplo de dispositivo cliente em seu computador.
No menu à esquerda no portal do Azure, selecione Todos os recursos.
Selecione o seu Serviço de Provisionamento de Dispositivos.
No menu Configurações, selecione Gerenciar registros.
Selecione a guia Registros individuais.
Marque a caixa de seleção ao lado da ID de registro do dispositivo em que você se inscreveu neste guia de início rápido.
Na parte superior da página, selecione Excluir.
Excluir o registro do dispositivo do Hub IoT
No menu à esquerda no portal do Azure, selecione Todos os recursos.
Selecione seu Hub IoT.
No menu Gerenciadores, selecione Dispositivos IoT.
Marque a caixa de seleção ao lado da ID do dispositivo do dispositivo inscrito neste guia de início rápido.
Na parte superior da página, selecione Excluir.
Próximas etapas
Neste início rápido, você provisionou um único dispositivo para o hub IoT usando um registro individual. A seguir, aprenda como provisionar vários dispositivos IoT em vários hubs.