Ejemplos de Signer que utilizan la AWS CLI
En los siguientes ejemplos de código, se muestra cómo realizar acciones e implementar escenarios comunes usando AWS Command Line Interface con 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.
Temas
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 ejemplo de
cancel-signing-profile
, 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 obtener información sobre la API, consulte CancelSigningProfile
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte DescribeSigningJob
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte GetSigningPlatform
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte GetSigningProfile
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte ListSigningJobs
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte ListSigningPlatforms
en la Referencia de comandos de la AWS CLI.
-
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 obtener información sobre la API, consulte ListSigningProfiles
en la Referencia de comandos de la AWS CLI.
-
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-materialcertificateArn=arn:aws:acm:us-west-2:123456789012:certificate/6a55389b-306b-4e8c-a95c-0123456789abc
\ --platformAmazonFreeRTOS-TI-CC3220SF
Salida:
{ "arn": "arn:aws:signer:us-west-2:123456789012:/signing-profiles/MyProfile6" }
-
Para obtener información sobre la API, consulte PutSigningProfile
en la Referencia de comandos de la AWS CLI.
-
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-nameMyProfile7
El resultado es el ID del trabajo de firma.
{ "jobId": "2065c468-73e2-4385-a6c9-0123456789abc" }
-
Para obtener información sobre la API, consulte StartSigningJob
en la Referencia de comandos de la AWS CLI.
-