Quickstart: Fornecimento de um dispositivo TPM simulado

Neste arranque rápido, irá criar um dispositivo simulado TPM na sua máquina Windows. Depois de configurar o seu dispositivo, irá provisá-lo ao seu hub IoT utilizando o Serviço de Provisionamento de Dispositivos Azure IoT Hub. O código de amostra será então utilizado para ajudar a inscrever o dispositivo com uma instância de Serviço de Provisionamento de Dispositivos

Se não está familiarizado com o processo de provisionamento, reveja a visão geral do provisionamento. Certifique-se também de que executa os passos descritos em Configurar o Serviço de Aprovisionamento de Dispositivos no Hub IoT com o portal do Azure antes de continuar.

O Serviço Aprovisionamento de Dispositivos no IoT do Azure suporta dois tipos de inscrição:

Este artigo demonstra inscrições individuais.

Pré-requisitos

Os seguintes pré-requisitos são para um ambiente de desenvolvimento Windows. Para Linux ou macOS, consulte a secção apropriada no preparar o seu ambiente de desenvolvimento na documentação SDK.

  • Instale .NET Core 2.1 SDK ou mais tarde na sua máquina baseada em Windows. Pode utilizar o seguinte comando para verificar a sua versão.

    dotnet --info
    
  • Instale o Python 2.x ou 3.x. Certifique-se de que utiliza a instalação de 32 ou 64 bits, conforme exigido pela sua configuração. Quando lhe for pedido durante a instalação, confirme que adiciona Python às variáveis de ambiente específicas da sua plataforma.

  • Se estiver a utilizar Windows OS, instale o pacote redistribuível Visual C++ para permitir a utilização de DLLs nativos da Python.

  • Visual Studio 2019 com a carga de trabalho 'Desktop com C++' ativada. Visual Studio 2015 e Visual Studio 2017 também são apoiados.

  • Sistema de construção CMake.

  • Instale a versão mais recente do Git. Certifique-se de que o Git é adicionado às variáveis ambientais acessíveis à janela de comando. Consulte as ferramentas do cliente Git da Software Freedom Conservancy para a versão mais recente das git ferramentas a instalar, que inclui Git Bash, a aplicação de linha de comando que pode usar para interagir com o seu repositório git local.

Preparar o ambiente de desenvolvimento

Nesta secção, você vai preparar um ambiente de desenvolvimento usado para construir o Azure IoT C SDK e a amostra de simulador de dispositivo TPM.

  1. Descarregue o mais recente sistema de construção CMake.

    Importante

    Confirme que os pré-requisitos Visual Studio (Visual Studio e o desenvolvimento do ambiente de trabalho com carga de trabalho C++) são instalados na sua máquina, antes de iniciar a CMake instalação. Depois de os pré-requisitos estarem assegurados e a transferência verificada, instale o sistema de compilação CMake. Além disso, esteja ciente de que as versões mais antigas do sistema de construção CMake não conseguem gerar o ficheiro de solução utilizado neste artigo. Certifique-se de que utiliza a versão mais recente do CMake.

  2. Abra um navegador web e vá à página de Lançamento do Azure IoT C SDK.

  3. Selecione o separador Tags no topo da página.

  4. Copie o nome da etiqueta para a última versão do Azure IoT C SDK.

  5. Abra uma linha de comandos ou a shell do Git Bash. Executar os seguintes comandos para clonar a mais recente versão do repositório Azure IoT C SDK GitHub. <release-tag>(substitua-a pela etiqueta copiada no passo anterior).

    git clone -b <release-tag> https://github.com/Azure/azure-iot-sdk-c.git
    cd azure-iot-sdk-c
    git submodule update --init
    

    Esta operação pode levar vários minutos para ser concluída.

  6. Quando a operação estiver concluída, executar os seguintes comandos a partir do azure-iot-sdk-c diretório:

    mkdir cmake
    cd cmake
    
  1. Abra um ambiente de linha de comando Git CMD ou Git Bash.

  2. Clone as amostras Azure IoT para C# GitHub repositório utilizando o seguinte comando:

    git clone https://github.com/Azure-Samples/azure-iot-samples-csharp.git
    
  1. Abra um ambiente de linha de comando Git CMD ou Git Bash.

  2. Clone o repositório azure-utpm-c GitHub utilizando o seguinte comando:

    git clone https://github.com/Azure/azure-utpm-c.git --recursive
    
  1. Abra um ambiente de linha de comando Git CMD ou Git Bash.

  2. Clone the Python GitHub repositório usando o seguinte comando:

    git clone --single-branch --branch v1-deprecated https://github.com/Azure/azure-iot-sdk-python.git --recursive
    
  3. Crie uma pasta na sua cópia local deste GitHub repo para o processo de construção CMake.

    cd azure-iot-sdk-python/c
    mkdir cmake
    cd cmake
    
  4. Siga estas instruções para criar os pacotes Python.

    Nota

    Se executar build_client.cmd certifique-se de que utiliza o sinalizador --use-tpm-simulator.

    Nota

    Se estiver a utilizar pip, certifique-se de que instala também o pacote azure-iot-provisioning-device-client. Tenha em atenção que os pacotes PIP lançados estão a utilizar o TPM real, não o simulador. Para utilizar o simulador tem de compilar a partir da origem, utilizando o sinalizador --use-tpm-simulator.

  1. Abra um ambiente de linha de comando Git CMD ou Git Bash.

  2. Clone o repositório java GitHub utilizando o seguinte comando:

    git clone https://github.com/Azure/azure-iot-sdk-java.git --recursive
    

Construa e execute o simulador de dispositivo TPM

Nesta secção, você vai construir e executar o simulador TPM. Este simulador escuta através de um socket nas portas 2321 e 2322. Não feche a janela de comando. Tens de manter este simulador a funcionar até ao fim deste arranque rápido.

  1. Executar o seguinte comando para construir Azure IoT C SDK que inclui o código de amostra do simulador de dispositivo TPM. Uma solução Visual Studio para o dispositivo simulado é gerada no cmake diretório. Este exemplo fornece um mecanismo de atestado TPM através da autenticação de Token de Assinatura de Acesso Partilhado (SAS).

    cmake -Duse_prov_client:BOOL=ON ..
    

    Dica

    Se cmake não encontrar o seu compilador C++, poderá obter erros de construção durante a execução do comando acima. Se isso acontecer, tente executar o comando no Visual Studio comando.

  2. Quando a construção tiver sucesso, as últimas linhas de saída parecem semelhantes à seguinte saída:

    $ cmake -Duse_prov_client:BOOL=ON ..
    -- Building for: Visual Studio 16 2019
    -- The C compiler identification is MSVC 19.23.28107.0
    -- The CXX compiler identification is MSVC 19.23.28107.0
    
    ...
    
    -- Configuring done
    -- Generating done
    -- Build files have been written to: C:/code/azure-iot-sdk-c/cmake
    
  3. Vai para a pasta de raiz do repositório de git que clonaste.

  4. Executar o simulador TPM utilizando o caminho indicado abaixo.

    cd ..
    .\provisioning_client\deps\utpm\tools\tpm_simulator\Simulator.exe
    

    O simulador não apresenta nenhuma saída. Deixe-o continuar a funcionar enquanto simula um dispositivo TPM.

  1. No menu principal do seu Serviço de Provisionamento de Dispositivos, selecione Overview.

  2. Copie o valor do ID Scope.

    Copiar o ID de Âmbito do serviço de aprovisionamento a partir do painel do portal

  3. Numa linha de comandos, altere os diretórios para o diretório de projeto para o exemplo de aprovisionamento de dispositivos TPM.

    cd .\azure-iot-samples-csharp\provisioning\Samples\device\TpmSample
    
  4. Digite o seguinte comando para construir e executar a amostra de fornecimento do dispositivo TPM <IDScope> (substitua-a pelo ID Scope para o seu serviço de fornecimento).

    dotnet run <IDScope>
    

    Nota

    Este comando lançará o simulador de chips TPM numa mente de comando separada. Na Windows, poderá encontrar um Alerta Segurança do Windows que questione se pretende permitir Simulator.exe a comunicação nas redes públicas. Para efeitos desta amostra, pode cancelar o pedido.

  5. A janela de comando original exibe a chave De endosso, o ID de registo, e um ID do dispositivo sugerido necessário para a inscrição do dispositivo. Tome nota destes valores. Utilizará estes valores para criar uma inscrição individual na sua instância de Serviço de Provisionamento de Dispositivos.

    Nota

    Não confunda a janela que contém a saída do comando com a janela que contém a saída do simulador do TPM. Pode ter de selecionar a janela de comando original para a levar para primeiro plano.

  1. Vá para a pasta de raiz GitHub.

  2. Executar o simulador TPM para ser o HSM para o dispositivo simulado.

    .\azure-utpm-c\tools\tpm_simulator\Simulator.exe
    
  3. Crie uma nova pasta vazia chamada registerdevice. Na pasta 'registerdevice', crie um ficheiro package.json utilizando o seguinte comando no seu comando (certifique-se de responder a todas as perguntas npm colocadas ou aceitar as padrão se lhe convêm):

    npm init
    
  4. Instale os seguintes pacotes precursores:

    npm install node-gyp -g
    npm install ffi -g
    

    Nota

    Existem alguns problemas conhecidos na instalação dos pacotes acima indicados. Para os resolver estes problemas, execute npm install --global --production windows-build-tools com uma linha de comandos no modo Executar como administrador, execute SET VCTargetsPath=C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140 depois de substituir o caminho pela versão instalada e, em seguida, volte a executar os comandos de instalação acima indicados.

  5. Instale todas as embalagens necessárias que executem o seguinte comando no seu comando na pasta 'registardevice':

    npm install --save azure-iot-device azure-iot-device-mqtt azure-iot-security-tpm azure-iot-provisioning-device-http azure-iot-provisioning-device
    

    O comando instala os seguintes pacotes:

    • um cliente de segurança que funcione com TPM: azure-iot-security-tpm

    • um transporte para o dispositivo se ligar ao Serviço de Aprovisionamento de Dispositivos: azure-iot-provisioning-device-http ou azure-iot-provisioning-device-amqp

    • um cliente para utilizar o cliente de segurança e o transporte: azure-iot-provisioning-device

    • o cliente de dispositivo: azure-iot-device

    • um transporte: azure-iot-device-amqp, azure-iot-device-mqtt ou azure-iot-device-http

    • o cliente de segurança que já instalou: azure-iot-security-tpm

      Nota

      As amostras deste arranque rápido usam o azure-iot-provisioning-device-http e azure-iot-device-mqtt transportes.

  6. Abra um editor de texto das suas escolhas.

  7. Na pasta de assistência de registo, crie um novo ficheiro ExtractDevice.js.

  8. Adicione as seguintes instruções require no início do ficheiro ExtractDevice.js:

    
    'use strict';
    
    var tpmSecurity = require('azure-iot-security-tpm');
    var tssJs = require("tss.js");
    
    var myTpm = new tpmSecurity.TpmSecurityClient(undefined, new tssJs.Tpm(true));
    
  9. Adicione a seguinte função para implementar o método:

    
    myTpm.getEndorsementKey(function(err, endorsementKey) {
      if (err) {
        console.log('The error returned from get key is: ' + err);
      } else {
        console.log('the endorsement key is: ' + endorsementKey.toString('base64'));
        myTpm.getRegistrationId((getRegistrationIdError, registrationId) => {
          if (getRegistrationIdError) {
            console.log('The error returned from get registration id is: ' + getRegistrationIdError);
          } else {
            console.log('The Registration Id is: ' + registrationId);
            process.exit();
          }
        });
      }
    });
    
  10. Guarde e feche o ficheiro ExtractDevice.js.

    node ExtractDevice.js
    
  11. Execute o exemplo.

  12. A janela de saída apresenta a chave de endosso e o ID de registo necessário para a inscrição do dispositivo. Copie estes valores.

  1. Executar o seguinte comando para permitir a autenticação de símbolo SAS (o comando também gera uma solução Visual Studio para o dispositivo simulado):

    cmake -Duse_prov_client:BOOL=ON -Duse_tpm_simulator:BOOL=ON ..
    
  2. Abra um segundo pedido de comando.

  3. Na segunda indicação de comando, navegue para a pasta do simulador TPM.

  4. Executar o simulador TPM para ser o HSM para o dispositivo simulado.

  5. Selecione Permitir o acesso. O simulador ouve sobre uma tomada nas portas 2321 e 2322. Não feche esta janela de comando; você precisará manter este simulador em funcionamento até ao final deste guia de arranque rápido.

.\azure-iot-sdk-python\c\provisioning_client\deps\utpm\tools\tpm_simulator\Simulator.exe

Simulador TPM

  1. Executar o simulador TPM para ser o HSM para o dispositivo simulado.

  2. Selecione Permitir o acesso. O simulador ouve sobre uma tomada nas portas 2321 e 2322. Não feche esta janela de comando; você precisará manter este simulador em funcionamento até ao final deste guia de arranque rápido.

    .\azure-iot-sdk-java\provisioning\provisioning-tools\tpm-simulator\Simulator.exe
    

    Simulador TPM

  3. Abra um segundo pedido de comando.

  4. Na segunda solicitação de comando, navegue para a pasta raiz e construa as dependências da amostra.

    cd azure-iot-sdk-java
    mvn install -DskipTests=true
    
  5. Navegue para a pasta de exemplo.

    cd provisioning/provisioning-samples/provisioning-tpm-sample
    

Ler as chaves criptográficas do dispositivo TPM

Nesta secção, você vai construir e executar uma amostra que lê a chave de endosso e identificação de registo do simulador TPM que deixou em execução, e ainda está a ouvir sobre as portas 2321 e 2322. Estes valores serão utilizados na inscrição de dispositivos na instância do Serviço Aprovisionamento de Dispositivos.

  1. Lançamento Visual Studio.

  2. Abra a solução gerada na pasta cmake denominada azure_iot_sdks.sln .

  3. No menu Visual Studio, selecione Build > Build Solution para construir todos os projetos na solução.

  4. Na janela Solution Explorer (Explorador de Soluções) do Visual Studio, navegue para a pasta Provision_Tools. Clique com o botão direito do rato no projeto tpm_device_provision e selecione Configurar como Projeto de Arranque.

  5. No menu Visual Studio, selecione Debug > Start sem depurar para executar a solução. A aplicação lê e exibe um ID de registo e uma chave de endosso. Note ou copie estes valores. Estes serão utilizados na secção seguinte para a inscrição do dispositivo.

  1. Lançamento Visual Studio.

  2. Abra a solução gerada na pasta cmake denominada azure_iot_sdks.sln .

  3. No menu Visual Studio, selecione Build > Build Solution para construir todos os projetos na solução.

  4. Clique com o botão direito do rato no projeto tpm_device_provision e selecione Configurar como Projeto de Arranque.

  5. Execute a solução. A janela de saída apresenta a chave de endosso e o ID de registo necessário para a inscrição do dispositivo. Copie estes valores.

  1. Inscreva-se no portal Azure, selecione o botão Todos os recursos no menu à esquerda e abra o seu Serviço de Provisionamento de Dispositivos. Note o seu ID Scope and Provisioning Service Global Endpoint.

    Informação do Serviço Aprovisionamento de Dispositivos

  2. Editar src/main/java/samples/com/microsoft/azure/sdk/iot/ProvisioningTpmSample.java para incluir o seu ID Scope e Serviço de Provisionamento Global Endpoint, como já foi notado.

    private static final String idScope = "[Your ID scope here]";
    private static final String globalEndpoint = "[Your Provisioning Service Global Endpoint here]";
    private static final ProvisioningDeviceClientTransportProtocol PROVISIONING_DEVICE_CLIENT_TRANSPORT_PROTOCOL = ProvisioningDeviceClientTransportProtocol.HTTPS;
    
  3. Guarde o ficheiro.

  4. Utilize os seguintes comandos para construir o projeto, navegar para a pasta alvo e executar o ficheiro .jar criado (substituir {version} pela sua versão de Java):

    mvn clean install
    cd target
    java -jar ./provisioning-tpm-sample-{version}-with-deps.jar
    
  5. Quando o programa começar a funcionar, apresentará a chave de endosso e o ID de registo. Copie estes valores para a secção seguinte. Certifique-se de deixar o programa em funcionamento.

Criar uma entrada de inscrição de dispositivos

  1. Inicie sessão no portal do Azure.

  2. No menu à esquerda ou na página do portal, selecione Todos os recursos.

  3. Selecione o seu serviço de provisionamento de dispositivos.

  4. No menu Definições, selecione Gerir as inscrições.

  5. No topo da página, selecione + Adicione a inscrição individual.

  6. No painel de inscrição adicionar, insira as seguintes informações:

    • Selecione TPM como o Mecanismo de atestado de identidades.

    • Introduza a chave de ID de Registo e Endosso para o seu dispositivo TPM a partir dos valores que registou anteriormente.

    • Selecione um hub IoT ligado ao seu serviço de aprovisionamento.

    • Opcionalmente, pode fornecer as seguintes informações:

      • Introduza um ID de dispositivo único (pode utilizar o dispositivo de teste-docs sugerido ou fornecer o seu próprio). Certifique-se de que evita dados confidenciais quando der o nome ao seu dispositivo. Se optar por não fornecer um, o ID de registo será usado para identificar o dispositivo.
      • Atualize o estado inicial do dispositivo duplo com a configuração inicial pretendida para o dispositivo.
    • Uma vez concluído, prima o botão Guardar.

      Introduza as informações de inscrição de dispositivos no portal

  7. Selecione Guardar.

Registar o dispositivo

Nesta secção, irá configurar o código de amostra para utilizar o Protocolo de Filamento de Mensagens Avançadas (AMQP) para enviar a sequência de arranque do dispositivo para a sua instância do Serviço de Provisionamento de Dispositivos. Esta sequência de arranque faz com que o dispositivo esteja registado num hub IoT ligado à instância do Serviço de Provisionamento de Dispositivos.

  1. No portal Azure, selecione o separador 'Visão Geral' para o seu Serviço de Provisionamento de Dispositivos.

  2. Copie o valor do ID Scope.

    Extrair informações de ponto final do Serviço Aprovisionamento de Dispositivos do portal

  3. Na janela Solution Explorer (Explorador de Soluções) do Visual Studio, navegue para a pasta Provision_Samples. Expanda o projeto de exemplo com o nome prov_dev_client_sample. Expanda Source Files (Ficheiros de Origem) e abra prov_dev_client_sample.c.

  4. Junto à parte superior do ficheiro, localize as declarações #define para cada protocolo de dispositivo, conforme mostrado abaixo. Certifique-se de que apenas SAMPLE_AMQP tem os comentários anulados.

    Atualmente, o protocolo MQTT não é suportado para Inscrição Individual de TPM.

    //
    // The protocol you wish to use should be uncommented
    //
    //#define SAMPLE_MQTT
    //#define SAMPLE_MQTT_OVER_WEBSOCKETS
    #define SAMPLE_AMQP
    //#define SAMPLE_AMQP_OVER_WEBSOCKETS
    //#define SAMPLE_HTTP
    
  5. Localize a constante id_scope e substitua o valor pelo seu Âmbito do ID que copiou anteriormente.

    static const char* id_scope = "0ne00002193";
    
  6. Localize a definição da função main() no mesmo ficheiro. Certifique-se de que a variável hsm_type está definida como SECURE_DEVICE_TYPE_X509 em vez de SECURE_DEVICE_TYPE_TPM, conforme mostrado abaixo.

    SECURE_DEVICE_TYPE hsm_type;
    //hsm_type = SECURE_DEVICE_TYPE_TPM;
    hsm_type = SECURE_DEVICE_TYPE_X509;
    
  7. Clique com o botão direito do rato no projeto prov_dev_client_sample e selecione Definir como Projeto de Arranque.

  8. No menu Visual Studio, selecione Debug > Start sem depurar para executar a solução. Na pronta para reconstruir o projeto, selecione Sim, para reconstruir o projeto antes de correr.

    A saída seguinte é um exemplo do cliente do dispositivo de aprovisionamento a arrancar e a ligar com êxito a uma instância do Serviço de Aprovisionamento de Dispositivos para obter informações e registar o hub IoT:

    Provisioning API Version: 1.2.7
    
    Registering... Press enter key to interrupt.
    
    Provisioning Status: PROV_DEVICE_REG_STATUS_CONNECTED
    Provisioning Status: PROV_DEVICE_REG_STATUS_ASSIGNING
    Provisioning Status: PROV_DEVICE_REG_STATUS_ASSIGNING
    
    Registration Information received from service:
    test-docs-hub.azure-devices.net, deviceId: test-docs-cert-device
    
  1. No portal Azure, selecione o separador 'Visão Geral' para o seu Serviço de Provisionamento de Dispositivos.

  2. Copie o valor do ID Scope.

    Extrair informações de ponto final do Serviço Aprovisionamento de Dispositivos do painel do portal

  3. Abra um editor de texto à sua escolha.

  4. Na pasta de assistência de registo, crie um novo ficheiro RegisterDevice.js.

  5. Adicione as require seguintes declarações no início do ficheiro RegisterDevice.js:

    
    'use strict';
    
    var ProvisioningTransport = require('azure-iot-provisioning-device-http').Http;
    var iotHubTransport = require('azure-iot-device-mqtt').Mqtt;
    var Client = require('azure-iot-device').Client;
    var Message = require('azure-iot-device').Message;
    var tpmSecurity = require('azure-iot-security-tpm');
    var ProvisioningDeviceClient = require('azure-iot-provisioning-device').ProvisioningDeviceClient;
    

    Nota

    O SDK de IoT do Azure para Node.js suporta protocolos adicionais, como AMQP, AMQP WS e MQTT WS. Para obter mais exemplos, veja SDK do Serviço de Aprovisionamento de Dispositivos para exemplos de Node.js.

  6. Adicione as variáveis globalDeviceEndpoint e idScope, e utilize-as para criar uma instância de ProvisioningDeviceClient. Substitua {globalDeviceEndpoint} e {idScope} pelos valores de Ponto Final do Dispositivo Global e Âmbito do ID do Passo 1:

    
    var provisioningHost = '{globalDeviceEndpoint}';
    var idScope = '{idScope}';
    
    var tssJs = require("tss.js");
    var securityClient = new tpmSecurity.TpmSecurityClient('', new tssJs.Tpm(true));
    // if using non-simulated device, replace the above line with following:
    //var securityClient = new tpmSecurity.TpmSecurityClient();
    
    var provisioningClient = ProvisioningDeviceClient.create(provisioningHost, idScope, new ProvisioningTransport(), securityClient);
    
  7. Adicione a seguinte função para implementar o método no dispositivo:

    
    provisioningClient.register(function(err, result) {
      if (err) {
        console.log("error registering device: " + err);
      } else {
        console.log('registration succeeded');
        console.log('assigned hub=' + result.registrationState.assignedHub);
        console.log('deviceId=' + result.registrationState.deviceId);
        var tpmAuthenticationProvider = tpmSecurity.TpmAuthenticationProvider.fromTpmSecurityClient(result.registrationState.deviceId, result.registrationState.assignedHub, securityClient);
        var hubClient = Client.fromAuthenticationProvider(tpmAuthenticationProvider, iotHubTransport);
    
        var connectCallback = function (err) {
          if (err) {
            console.error('Could not connect: ' + err.message);
          } else {
            console.log('Client connected');
            var message = new Message('Hello world');
            hubClient.sendEvent(message, printResultFor('send'));
          }
        };
    
        hubClient.open(connectCallback);
    
        function printResultFor(op) {
          return function printResult(err, res) {
            if (err) console.log(op + ' error: ' + err.toString());
            if (res) console.log(op + ' status: ' + res.constructor.name);
            process.exit(1);
          };
        }
      }
    });
    
  8. Guarde e feche o ficheiro RegisterDevice.js.

  9. Execute o seguinte comando:

    node RegisterDevice.js
    
  10. Repare nas mensagens que simulam o arranque e a ligação do dispositivo ao Serviço Aprovisionamento de Dispositivos para obter as informações do seu hub IoT.

  1. Navegue para a pasta de amostras do repositório git.

    cd azure-iot-sdk-python/provisioning_device_client/samples
    
  2. Utilizando o seu Python IDE, edite o script python nomeado cliente do dispositivo de provisionamento _ _ _ sample.py (substituir) {globalServiceEndpoint} e aos {idScope} valores que copiou anteriormente). Além disso, certifique-se de que o _ TIPO DE DISPOSITIVO _ DE SEGURANÇA está definido para ProvisioningSecurityDeviceType.TPM .

    GLOBAL_PROV_URI = "{globalServiceEndpoint}"
    ID_SCOPE = "{idScope}"
    SECURITY_DEVICE_TYPE = ProvisioningSecurityDeviceType.TPM
    PROTOCOL = ProvisioningTransportProvider.HTTP
    

    Informações de serviço

  3. Execute o exemplo.

    python provisioning_device_client_sample.py
    
  4. Repare nas mensagens que simulam o arranque e a ligação do dispositivo ao Serviço Aprovisionamento de Dispositivos para obter as informações do seu hub IoT.

  1. Na janela de comando que executa o código de amostra de Java na sua máquina, prima Enter para continuar a executar a aplicação. Repare nas mensagens que simulam o arranque e a ligação do dispositivo ao Serviço Aprovisionamento de Dispositivos para obter as informações do seu hub IoT.

    Programa de dispositivo de Java TPM final

Confirme o registo de provisionamento do seu dispositivo

  1. Aceda ao Portal do Azure.

  2. No menu à esquerda ou na página do portal, selecione Todos os recursos.

  3. Selecione o hub IoT ao qual o seu dispositivo foi atribuído.

  4. No menu Explorers, selecione Dispositivos IoT.

  5. Se o seu dispositivo tiver sido a provisionado com sucesso, o ID do dispositivo deve aparecer na lista, com o status definido como ativado. Se não vir o seu dispositivo, selecione Refresh no topo da página.

    O dispositivo está registado no hub IoT para C

    O dispositivo está registado no hub IoT para CSharp

    O dispositivo está registado no hub IoT para Node.js

    O dispositivo é registado no hub IoT

    O dispositivo é registado no hub IoT

Nota

Se tiver alterado o estado inicial do dispositivo duplo face ao valor predefinido na entrada de inscrição do seu dispositivo, este pode extrair o estado pretendido do dispositivo duplo a partir do hub e agir em conformidade. Para obter mais informações, consulte Compreender e utilizar gémeos do dispositivo no IoT Hub.

Limpar os recursos

Se planeia continuar a trabalhar e a explorar a amostra do cliente do dispositivo, não limpe os recursos criados neste arranque rápido. Se não pretende continuar, use os seguintes passos para eliminar todos os recursos criados por este arranque rápido.

Elimine a inscrição do seu dispositivo

  1. Feche a janela da saída do exemplo de dispositivo cliente no seu computador.

  2. A partir do menu à esquerda no portal Azure, selecione Todos os recursos.

  3. Selecione o seu serviço de provisionamento de dispositivos.

  4. No menu Definições, selecione Gerir as inscrições.

  5. Selecione o separador Inscrições Individuais.

  6. Selecione a caixa de verificação ao lado do ID de registo do dispositivo que inscreveu neste arranque rápido.

  7. No topo da página, selecione Delete.

Elimine o registo do seu dispositivo do IoT Hub

  1. A partir do menu à esquerda no portal Azure, selecione Todos os recursos.

  2. Selecione o seu hub IoT.

  3. No menu Explorers, selecione dispositivos IoT.

  4. Selecione a caixa de verificação ao lado do ID do dispositivo que registou neste arranque rápido.

  5. No topo da página, selecione Delete.

Passos seguintes

Neste arranque rápido, criou um dispositivo simulado TPM na sua máquina e forte-o para o seu hub IoT utilizando o Serviço de Provisionamento de Dispositivos IoT Hub. Para aprender a inscrever o seu dispositivo TPM programáticamente, continue a iniciar rapidamente a inscrição programática de um dispositivo TPM.