As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Os procedimentos nesta seção começam com a imagem do microSD salva que tem a AWS CLI e o AWS IoT Device Client instalados e criam os recursos e certificados de dispositivo AWS IoT que provisionam o Raspberry Pi na AWS IoT.
Instale o cartão microSD no Raspberry Pi
Este procedimento instala o cartão microSD com o software necessário carregado e configurado no Raspberry Pi e o configura sua Conta da AWS para que você possa continuar com os tutoriais neste percurso de aprendizado.
Use um cartão microSD de (Opcional) Salve a imagem do cartão microSD que tenha o software necessário para os exercícios e tutoriais deste percurso de aprendizado.
Para instalar o cartão microSD no Raspberry Pi
-
Com a alimentação desconectada do Raspberry Pi, insira o cartão microSD no Raspberry Pi.
-
Ligue o Raspberry Pi.
-
Após cerca de um minuto, no computador host local, reinicie a sessão da janela do terminal e faça login no Raspberry Pi.
-
No computador host local, na janela do terminal e com as credenciais de ID da chave de acesso de Chave de acesso secreta do Raspberry Pi:
-
Execute a aplicação de configuração da AWS com este comando:
aws configure
-
Insira as credenciais da Conta da AWS e informações de configuração quando solicitado:
AWS Access Key ID [****************YXYX]:
your Access Key ID
AWS Secret Access Key [****************YXYX]:your Secret Access Key
Default region name [us-west-2]:your Região da AWS code
Default output format [json]:json
-
Depois de restaurar suas credenciais da Conta da AWS, você estará pronto para continuar em Provisionar um dispositivo no AWS IoT Core.
Provisionar um dispositivo no AWS IoT Core
O procedimento nesta seção cria os recursos da AWS IoT que provisionam o Raspberry Pi na AWS IoT. Ao criar esses recursos, você deverá registrar várias informações. Essas informações serão usadas pela configuração do AWS IoT Device Client no próximo procedimento.
Para que o Raspberry Pi funcione com AWS IoT, ele deve ser provisionado. O provisionamento é o processo de criar e configurar os recursos de AWS IoT necessários para oferecer suporte ao Raspberry Pi como um dispositivo de IoT.
Com o Raspberry Pi ligado e reiniciado, conecte a janela do terminal no computador host local ao Raspberry Pi e conclua esses procedimentos.
Procedimentos desta seção:
Crie e baixe arquivos de certificado
Este procedimento cria os arquivos de certificado de dispositivo para esta demonstração.
Para criar e baixar os arquivos de certificado de dispositivo para o Raspberry Pi
-
Na janela do terminal do computador host local, insira esses comandos para criar os arquivos de certificado de dispositivo para o dispositivo.
mkdir ~/certs/testconn aws iot create-keys-and-certificate \ --set-as-active \ --certificate-pem-outfile "~/certs/testconn/device.pem.crt" \ --public-key-outfile "~/certs/testconn/public.pem.key" \ --private-key-outfile "~/certs/testconn/private.pem.key"
O comando retorna uma resposta como a seguinte. Registre o valor de
para uso posterior.certificateArn
{ "certificateArn": "
arn:aws:iot:us-west-2:57EXAMPLE833:cert/76e7e4edb3e52f52334be2f387a06145b2aa4c7fcd810f3aea2d92abc227d269
", "certificateId": "76e7e4edb3e52f5233EXAMPLE7a06145b2aa4c7fcd810f3aea2d92abc227d269", "certificatePem": "-----BEGIN CERTIFICATE-----\nMIIDWTCCAkGgAwIBAgI_SHORTENED_FOR_EXAMPLE_Lgn4jfgtS\n-----END CERTIFICATE-----\n", "keyPair": { "PublicKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BA_SHORTENED_FOR_EXAMPLE_ImwIDAQAB\n-----END PUBLIC KEY-----\n", "PrivateKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQE_SHORTENED_FOR_EXAMPLE_T9RoDiukY\n-----END RSA PRIVATE KEY-----\n" } } -
Insira os comandos a seguir para definir as permissões no diretório de certificados e arquivos.
chmod 745 ~ chmod 700 ~/certs/testconn chmod 644 ~/certs/testconn/* chmod 600 ~/certs/testconn/private.pem.key
-
Execute este comando para examinar as permissões nos diretórios e arquivos do certificado.
ls -l ~/certs/testconn
A saída do comando deve ser a mesma vista aqui, com exceção das datas e horários do arquivo, que serão diferentes.
-rw-r--r-- 1 pi pi 1220 Oct 28 13:02 device.pem.crt -rw------- 1 pi pi 1675 Oct 28 13:02 private.pem.key -rw-r--r-- 1 pi pi 451 Oct 28 13:02 public.pem.key
Neste ponto, você tem os arquivos de certificado do dispositivo instalados no Raspberry Pi e pode continuar em Criar recursos do AWS IoT.
Criar recursos do AWS IoT
Este procedimento provisiona o dispositivo na AWS IoT criando os recursos necessários para acessar recursos e serviços da AWS IoT.
Para provisionar seu dispositivo no AWS IoT
-
Na janela do terminal do computador host local, insira o comando a seguir para obter o endereço do endpoint de dados do dispositivo da sua Conta da AWS.
aws iot describe-endpoint --endpoint-type IoT:Data-ATS
O comando das etapas anteriores retorna uma resposta como a seguir. Registre o valor de
para uso posterior.endpointAddress
{ "endpointAddress": "
a3qjEXAMPLEffp-ats.iot.us-west-2.amazonaws.com
" } -
Digite este comando para criar um recurso de objeto do AWS IoT para o Raspberry Pi.
aws iot create-thing --thing-name "DevCliTestThing"
Se o recurso de objeto do AWS IoT foi criado, o comando retornará uma resposta semelhante a esta.
{ "thingName": "DevCliTestThing", "thingArn": "arn:aws:iot:us-west-2:57EXAMPLE833:thing/DevCliTestThing", "thingId": "8ea78707-32c3-4f8a-9232-14bEXAMPLEfd" }
-
Na janela do terminal:
-
Abra um editor de texto, como o
nano
. -
Copie este documento de política JSON e cole-o no editor de texto aberto.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Publish", "iot:Subscribe", "iot:Receive", "iot:Connect" ], "Resource": [ "*" ] } ] }
nota
Este documento de política concede generosamente a cada recurso permissão para se conectar, receber, publicar e assinar. Normalmente, as políticas concedem permissão somente a recursos específicos para realizar ações específicas. No entanto, para o teste inicial de conectividade do dispositivo, essa política excessivamente geral e permissiva é usada para minimizar a chance de um problema de acesso durante esse teste. Nos tutoriais subsequentes, documentos de políticas com escopo mais restrito serão usados para demonstrar práticas recomendadas na elaboração de políticas.
-
Salve o arquivo no editor de texto como
~/policies/dev_cli_test_thing_policy.json
.
-
-
Execute o seguinte comando para usar o documento de política das etapas anteriores para criar uma política do AWS IoT.
aws iot create-policy \ --policy-name "DevCliTestThingPolicy" \ --policy-document "file://~/policies/dev_cli_test_thing_policy.json"
Se a política for criada, o comando retornará uma resposta como esta.
{ "policyName": "DevCliTestThingPolicy", "policyArn": "arn:aws:iot:us-west-2:57EXAMPLE833:policy/DevCliTestThingPolicy", "policyDocument": "{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Action\": [\n \"iot:Publish\",\n \"iot:Subscribe\",\n \"iot:Receive\",\n \"iot:Connect\"\n ],\n \"Resource\": [\n \"*\"\n ]\n }\n ]\n}\n", "policyVersionId": "1" }
-
Execute este comando para anexar a política ao certificado do dispositivo. Substitua
pelo valor decertificateArn
certificateArn
salvo anteriormente.aws iot attach-policy \ --policy-name "DevCliTestThingPolicy" \ --target "
certificateArn
"Se houver êxito, o comando não retornará nada.
-
Execute o comando a seguir para anexar o certificado de dispositivo ao recurso de objeto do AWS IoT. Substitua
pelo valor decertificateArn
certificateArn
salvo anteriormente.aws iot attach-thing-principal \ --thing-name "DevCliTestThing" \ --principal "
certificateArn
"Se houver êxito, o comando não retornará nada.
Depois de provisionar o dispositivo com sucesso na AWS IoT, você estará pronto para continuar em Configurar o AWS IoT Device Client para testar a conectividade.