Ejemplos de firmantes que utilizan AWS CLI - Ejemplos de código de AWS SDK

Hay más AWS SDK ejemplos disponibles en el GitHub repositorio de AWS Doc SDK Examples.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplos de firmantes que utilizan AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el uso de AWS Command Line Interface with Signer.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

Acciones

En el siguiente ejemplo de código, se muestra cómo utilizar cancel-signing-profile.

AWS CLI

Para eliminar un perfil de firma

En el siguiente cancel-signing-profile ejemplo, se elimina un perfil de firma existente de AWS Signer.

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

Este comando no genera ninguna salida.

  • Para API obtener más información, consulte CancelSigningProfilela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar describe-signing-job.

AWS CLI

Para mostrar los detalles de un trabajo de firma

En el siguiente ejemplo de describe-signing-job, se muestran los detalles del trabajo de firma especificado.

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

Salida:

{ "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 API obtener más información, consulte DescribeSigningJobla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar get-signing-platform.

AWS CLI

Para mostrar los detalles de una plataforma de firma

En el siguiente ejemplo de get-signing-platform, se muestran los detalles de la plataforma de firma especificada.

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

Salida:

{ "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 API obtener más información, consulte GetSigningPlatformla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar get-signing-profile.

AWS CLI

Para mostrar los detalles de un perfil de firma

En el siguiente ejemplo de get-signing-profile, se muestran los detalles del perfil de firma especificado.

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

Salida:

{ "platformId": "AmazonFreeRTOS-TI-CC3220SF", "profileName": "MyProfile3", "status": "Active", "signingMaterial": { "certificateArn": "arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc" } }
  • Para API obtener más información, consulte GetSigningProfilela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar list-signing-jobs.

AWS CLI

Para enumerar todos los trabajos de firma

En el siguiente ejemplo de list-signing-jobs, se muestran los detalles de todos los trabajos de firma de la cuenta.

aws signer list-signing-jobs

En este ejemplo, se devuelven dos trabajos, uno correcto y otro erróneo.

{ "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 API obtener más información, consulte ListSigningJobsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar list-signing-platforms.

AWS CLI

Para enumerar todas las plataformas de firma

En el siguiente ejemplo de list-signing-platforms, se muestran los detalles de todas las plataformas de firma disponibles.

aws signer list-signing-platforms

Salida:

{ "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 API obtener más información, consulte ListSigningPlatformsla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar list-signing-profiles.

AWS CLI

Para enumerar todos los perfiles de firma

En el siguiente ejemplo de list-signing-profiles, se muestran los detalles de todos los perfiles de firma de la cuenta.

aws signer list-signing-profiles

Salida:

{ "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 API obtener más información, consulte ListSigningProfilesla Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar put-signing-profile.

AWS CLI

Para crear un perfil de firma

En el siguiente ejemplo de put-signing-profile, se crea un perfil de firma con el certificado y la 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

Salida:

{ "arn": "arn:aws:signer:us-west-2:123456789012:/signing-profiles/MyProfile6" }
  • Para API obtener más información, consulte PutSigningProfilela Referencia de AWS CLI comandos.

En el siguiente ejemplo de código, se muestra cómo utilizar start-signing-job.

AWS CLI

Para iniciar un trabajo de firma

En el siguiente ejemplo de start-signing-job, se inicia un trabajo de firma en el código que se encuentra en el origen especificado. Utiliza el perfil especificado para firmar y coloca el código firmado en el 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

El resultado es el ID del trabajo de firma.

{ "jobId": "2065c468-73e2-4385-a6c9-0123456789abc" }
  • Para API obtener más información, consulte StartSigningJobla Referencia de AWS CLI comandos.