Exemplos de signatários usando AWS CLI - AWS Exemplos de código do SDK

Há mais exemplos de AWS SDK disponíveis no repositório AWS Doc SDK Examples GitHub .

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

Exemplos de signatários usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface with Signer.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

Tópicos

Ações

O código de exemplo a seguir mostra como usar cancel-signing-profile.

AWS CLI

Para excluir um perfil de assinatura

O cancel-signing-profile exemplo a seguir remove um perfil de assinatura existente do AWS Signer.

aws signer cancel-signing-profile \ --profile-name MyProfile1

Este comando não produz saída.

O código de exemplo a seguir mostra como usar describe-signing-job.

AWS CLI

Como exibir detalhes sobre um trabalho de assinatura

O exemplo describe-signing-job a seguir exibe os detalhes do trabalho de assinatura especificado.

aws signer describe-signing-job \ --job-id 2065c468-73e2-4385-a6c9-0123456789abc

Saída:

{ "status": "Succeeded", "completedAt": 1568412037, "platformId": "AmazonFreeRTOS-Default", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" }, "statusReason": "Signing Succeeded", "jobId": "2065c468-73e2-4385-a6c9-0123456789abc", "source": { "s3": { "version": "PNyFaUTgsQh5ZdMCcoCe6pT1gOpgB_M4", "bucketName": "signer-source", "key": "MyCode.rb" } }, "profileName": "MyProfile2", "signedObject": { "s3": { "bucketName": "signer-destination", "key": "signed-2065c468-73e2-4385-a6c9-0123456789abc" } }, "requestedBy": "arn:aws:iam::123456789012:user/maria", "createdAt": 1568412036 }
  • Para obter detalhes da API, consulte DescribeSigningJobem Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar get-signing-platform.

AWS CLI

Como exibir detalhes sobre uma plataforma de assinatura

O exemplo get-signing-platform a seguir exibe os detalhes da plataforma de assinatura especificada.

aws signer get-signing-platform \ --platform-id AmazonFreeRTOS-TI-CC3220SF

Saída:

{ "category": "AWS", "displayName": "Amazon FreeRTOS SHA1-RSA CC3220SF-Format", "target": "SHA1-RSA-TISHA1", "platformId": "AmazonFreeRTOS-TI-CC3220SF", "signingConfiguration": { "encryptionAlgorithmOptions": { "defaultValue": "RSA", "allowedValues": [ "RSA" ] }, "hashAlgorithmOptions": { "defaultValue": "SHA1", "allowedValues": [ "SHA1" ] } }, "maxSizeInMB": 16, "partner": "AmazonFreeRTOS", "signingImageFormat": { "defaultFormat": "JSONEmbedded", "supportedFormats": [ "JSONEmbedded" ] } }
  • Para obter detalhes da API, consulte GetSigningPlatformem Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar get-signing-profile.

AWS CLI

Como exibir detalhes sobre um perfil de assinatura

O exemplo get-signing-profile a seguir exibe os detalhes do perfil de assinatura especificado.

aws signer get-signing-profile \ --profile-name MyProfile3

Saída:

{ "platformId": "AmazonFreeRTOS-TI-CC3220SF", "profileName": "MyProfile3", "status": "Active", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" } }
  • Para obter detalhes da API, consulte GetSigningProfileem Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar list-signing-jobs.

AWS CLI

Para listar todos os trabalhos de assinatura

O exemplo list-signing-jobs a seguir exibe detalhes sobre todos os trabalhos de assinatura da conta.

aws signer list-signing-jobs

Neste exemplo, dois trabalhos são retornados, um bem-sucedido e outro com falha.

{ "jobs": [ { "status": "Succeeded", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" }, "jobId": "2065c468-73e2-4385-a6c9-0123456789abc", "source": { "s3": { "version": "PNyFaUTgsQh5ZdMCcoCe6pT1gOpgB_M4", "bucketName": "signer-source", "key": "MyCode.rb" } }, "signedObject": { "s3": { "bucketName": "signer-destination", "key": "signed-2065c468-73e2-4385-a6c9-0123456789abc" } }, "createdAt": 1568412036 }, { "status": "Failed", "source": { "s3": { "version": "PNyFaUTgsQh5ZdMCcoCe6pT1gOpgB_M4", "bucketName": "signer-source", "key": "MyOtherCode.rb" } }, "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" }, "createdAt": 1568402690, "jobId": "74d9825e-22fc-4a0d-b962-0123456789abc" } ] }
  • Para obter detalhes da API, consulte ListSigningJobsem Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar list-signing-platforms.

AWS CLI

Para listar todas as plataformas de assinatura

O exemplo list-signing-platforms a seguir exibe detalhes sobre todas as plataformas de assinatura disponíveis.

aws signer list-signing-platforms

Saída:

{ "platforms": [ { "category": "AWS", "displayName": "AWS IoT Device Management SHA256-ECDSA ", "target": "SHA256-ECDSA", "platformId": "AWSIoTDeviceManagement-SHA256-ECDSA", "signingConfiguration": { "encryptionAlgorithmOptions": { "defaultValue": "ECDSA", "allowedValues": [ "ECDSA" ] }, "hashAlgorithmOptions": { "defaultValue": "SHA256", "allowedValues": [ "SHA256" ] } }, "maxSizeInMB": 2048, "partner": "AWSIoTDeviceManagement", "signingImageFormat": { "defaultFormat": "JSONDetached", "supportedFormats": [ "JSONDetached" ] } }, { "category": "AWS", "displayName": "Amazon FreeRTOS SHA1-RSA CC3220SF-Format", "target": "SHA1-RSA-TISHA1", "platformId": "AmazonFreeRTOS-TI-CC3220SF", "signingConfiguration": { "encryptionAlgorithmOptions": { "defaultValue": "RSA", "allowedValues": [ "RSA" ] }, "hashAlgorithmOptions": { "defaultValue": "SHA1", "allowedValues": [ "SHA1" ] } }, "maxSizeInMB": 16, "partner": "AmazonFreeRTOS", "signingImageFormat": { "defaultFormat": "JSONEmbedded", "supportedFormats": [ "JSONEmbedded" ] } }, { "category": "AWS", "displayName": "Amazon FreeRTOS SHA256-ECDSA", "target": "SHA256-ECDSA", "platformId": "AmazonFreeRTOS-Default", "signingConfiguration": { "encryptionAlgorithmOptions": { "defaultValue": "ECDSA", "allowedValues": [ "ECDSA" ] }, "hashAlgorithmOptions": { "defaultValue": "SHA256", "allowedValues": [ "SHA256" ] } }, "maxSizeInMB": 16, "partner": "AmazonFreeRTOS", "signingImageFormat": { "defaultFormat": "JSONEmbedded", "supportedFormats": [ "JSONEmbedded" ] } } ] }

O código de exemplo a seguir mostra como usar list-signing-profiles.

AWS CLI

Para listar todos os perfis de assinatura

O exemplo list-signing-profiles a seguir exibe detalhes sobre todos os perfis de assinatura da conta.

aws signer list-signing-profiles

Saída:

{ "profiles": [ { "platformId": "AmazonFreeRTOS-TI-CC3220SF", "profileName": "MyProfile4", "status": "Active", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" } }, { "platformId": "AWSIoTDeviceManagement-SHA256-ECDSA", "profileName": "MyProfile5", "status": "Active", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" } } ] }

O código de exemplo a seguir mostra como usar put-signing-profile.

AWS CLI

Para criar um perfil de assinatura

O exemplo put-signing-profile a seguir cria um perfil de assinatura usando o certificado e a plataforma especificados.

aws signer put-signing-profile \ --profile-name MyProfile6 \ --signing-material certificateArn=arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc \ --platform AmazonFreeRTOS-TI-CC3220SF

Saída:

{ "arn": "arn:aws:signer:us-west-2:123456789012:/signing-profiles/MyProfile6" }
  • Para obter detalhes da API, consulte PutSigningProfileem Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar start-signing-job.

AWS CLI

Como começar um trabalho de assinatura

O exemplo start-signing-job a seguir inicia um trabalho de assinatura no código encontrado na fonte especificada. Ele usa o perfil especificado para fazer a assinatura e coloca o código assinado no destino especificado.

aws signer start-signing-job \ --source 's3={bucketName=signer-source,key=MyCode.rb,version=PNyFaUTgsQh5ZdMCcoCe6pT1gOpgB_M4}' \ --destination 's3={bucketName=signer-destination,prefix=signed-}' \ --profile-name MyProfile7

A saída é o ID do trabalho de assinatura.

{ "jobId": "2065c468-73e2-4385-a6c9-0123456789abc" }
  • Para obter detalhes da API, consulte StartSigningJobem Referência de AWS CLI Comandos.