Exemplos do Signer usando a AWS CLI
Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando a AWS Command Line Interface com o 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 exemplo
cancel-signing-profilea seguir remove um perfil de assinatura existente do AWS Signer.aws signer cancel-signing-profile \ --profile-nameMyProfile1Este comando não produz saída.
-
Para ver detalhes da API, consulte CancelSigningProfile
na Referência de comandos da AWS CLI.
-
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-joba seguir exibe os detalhes do trabalho de assinatura especificado.aws signer describe-signing-job \ --job-id2065c468-73e2-4385-a6c9-0123456789abcSaí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 ver detalhes da API, consulte DescribeSigningJob
na Referência de comandos da AWS CLI.
-
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-platforma seguir exibe os detalhes da plataforma de assinatura especificada.aws signer get-signing-platform \ --platform-idAmazonFreeRTOS-TI-CC3220SFSaí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 ver detalhes da API, consulte GetSigningPlatform
na Referência de comandos da AWS CLI.
-
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-profilea seguir exibe os detalhes do perfil de assinatura especificado.aws signer get-signing-profile \ --profile-nameMyProfile3Saí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 ver detalhes da API, consulte GetSigningProfile
na Referência de comandos da AWS CLI.
-
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-jobsa seguir exibe detalhes sobre todos os trabalhos de assinatura da conta.aws signer list-signing-jobsNeste 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 ver detalhes da API, consulte ListSigningJobs
na Referência de comandos da AWS CLI.
-
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-platformsa seguir exibe detalhes sobre todas as plataformas de assinatura disponíveis.aws signer list-signing-platformsSaí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" ] } } ] }-
Para ver detalhes da API, consulte ListSigningPlatforms
na Referência de comandos da AWS CLI.
-
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-profilesa seguir exibe detalhes sobre todos os perfis de assinatura da conta.aws signer list-signing-profilesSaí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" } } ] }-
Para ver detalhes da API, consulte ListSigningProfiles
na Referência de comandos da AWS CLI.
-
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-profilea seguir cria um perfil de assinatura usando o certificado e a plataforma especificados.aws signer put-signing-profile \ --profile-nameMyProfile6\ --signing-materialcertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc\ --platformAmazonFreeRTOS-TI-CC3220SFSaída:
{ "arn": "arn:aws:signer:us-west-2:123456789012:/signing-profiles/MyProfile6" }-
Para ver detalhes da API, consulte PutSigningProfile
na Referência de comandos da AWS CLI.
-
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-joba 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-nameMyProfile7A saída é o ID do trabalho de assinatura.
{ "jobId": "2065c468-73e2-4385-a6c9-0123456789abc" }-
Para ver detalhes da API, consulte StartSigningJob
na Referência de comandos da AWS CLI.
-