

Aviso de fim do suporte: em 7 de outubro de 2026, AWS o suporte para o. AWS IoT Greengrass Version 1 Depois de 7 de outubro de 2026, você não poderá mais acessar os AWS IoT Greengrass V1 recursos. Para obter mais informações, visite [Migrar de AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html).

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á.

# Como criar um recurso de segredo (console)
<a name="secrets-console"></a>

Esse recurso está disponível para AWS IoT Greengrass Core v1.7 e versões posteriores.

Este tutorial mostra como usar o Console de gerenciamento da AWS para adicionar um *recurso secreto* a um grupo do Greengrass. Um recurso secreto é uma referência a um formulário secreto AWS Secrets Manager. Para obter mais informações, consulte [Implante segredos até o AWS IoT Greengrass âmago](secrets.md).

No dispositivo AWS IoT Greengrass principal, os conectores e as funções Lambda podem usar o recurso secreto para se autenticar com serviços e aplicativos, sem codificar senhas, tokens ou outras credenciais.

Neste tutorial, você começa criando um segredo no AWS Secrets Manager console. Em seguida, no console do AWS IoT Greengrass , você adiciona um recurso de segredo a um grupo do Greengrass na página **Recursos** do grupo. Esse recurso de segredo faz referência ao segredo do Secrets Manager. Posteriormente, você anexará o recurso de segredode segredo a uma função do Lambda, o que permite à função obter o valor do segredo local.

**nota**  
Como alternativa, o console permite que você crie um segredo e um recurso de segredo ao configurar um conector ou uma função do Lambda. Você pode fazer isso na página **Configurar parâmetros** do conector ou na página **Recursos** da função do Lambda.  
Somente os conectores que contêm parâmetros para segredos podem acessar segredos. Para obter um tutorial que mostra como o conector de notificações Twilio usa um token de autenticação armazenamento localmente, consulte [Conceitos básicos de conectores do Greengrass (console)](connectors-console.md).

O tutorial contém as seguintes etapas de nível elevado:

1. [Crie um segredo do Secrets Manager](#secrets-console-create-secret)

1. [Adicionar um recurso de segredo a um grupo](#secrets-console-create-resource)

1. [Crie um pacote de implantação para a função do Lambda](#secrets-console-create-deployment-package)

1. [Criar uma função do Lambda](#secrets-console-create-function)

1. [Adicionar a função ao grupo](#secrets-console-create-gg-function)

1. [Anexar o recurso de segredo à função](#secrets-console-affiliate-gg-function)

1. [Adicionar assinaturas ao grupo](#secrets-console-create-subscription)

1. [Implantar o grupo](#secrets-console-create-deployment)

1. [Testar a função do Lambda](#secrets-console-test-solution)

O tutorial levará aproximadamente 20 minutos para ser concluído.

## Pré-requisitos
<a name="secrets-console-prerequisites"></a>

Para concluir este tutorial, é necessário:
+ Um grupo do Greengrass e um núcleo do Greengrass (versão 1.7 ou posterior). Para saber como criar um grupo e núcleo Greengrass, consulte [Começando com AWS IoT Greengrass](gg-gs.md). O tutorial de introdução também inclui etapas para instalar o software AWS IoT Greengrass Core.
+ AWS IoT Greengrass deve ser configurado para oferecer suporte a segredos locais. Para obter mais informações, consulte os [Requisitos de segredos](secrets.md#secrets-reqs).
**nota**  
Este requisito inclui permitir o acesso aos seus segredos do Secrets Manager. Se você estiver usando a função de serviço padrão do Greengrass, o Greengrass terá permissão para obter os valores de segredos com nomes que começam com *greengrass-*.
+ Para obter os valores dos segredos locais, suas funções Lambda definidas pelo usuário devem AWS IoT Greengrass usar o Core SDK v1.3.0 ou posterior.

## Etapa 1: Criar um segredo do Secrets Manager
<a name="secrets-console-create-secret"></a>

Nesta etapa, você usa o AWS Secrets Manager console para criar um segredo.

1. <a name="create-secret-step-signin"></a>Faça login no [console do AWS Secrets Manager](https://console.aws.amazon.com/secretsmanager/).
**nota**  
Para obter mais informações sobre esse processo, consulte [Etapa 1: Criar e armazenar seu segredo no AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/tutorials_basic.html) no *Guia do usuário do AWS Secrets Manager *.

1. <a name="create-secret-step-create"></a>Selecione **Armazenar um novo segredo**.

1. <a name="create-secret-step-othertype"></a>Em **Escolher tipo de segredo**, selecione **Outro tipo de segredo**.

1. Em **Specify the key/value pairs to be stored for this secret (Especificar os pares de chave/valor a serem armazenados para este segredo)**:
   + Em **Chave**, digite **test**.
   + Em **Valor**, insira **abcdefghi**.

1. <a name="create-secret-step-encryption"></a>Mantenha **aws/secretsmanager** selecionado para a chave de criptografia e selecione **Avançar**.
**nota**  
Você não será cobrado AWS KMS se usar a chave AWS gerenciada padrão que o Secrets Manager cria em sua conta.

1. Em **Secret name**, digite **greengrass-TestSecret** e selecione **Next**.
**nota**  
Por padrão, a função de serviço do Greengrass permite AWS IoT Greengrass obter o valor de segredos com nomes que começam com *greengrass* -. Para obter mais informações, consulte os [requisitos de segredos](secrets.md#secrets-reqs).

1. <a name="create-secret-step-rotation"></a>A alternância não é necessária neste tutorial, portanto, selecione Desabilitar a alternância automática e, em seguida, **Avançar**.

1. <a name="create-secret-step-review"></a>Na página **Review (Revisar)**, revise as configurações e selecione **Store (Armazenar)**.

   Em seguida, crie um recurso de segredo no seu grupo do Greengrass que faz referência ao segredo.

## Etapa 2: Adicionar um recurso de segredo a um grupo do Greengrass
<a name="secrets-console-create-resource"></a>

Nesta etapa, você configura um recurso de grupo que faz referência ao segredo do Secrets Manager.

1. <a name="console-gg-groups"></a>No painel de navegação do AWS IoT console, em **Gerenciar**, expanda dispositivos **Greengrass** e **escolha Grupos (**V1).

1. <a name="create-secret-resource-step-choosegroup"></a>Selecione o grupo ao qual você deseja adicionar o recurso de segredo.

1. <a name="create-secret-resource-step-secretstab"></a>Na página de configuração do grupo, selecione a guia **Recursos** e, em seguida, role para baixo até a seção **Segredos**. A seção **Segredos** exibe os recursos de segredos que pertencem ao grupo. Você pode adicionar, editar e remover recursos de segredos nessa seção.
**nota**  
Como alternativa, o console permite que você crie um segredo e um recurso de segredo ao configurar um conector ou uma função do Lambda. Você pode fazer isso na página **Configurar parâmetros** do conector ou na página **Recursos** da função do Lambda.

1. <a name="create-secret-resource-step-addsecretresource"></a>Selecione **Adicionar** na seção **Segredos**.

1. Na página **Adicionar um recurso de segredo**, insira **MyTestSecret** em **Nome do recurso**.

1. Em **Segredo**, escolha **greengrass-. TestSecret**

1. <a name="create-secret-resource-step-selectlabels"></a>Na seção **Selecionar rótulos (opcional)**, o rótulo AWSCURRENT intermediário representa a versão mais recente do segredo. Esse rótulo é sempre incluído em um recurso de segredo.
**nota**  
Este tutorial requer somente o AWSCURRENT rótulo. Você também pode incluir rótulos que a função do Lambda ou o connector exige.

1. Selecione **Adicionar recurso**.

## Etapa 3: crie um pacote de implantação para a função do Lambda
<a name="secrets-console-create-deployment-package"></a>

Para criar uma função do Lambda, você deve, primeiro, criar um *pacote de implantação* da função do Lambda que contenha o código da função e as dependências. As funções do Lambda do Greengrass exigem o [ SDK do AWS IoT Greengrass Core](lambda-functions.md#lambda-sdks-core) para tarefas como comunicação com mensagens MQTT no ambiente de núcleo e acesso a segredos locais. Este tutorial cria uma função Python, então você usa a versão Python do SDK no pacote de implantação.

**nota**  
Para obter os valores dos segredos locais, suas funções Lambda definidas pelo usuário devem AWS IoT Greengrass usar o Core SDK v1.3.0 ou posterior.

1. <a name="download-ggc-sdk"></a> Na página de downloads do [AWS IoT Greengrass Core SDK](what-is-gg.md#gg-core-sdk-download), baixe o AWS IoT Greengrass Core SDK para Python em seu computador.

1. <a name="unzip-ggc-sdk"></a>Descompacte o pacote obtido por download para obter o SDK. O SDK é a pasta do `greengrasssdk`.

1. Salve a seguinte função do código Python em um arquivo local denominado `secret_test.py`.

   ```
   import greengrasssdk
   
   secrets_client = greengrasssdk.client("secretsmanager")
   iot_client = greengrasssdk.client("iot-data")
   secret_name = "greengrass-TestSecret"
   send_topic = "secrets/output"
   
   
   def function_handler(event, context):
       """
       Gets a secret and publishes a message to indicate whether the secret was
       successfully retrieved.
       """
       response = secrets_client.get_secret_value(SecretId=secret_name)
       secret_value = response.get("SecretString")
       message = (
           f"Failed to retrieve secret {secret_name}."
           if secret_value is None
           else f"Successfully retrieved secret {secret_name}."
       )
       iot_client.publish(topic=send_topic, payload=message)
       print("Published: " + message)
   ```

   A função `get_secret_value` oferece suporte ao nome ou ARN do segredo do Secrets Manager para o valor `SecretId`. Esse exemplo usa o nome do segredo. Para este exemplo de segredo, AWS IoT Greengrass retorna o par de valores-chave:. `{"test":"abcdefghi"}`
**Importante**  
Certifique-se de que suas funções do Lambda definidas pelo usuário tratem os segredos com segurança e não registrem em log nenhum dado confidencial armazenado no segredo. Para obter mais informações, consulte [Mitigate the Risks of Logging and Debugging Your Lambda Function](https://docs.aws.amazon.com/secretsmanager/latest/userguide/best-practices.html#best-practice_lamda-debug-statements) no *Guia do usuário do AWS Secrets Manager *. Embora essa documentação se refira especificamente às funções de alternância, a recomendação também se aplica às funções do Lambda do Greengrass.

1. Comprima os seguintes itens em um arquivo denominado `secret_test_python.zip`. Quando você criar o arquivo ZIP, inclua apenas o código e suas dependências, e não a pasta que contém os arquivos.
   + **secret\$1test.py**. Lógica do aplicativo.
   + **greengrasssdk**. Biblioteca necessária para todas as funções Python do Lambda do Greengrass.

   Esse é o pacote de implantação de sua função do Lambda.

## Etapa 4: Criar uma função do Lambda
<a name="secrets-console-create-function"></a>

Nesta etapa, você usa o AWS Lambda console para criar uma função Lambda e configurá-la para usar seu pacote de implantação. Depois, publique uma versão da função e crie um alias.

1. Primeiro, crie a função do Lambda.

   1. <a name="lambda-console-open"></a>No Console de gerenciamento da AWS, escolha **Serviços** e abra o AWS Lambda console.

   1. <a name="lambda-console-create-function"></a>Selecione **Criar função** e, em seguida, selecione **Criar do zero**.

   1. Na seção **Basic information (Informações básicas)**, use os seguintes valores:
      + Em **Function name** (Nome da função), insira **SecretTest**.
      + Em **Runtime (Tempo de execução)**, selecione **Python 3.7**.
      + Em **Permissões**, mantenha a configuração padrão. Isso cria uma função de execução que concede permissões básicas do Lambda. Essa função não é usada por AWS IoT Greengrass.

   1. <a name="lambda-console-save-function"></a>Na parte inferior da página, selecione **Create function**.

1. Em seguida, registre o manipulador e faça upload do seu pacote de implantação da função do Lambda.

   1. <a name="lambda-console-upload"></a>Na guia **Código**, em **Fonte do código**, selecione **Fazer upload a partir de**. No menu suspenso, selecione o **arquivo .zip**.  
![\[O menu suspenso Fazer upload a partir de com o arquivo .zip destacado.\]](http://docs.aws.amazon.com/pt_br/greengrass/v1/developerguide/images/lra-console/upload-deployment-package.png)

   1. Selecione **Upload** e, em seguida, selecione seu pacote de implantação `secret_test_python.zip`. Selecione **Salvar**.

   1. <a name="lambda-console-runtime-settings-para"></a>Na guia **Código** da função, em **Configurações de runtime**, selecione **Editar** e insira os valores a seguir.
      + Em **Runtime (Tempo de execução)**, selecione **Python 3.7**.
      + Em **Handler (Manipulador)**, insira **secret\$1test.function\$1handler**.

   1. <a name="lambda-console-save-config"></a>Escolha **Salvar**.
**nota**  
O botão **Testar** no AWS Lambda console não funciona com essa função. O SDK AWS IoT Greengrass principal não contém módulos necessários para executar suas funções do Greengrass Lambda de forma independente no console. AWS Lambda Esses módulos (por exemplo, `greengrass_common`) são fornecidos às funções depois de serem implantados no núcleo do Greengrass.

1. Agora, publique a primeira versão da sua função do Lambda e crie um [alias para a versão](https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html).
**nota**  
Os grupos do Greengrass podem fazer referência a uma função do Lambda por alias (recomendado) ou por versão. Usar um alias facilita o gerenciamento de atualizações de código porque você não precisa alterar a tabela de assinaturas nem a definição do grupo ao atualizar a função do código. Em vez disso, você pode simplesmente apontar o alias para a nova versão da função.

   1. <a name="shared-publish-function-version"></a>No menu **Actions**, selecione **Publish new version**.

   1. <a name="shared-publish-function-version-description"></a>Em **Version description (Descrição da versão)**, insira **First version** e, em seguida, selecione **Publish (Publicar)**.

   1. Na página de configuração **SecretTest: 1**, no menu **Ações**, escolha **Criar alias**.

   1. Na página **Create a new alias**, use os seguintes valores:
      + Em **Nome**, digite **GG\$1SecretTest**.
      + Em **Version**, selecione **1**.
**nota**  
AWS IoT Greengrass **não oferece suporte a aliases Lambda para as versões \$1LATEST.**

   1. Selecione **Create** (Criar).

Agora, você está pronto para adicionar a função do Lambda ao seu grupo do Greengrass e anexar o recurso de segredo.

## Etapa 5: adicionar a função do Lambda ao grupo do Greengrass
<a name="secrets-console-create-gg-function"></a>

Nesta etapa, você adiciona a função do Lambda ao grupo do Greengrass no console do AWS IoT .

1. <a name="choose-add-lambda"></a>Na página de configuração do grupo, selecione a guia **Funções do Lambda**.

1. Na seção **Minhas funções do Lambda**, selecione **Adicionar**.

1. Para a **função Lambda, escolha**. **SecretTest**

1. Para a **Versão da função do Lambda**, selecione o alias para a versão que você publicou.

Em seguida, configure o ciclo de vida da função do Lambda.

1. Na seção **configuração da função do Lambda**, faça as atualizações a seguir.
**nota**  
 Recomendamos que você execute sua função do Lambda sem conteinerização, a menos que seu caso de negócios faça essa exigência. Isso ajuda a habilitar o acesso à GPU e à câmera do seu dispositivo sem configurar os recursos do dispositivo. Se você executa sem conteinerização, também deve conceder acesso root às suas funções do Lambda AWS IoT Greengrass . 

   1. **Para executar sem conteinerização:**
      + Para **Usuário e grupo do sistema**, selecione **Another user ID/group ID**. Para **ID de usuário do sistema**, insira **0**. Para **ID do grupo do sistema**, insira **0**.

        Isso permite que sua função do Lambda seja executada como root. Para obter mais informações sobre como executar como raiz, consulte [Definir a identidade de acesso padrão para as funções do Lambda em um grupo](lambda-group-config.md#lambda-access-identity-groupsettings).
**dica**  
Você também deve atualizar seu arquivo `config.json` para conceder acesso root à sua função do Lambda. Para o procedimento, consulte [Executar uma função do Lambda como raiz](lambda-group-config.md#lambda-running-as-root).
      + Para **conteinerização da função do Lambda**, selecione **Sem contêiner**.

        Para obter mais informações sobre como executar sem conteinerização, consulte [Considerações ao escolher a conteinerização de função do Lambda](lambda-group-config.md#lambda-containerization-considerations).
      + Em **Timeout (Tempo limite)**, insira **10 seconds**.
      + Para **Fixado**, selecione **Verdadeiro**.

        Para obter mais informações, consulte [Configuração do ciclo de vida das funções do Lambda do Greengrass](lambda-functions.md#lambda-lifecycle).
      + Em **Parâmetro adicional**, para **Acesso de leitura ao diretório /sys**, selecione **Habilitado**.

   1.  **Em vez disso, para executar no modo conteinerizado:** 
**nota**  
Não recomendamos a execução no modo conteinerizado, a menos que seu caso de negócios faça essa exigência.
      + Para **Usuário e grupo do sistema**, selecione **Usar padrão de grupo**.
      + Para **Conteinerização da função do Lambda**, selecione **Usar padrão de grupo**.
      + Em **Memory limit (Limite de memória)**, insira **1024 MB**.
      + Em **Timeout (Tempo limite)**, insira **10 seconds**.
      + Para **Fixado**, selecione **Verdadeiro**.

        Para obter mais informações, consulte [Configuração do ciclo de vida das funções do Lambda do Greengrass](lambda-functions.md#lambda-lifecycle).
      + Em **Parâmetros adicionais**, para **Acesso de leitura ao diretório /sys**, selecione **Habilitado**.

1.  Selecione **Adicionar função do Lambda**.

Em seguida, associe o recurso de segredo à função.

## Etapa 6: anexar o recurso de segredo à função do Lambda
<a name="secrets-console-affiliate-gg-function"></a>

Nesta etapa, você associa o recurso de segredo à função do função do Lambda em seu grupo do Greengrass. Isso associa o recurso à função, o que permite à função obter o valor do segredo local.

1. Na página de configuração do grupo, selecione a guia **Funções do Lambda**.

1. Escolha a **SecretTest**função.

1. Na página de detalhes da função, selecione **Recursos**.

1. Role até a seção **Segredos** e selecione **Associar**.

1. Escolha e **MyTestSecret**, em seguida, escolha **Associar**.

## Etapa 7: Adicionar assinaturas ao grupo do Greengrass
<a name="secrets-console-create-subscription"></a>

Nesta etapa, você adiciona assinaturas que permitem AWS IoT e a função Lambda para trocar mensagens. Uma assinatura permite AWS IoT invocar a função e outra permite que a função envie dados de saída para AWS IoT.

1. <a name="shared-subscriptions-addsubscription"></a>Na página de configuração do grupo, selecione a guia **Assinaturas** e, em seguida, **Adicionar assinatura**.

1. Crie uma assinatura que AWS IoT permita publicar mensagens na função.

   Na página de configuração do grupo, selecione a guia **Assinaturas** e, em seguida, **Adicionar assinatura**.

1. Na página **Criar uma assinatura**, configure a origem e o destino, da seguinte forma:

   1. Em **Tipo de origem**, selecione **Função do Lambda** e, em seguida, selecione **IoT Cloud**.

   1. Em **Tipo de destino**, escolha **Serviço** e, em seguida, escolha **SecretTest**.

   1. Em **Filtro de tópicos**, insira **secrets/input** e, em seguida, selecione **Criar assinatura**. 

1. Adicione uma segunda assinatura. Selecione a guia **Assinaturas**, selecione **Adicionar assinatura** e configure a origem e o destino, da seguinte forma: 

   1. Em **Tipo de origem**, escolha **Serviços** e, em seguida, escolha **SecretTest**.

   1. Em **Tipo de destino**, selecione **Função do Lambda** e, em seguida, selecione **IoT Cloud**.

   1. Em **Filtro de tópicos**, insira **secrets/output** e, em seguida, selecione **Criar assinatura**.

## Etapa 8: Implantar o grupo do Greengrass
<a name="secrets-console-create-deployment"></a>

Implante o grupo no dispositivo do núcleo. Durante a implantação, AWS IoT Greengrass obtém o valor do segredo no Secrets Manager e cria uma cópia local criptografada no núcleo.

1. <a name="shared-deploy-group-checkggc"></a>Certifique-se de que o AWS IoT Greengrass núcleo esteja funcionando. Execute os seguintes comandos no seu terminal do Raspberry Pi, conforme necessário.

   1. Para verificar se o daemon está em execução:

      ```
      ps aux | grep -E 'greengrass.*daemon'
      ```

      Se a saída contém uma entrada `root` para `/greengrass/ggc/packages/ggc-version/bin/daemon`, o daemon está em execução.
**nota**  
A versão no caminho depende da versão do software AWS IoT Greengrass principal que está instalada em seu dispositivo principal.

   1. Para iniciar o daemon:

      ```
      cd /greengrass/ggc/core/
      sudo ./greengrassd start
      ```

1. <a name="shared-deploy-group-deploy"></a>Na página de configuração do grupo, selecione **Implantar**.

1. <a name="shared-deploy-group-ipconfig"></a>

   1. Na guia **Funções do Lambda**, na seção **Funções do Lambda do sistema**, selecione **Detector de IP** e selecione **Editar**.

   1. Na caixa de diálogo **Editar configurações do detector IP**, selecione **Detectar e substituir automaticamente os endpoints do corretor MQTT**.

   1. Selecione **Salvar**.

      Isso permite que os dispositivos adquiram automaticamente as informações de conectividade para o núcleo, como endereço IP, DNS e o número da porta. A detecção automática é recomendada, mas AWS IoT Greengrass também oferece suporte a endpoints especificados manualmente. Você só é solicitado pelo método de descoberta na primeira vez em que o grupo for implantado.
**nota**  
Se solicitado, conceda permissão para criar a função de [serviço do Greengrass](service-role.md) e associá-la à Conta da AWS sua na atual. Região da AWS Essa função permite AWS IoT Greengrass acessar seus recursos em AWS serviços.

      A página **Deployments** mostra a data e hora, ID de versão e status da implantação. Quando concluída, o status exibido para a implantação deve ser **Concluída**.

      Para obter ajuda sobre a solução de problemas, consulte [Solução de problemas AWS IoT Greengrass](gg-troubleshooting.md).

## Testar a função do Lambda
<a name="secrets-console-test-solution"></a>

1. <a name="choose-test-page"></a>Na página inicial do AWS IoT console, escolha **Testar**.

1. Em **Inscrever-se no tópico**, use os seguintes valores e, em seguida, selecione **Inscrever-se**.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v1/developerguide/secrets-console.html)

1. Para **Publicar no tópico**, use os valores a seguir e, em seguida selecione **Publicar** para invocar a função.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/greengrass/v1/developerguide/secrets-console.html)

   Se for bem-sucedida, a função publicará uma mensagem de "Êxito".

## Consulte também
<a name="secrets-console-see-also"></a>
+ [Implante segredos até o AWS IoT Greengrass âmago](secrets.md)