• 沒有找到結果。

Code Signing for Amazon FreeRTOS API Reference API Version 2017-08-25

N/A
N/A
Protected

Academic year: 2022

Share "Code Signing for Amazon FreeRTOS API Reference API Version 2017-08-25"

Copied!
91
0
0

加載中.... (立即查看全文)

全文

(1)

Code Signing for Amazon FreeRTOS

API Reference

API Version 2017-08-25

(2)

Code Signing for Amazon FreeRTOS: API Reference

Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon.

(3)

Table of Contents

Welcome ... 1

Actions ... 2

AddProfilePermission ... 3

Request Syntax ... 3

URI Request Parameters ... 3

Request Body ... 3

Response Syntax ... 4

Response Elements ... 4

Errors ... 4

See Also ... 5

CancelSigningProfile ... 6

Request Syntax ... 6

URI Request Parameters ... 6

Request Body ... 6

Response Syntax ... 6

Response Elements ... 6

Errors ... 6

See Also ... 7

DescribeSigningJob ... 8

Request Syntax ... 8

URI Request Parameters ... 8

Request Body ... 8

Response Syntax ... 8

Response Elements ... 9

Errors ... 11

Examples ... 11

See Also ... 12

GetSigningPlatform ... 14

Request Syntax ... 14

URI Request Parameters ... 14

Request Body ... 14

Response Syntax ... 14

Response Elements ... 14

Errors ... 15

See Also ... 16

GetSigningProfile ... 17

Request Syntax ... 17

URI Request Parameters ... 17

Request Body ... 17

Response Syntax ... 17

Response Elements ... 18

Errors ... 19

See Also ... 20

ListProfilePermissions ... 21

Request Syntax ... 21

URI Request Parameters ... 21

Request Body ... 21

Response Syntax ... 21

Response Elements ... 21

Errors ... 22

See Also ... 22

ListSigningJobs ... 24

Request Syntax ... 24

URI Request Parameters ... 24

(4)

Request Body ... 25

Response Syntax ... 25

Response Elements ... 25

Errors ... 26

Examples ... 26

See Also ... 28

ListSigningPlatforms ... 29

Request Syntax ... 29

URI Request Parameters ... 29

Request Body ... 29

Response Syntax ... 29

Response Elements ... 30

Errors ... 30

See Also ... 31

ListSigningProfiles ... 32

Request Syntax ... 32

URI Request Parameters ... 32

Request Body ... 32

Response Syntax ... 32

Response Elements ... 33

Errors ... 33

See Also ... 34

ListTagsForResource ... 35

Request Syntax ... 35

URI Request Parameters ... 35

Request Body ... 35

Response Syntax ... 35

Response Elements ... 35

Errors ... 36

See Also ... 36

PutSigningProfile ... 37

Request Syntax ... 37

URI Request Parameters ... 37

Request Body ... 37

Response Syntax ... 38

Response Elements ... 39

Errors ... 39

See Also ... 40

RemoveProfilePermission ... 41

Request Syntax ... 41

URI Request Parameters ... 41

Request Body ... 41

Response Syntax ... 41

Response Elements ... 41

Errors ... 42

See Also ... 42

RevokeSignature ... 43

Request Syntax ... 43

URI Request Parameters ... 43

Request Body ... 43

Response Syntax ... 43

Response Elements ... 44

Errors ... 44

See Also ... 44

RevokeSigningProfile ... 45

Request Syntax ... 45

URI Request Parameters ... 45

(5)

Request Body ... 45

Response Syntax ... 46

Response Elements ... 46

Errors ... 46

See Also ... 46

StartSigningJob ... 48

Request Syntax ... 48

URI Request Parameters ... 48

Request Body ... 48

Response Syntax ... 49

Response Elements ... 49

Errors ... 50

Examples ... 50

See Also ... 51

TagResource ... 53

Request Syntax ... 53

URI Request Parameters ... 53

Request Body ... 53

Response Syntax ... 53

Response Elements ... 53

Errors ... 54

See Also ... 54

UntagResource ... 55

Request Syntax ... 55

URI Request Parameters ... 55

Request Body ... 55

Response Syntax ... 55

Response Elements ... 55

Errors ... 55

See Also ... 56

Data Types ... 57

Destination ... 58

Contents ... 58

See Also ... 58

EncryptionAlgorithmOptions ... 59

Contents ... 59

See Also ... 59

HashAlgorithmOptions ... 60

Contents ... 60

See Also ... 60

Permission ... 61

Contents ... 61

See Also ... 61

S3Destination ... 62

Contents ... 62

See Also ... 62

S3SignedObject ... 63

Contents ... 63

See Also ... 63

S3Source ... 64

Contents ... 64

See Also ... 64

SignatureValidityPeriod ... 65

Contents ... 65

See Also ... 65

SignedObject ... 66

Contents ... 66

(6)

See Also ... 66

SigningConfiguration ... 67

Contents ... 67

See Also ... 67

SigningConfigurationOverrides ... 68

Contents ... 68

See Also ... 68

SigningImageFormat ... 69

Contents ... 69

See Also ... 69

SigningJob ... 70

Contents ... 70

See Also ... 72

SigningJobRevocationRecord ... 73

Contents ... 73

See Also ... 73

SigningMaterial ... 74

Contents ... 74

See Also ... 74

SigningPlatform ... 75

Contents ... 75

See Also ... 76

SigningPlatformOverrides ... 77

Contents ... 77

See Also ... 77

SigningProfile ... 78

Contents ... 78

See Also ... 79

SigningProfileRevocationRecord ... 80

Contents ... 80

See Also ... 80

Source ... 81

Contents ... 81

See Also ... 81

Common Parameters ... 82

Common Errors ... 84

(7)

Welcome

AWS Signer is a fully managed code signing service to help you ensure the trust and integrity of your code.

AWS Signer supports the following applications:

With code signing for AWS Lambda, you can sign AWS Lambda deployment packages. Integrated support is provided for Amazon S3, Amazon CloudWatch, and AWS CloudTrail. In order to sign code, you create a signing profile and then use Signer to sign Lambda zip files in S3.

With code signing for IoT, you can sign code for any IoT device that is supported by AWS. IoT code signing is available for Amazon FreeRTOS and AWS IoT Device Management, and is integrated with AWS Certificate Manager (ACM). In order to sign code, you import a third-party code signing certificate using ACM, and use that to sign updates in Amazon FreeRTOS and AWS IoT Device Management.

For more information about AWS Signer, see the AWS Signer Developer Guide.

This document was last published on March 6, 2022.

(8)

Actions

The following actions are supported:

• AddProfilePermission (p. 3)

• CancelSigningProfile (p. 6)

• DescribeSigningJob (p. 8)

• GetSigningPlatform (p. 14)

• GetSigningProfile (p. 17)

• ListProfilePermissions (p. 21)

• ListSigningJobs (p. 24)

• ListSigningPlatforms (p. 29)

• ListSigningProfiles (p. 32)

• ListTagsForResource (p. 35)

• PutSigningProfile (p. 37)

• RemoveProfilePermission (p. 41)

• RevokeSignature (p. 43)

• RevokeSigningProfile (p. 45)

• StartSigningJob (p. 48)

• TagResource (p. 53)

• UntagResource (p. 55)

(9)

AddProfilePermission

AddProfilePermission

Adds cross-account permissions to a signing profile.

Request Syntax

POST /signing-profiles/profileName/permissions HTTP/1.1 Content-type: application/json

{ "action": "string", "principal": "string", "profileVersion": "string", "revisionId": "string", "statementId": "string"

}

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 3)

The human-readable name of the signing profile.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes

Request Body

The request accepts the following data in JSON format.

action (p. 3)

The AWS Signer action permitted as part of cross-account permissions.

Type: String Required: Yes principal (p. 3)

The AWS principal receiving cross-account permissions. This may be an IAM role or another AWS account ID.

Type: String Required: Yes profileVersion (p. 3)

The version of the signing profile.

Type: String

(10)

Response Syntax

Length Constraints: Fixed length of 10.

Pattern: ^[a-zA-Z0-9]{10}$

Required: No revisionId (p. 3)

A unique identifier for the current profile revision.

Type: String Required: No statementId (p. 3)

A unique identifier for the cross-account permission statement.

Type: String Required: Yes

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"revisionId": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

revisionId (p. 4)

A unique identifier for the current profile revision.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 ConflictException

The resource encountered a conflicting state.

HTTP Status Code: 409

(11)

See Also

InternalServiceErrorException An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 ServiceLimitExceededException

The client is making a request that exceeds service limits.

HTTP Status Code: 402 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(12)

CancelSigningProfile

CancelSigningProfile

Changes the state of an ACTIVE signing profile to CANCELED. A canceled profile is still viewable with the ListSigningProfiles operation, but it cannot perform new signing jobs, and is deleted two years after cancelation.

Request Syntax

DELETE /signing-profiles/profileName HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 6)

The name of the signing profile to be canceled.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Response Elements

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500

(13)

See Also

ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(14)

DescribeSigningJob

DescribeSigningJob

Returns information about a specific code signing job. You specify the job by using the jobId value that is returned by the StartSigningJob (p. 48) operation.

Request Syntax

GET /signing-jobs/jobId HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

jobId (p. 8)

The ID of the signing job on input.

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"completedAt": number, "createdAt": number, "jobId": "string", "jobInvoker": "string", "jobOwner": "string", "overrides": {

"signingConfiguration": {

"encryptionAlgorithm": "string", "hashAlgorithm": "string"

},

"signingImageFormat": "string"

},

"platformDisplayName": "string", "platformId": "string",

"profileName": "string", "profileVersion": "string", "requestedBy": "string", "revocationRecord": { "reason": "string", "revokedAt": number, "revokedBy": "string"

},

"signatureExpiresAt": number, "signedObject": {

"s3": {

"bucketName": "string", "key": "string"

(15)

Response Elements

} },

"signingMaterial": {

"certificateArn": "string"

},

"signingParameters": { "string" : "string"

},

"source": { "s3": {

"bucketName": "string", "key": "string",

"version": "string"

} },

"status": "string", "statusReason": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

completedAt (p. 8)

Date and time that the signing job was completed.

Type: Timestamp createdAt (p. 8)

Date and time that the signing job was created.

Type: Timestamp jobId (p. 8)

The ID of the signing job on output.

Type: String jobInvoker (p. 8)

The IAM entity that initiated the signing job.

Type: String

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

jobOwner (p. 8)

The AWS account ID of the job owner.

Type: String

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

overrides (p. 8)

A list of any overrides that were applied to the signing operation.

(16)

Response Elements

Type: SigningPlatformOverrides (p. 77) object platformDisplayName (p. 8)

A human-readable name for the signing platform associated with the signing job.

Type: String platformId (p. 8)

The microcontroller platform to which your signed code image will be distributed.

Type: String profileName (p. 8)

The name of the profile that initiated the signing operation.

Type: String

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

profileVersion (p. 8)

The version of the signing profile used to initiate the signing job.

Type: String

Length Constraints: Fixed length of 10.

Pattern: ^[a-zA-Z0-9]{10}$

requestedBy (p. 8)

The IAM principal that requested the signing job.

Type: String revocationRecord (p. 8)

A revocation record if the signature generated by the signing job has been revoked. Contains a timestamp and the ID of the IAM entity that revoked the signature.

Type: SigningJobRevocationRecord (p. 73) object signatureExpiresAt (p. 8)

Thr expiration timestamp for the signature generated by the signing job.

Type: Timestamp signedObject (p. 8)

Name of the S3 bucket where the signed code image is saved by code signing.

Type: SignedObject (p. 66) object signingMaterial (p. 8)

The Amazon Resource Name (ARN) of your code signing certificate.

Type: SigningMaterial (p. 74) object signingParameters (p. 8)

Map of user-assigned key-value pairs used during signing. These values contain any information that you specified for use in your signing job.

(17)

Errors

Type: String to string map source (p. 8)

The object that contains the name of your S3 bucket or your raw code.

Type: Source (p. 81) object status (p. 8)

Status of the signing job.

Type: String

Valid Values: InProgress | Failed | Succeeded statusReason (p. 8)

String value that contains the status reason.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

Examples

Describe a signing job

This example illustrates one usage of DescribeSigningJob.

Sample Request

GET /Prod/signing-jobs/9052caa6-1d8d-43b5-9ead-0cb8621c8c74 HTTP/1.1 Host: signer.us-east-1.amazonaws.com

(18)

See Also

Accept-Encoding: identity

Authorization: AWS4-HMAC-SHA256 Credential=access_key/us- east-1/signer/aws4_request, SignedHeaders=host;x-amz-date,

Signature=93e24ab743082913abfb466a13b2f65a7f3eec9893aa2dcbdc91d160b3d7ff67 X-Amz-Date: 20171115T165923Z

User-Agent: aws-cli/1.11.132 Python/2.7.9 Windows/8 botocore/1.5.95

Sample Response

HTTP/1.1 200 OK

Content-Type: application/json Content-Length: 631

Date: Wed, 15 Nov 2017 16:59:31 GMT

x-amzn-RequestId: 5946a79a-ca26-11e7-ae27-cda958f39b26

X-Amzn-Trace-Id: sampled=0;root=1-5a0c7273-fd33420b90425c1dc4b94bcc X-Cache: Miss from cloudfront

Via: 1.1 ce270f4a88edde7438864bc44406e83a.cloudfront.net (CloudFront) X-Amz-Cf-Id: hAkstXf07ycoa3HgI2MebhYgvyZ39K7zn2Z9mpqxsRlPjPphgaHZUQ==

Connection: Keep-alive

{ "jobId": "9052caa6-1d8d-43b5-9ead-0cb8621c8c74", "source": {

"s3": {

"bucketName": "signer-test-source", "key": "my-example-code.java",

"version": "W.OIrIFmjIFeuNXOaBJzPee66.wRg4GR"

}

}, "signingMaterial": {

"certificateArn": "arn:aws:acm:region:123456789012:certificate/9ec626ca-0bbb-4be5-83a2- ee563f8386ca"

},

"platform": "TexasInstruments", "signingParameters": null, "createdAt": 1510695622, "completedAt": 1510695623,

"requestedBy": "arn:aws:iam::123456789012:root", "status": "Succeeded",

"statusReason": "Signing success", "signedObject": {

"s3": {

"bucketName": "signer-test-dest",

"key": "9052caa6-1d8d-43b5-9ead-0cb8621c8c74"

} }}

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

(19)

See Also

• AWS SDK for Python

• AWS SDK for Ruby V3

(20)

GetSigningPlatform

GetSigningPlatform

Returns information on a specific signing platform.

Request Syntax

GET /signing-platforms/platformId HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

platformId (p. 14)

The ID of the target signing platform.

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"category": "string", "displayName": "string", "maxSizeInMB": number, "partner": "string", "platformId": "string",

"revocationSupported": boolean, "signingConfiguration": {

"encryptionAlgorithmOptions": { "allowedValues": [ "string" ], "defaultValue": "string"

},

"hashAlgorithmOptions": { "allowedValues": [ "string" ], "defaultValue": "string"

} },

"signingImageFormat": { "defaultFormat": "string", "supportedFormats": [ "string" ] },

"target": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

(21)

Errors

The following data is returned in JSON format by the service.

category (p. 14)

The category type of the target signing platform.

Type: String

Valid Values: AWSIoT displayName (p. 14)

The display name of the target signing platform.

Type: String maxSizeInMB (p. 14)

The maximum size (in MB) of the payload that can be signed by the target platform.

Type: Integer partner (p. 14)

A list of partner entities that use the target signing platform.

Type: String platformId (p. 14)

The ID of the target signing platform.

Type: String

revocationSupported (p. 14)

A flag indicating whether signatures generated for the signing platform can be revoked.

Type: Boolean

signingConfiguration (p. 14)

A list of configurations applied to the target platform at signing.

Type: SigningConfiguration (p. 67) object signingImageFormat (p. 14)

The format of the target platform's signing image.

Type: SigningImageFormat (p. 69) object target (p. 14)

The validation template that is used by the target signing platform.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

(22)

See Also

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(23)

GetSigningProfile

GetSigningProfile

Returns information on a specific signing profile.

Request Syntax

GET /signing-profiles/profileName?profileOwner=profileOwner HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 17)

The name of the target signing profile.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes profileOwner (p. 17)

The AWS account ID of the profile owner.

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"arn": "string", "overrides": {

"signingConfiguration": {

"encryptionAlgorithm": "string", "hashAlgorithm": "string"

},

"signingImageFormat": "string"

},

"platformDisplayName": "string", "platformId": "string",

"profileName": "string", "profileVersion": "string", "profileVersionArn": "string", "revocationRecord": {

"revocationEffectiveFrom": number, "revokedAt": number,

"revokedBy": "string"

(24)

Response Elements

},

"signatureValidityPeriod": { "type": "string",

"value": number },

"signingMaterial": {

"certificateArn": "string"

},

"signingParameters": { "string" : "string"

},

"status": "string", "statusReason": "string", "tags": {

"string" : "string"

} }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

arn (p. 17)

The Amazon Resource Name (ARN) for the signing profile.

Type: String overrides (p. 17)

A list of overrides applied by the target signing profile for signing operations.

Type: SigningPlatformOverrides (p. 77) object platformDisplayName (p. 17)

A human-readable name for the signing platform associated with the signing profile.

Type: String platformId (p. 17)

The ID of the platform that is used by the target signing profile.

Type: String profileName (p. 17)

The name of the target signing profile.

Type: String

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

profileVersion (p. 17)

The current version of the signing profile.

Type: String

Length Constraints: Fixed length of 10.

(25)

Errors

Pattern: ^[a-zA-Z0-9]{10}$

profileVersionArn (p. 17)

The signing profile ARN, including the profile version.

Type: String

Length Constraints: Minimum length of 20. Maximum length of 2048.

revocationRecord (p. 17)

Revocation information for a signing profile.

Type: SigningProfileRevocationRecord (p. 80) object signatureValidityPeriod (p. 17)

The validity period for a signing job.

Type: SignatureValidityPeriod (p. 65) object signingMaterial (p. 17)

The ARN of the certificate that the target profile uses for signing operations.

Type: SigningMaterial (p. 74) object signingParameters (p. 17)

A map of key-value pairs for signing operations that is attached to the target signing profile.

Type: String to string map status (p. 17)

The status of the target signing profile.

Type: String

Valid Values: Active | Canceled | Revoked statusReason (p. 17)

Reason for the status of the target signing profile.

Type: String tags (p. 17)

A list of tags associated with the signing profile.

Type: String to string map

Map Entries: Maximum number of 200 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

(26)

See Also

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(27)

ListProfilePermissions

ListProfilePermissions

Lists the cross-account permissions associated with a signing profile.

Request Syntax

GET /signing-profiles/profileName/permissions?nextToken=nextToken HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

nextToken (p. 21)

String for specifying the next set of paginated results.

profileName (p. 21)

Name of the signing profile containing the cross-account permissions.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json { "nextToken": "string", "permissions": [ {

"action": "string", "principal": "string", "profileVersion": "string", "statementId": "string"

} ],

"policySizeBytes": number, "revisionId": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

(28)

Errors

nextToken (p. 21)

String for specifying the next set of paginated results.

Type: String permissions (p. 21)

List of permissions associated with the Signing Profile.

Type: Array of Permission (p. 61) objects policySizeBytes (p. 21)

Total size of the policy associated with the Signing Profile in bytes.

Type: Integer revisionId (p. 21)

The identifier for the current revision of profile permissions.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

(29)

See Also

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(30)

ListSigningJobs

ListSigningJobs

Lists all your signing jobs. You can use the maxResults parameter to limit the number of signing jobs that are returned in the response. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

Request Syntax

GET /signing-jobs?

isRevoked=isRevoked&jobInvoker=jobInvoker&maxResults=maxResults&nextToken=nextToken&platformId=platformId&requestedBy=requestedBy&signatureExpiresAfter=signatureExpiresAfter&signatureExpiresBefore=signatureExpiresBefore&status=status HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

isRevoked (p. 24)

Filters results to return only signing jobs with revoked signatures.

jobInvoker (p. 24)

Filters results to return only signing jobs initiated by a specified IAM entity.

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

maxResults (p. 24)

Specifies the maximum number of items to return in the response. Use this parameter when

paginating results. If additional items exist beyond the number you specify, the nextToken element is set in the response. Use the nextToken value in a subsequent request to retrieve additional items.

Valid Range: Minimum value of 1. Maximum value of 25.

nextToken (p. 24)

String for specifying the next set of paginated results to return. After you receive a response with truncated results, use this parameter in a subsequent request. Set it to the value of nextToken from the response that you just received.

platformId (p. 24)

The ID of microcontroller platform that you specified for the distribution of your code image.

requestedBy (p. 24)

The IAM principal that requested the signing job.

signatureExpiresAfter (p. 24)

Filters results to return only signing jobs with signatures expiring after a specified timestamp.

signatureExpiresBefore (p. 24)

Filters results to return only signing jobs with signatures expiring before a specified timestamp.

(31)

Request Body

status (p. 24)

A status value with which to filter your results.

Valid Values: InProgress | Failed | Succeeded

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"jobs": [ {

"createdAt": number, "isRevoked": boolean, "jobId": "string", "jobInvoker": "string", "jobOwner": "string",

"platformDisplayName": "string", "platformId": "string",

"profileName": "string", "profileVersion": "string", "signatureExpiresAt": number, "signedObject": {

"s3": {

"bucketName": "string", "key": "string"

} },

"signingMaterial": {

"certificateArn": "string"

},

"source": { "s3": {

"bucketName": "string", "key": "string", "version": "string"

} },

"status": "string"

} ],

"nextToken": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

jobs (p. 25)

A list of your signing jobs.

(32)

Errors

Type: Array of SigningJob (p. 70) objects nextToken (p. 25)

String for specifying the next set of paginated results.

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

Examples

Example

This example illustrates one usage of ListSigningJobs.

Sample Request

GET /Prod/signing-jobs?status=InProgress&platform=TexasInstruments&maxResults=10 HTTP/1.1 Host: qvvi640b53.execute-api.us-east-1.amazonaws.com

Accept-Encoding: identity

Authorization: AWS4-HMAC-SHA256 Credential=access_key/20171115/

us-east-1/signer/aws4_request, SignedHeaders=host;x-amz-date,

Signature=59e5f7ac6c2193c1eb163b0a8f3b2b3ec47fc5687631aa4d42bdcfacc14d626a X-Amz-Date: 20171115T173358Z

User-Agent: aws-cli/1.11.132 Python/2.7.9 Windows/8 botocore/1.5.95

Sample Response

HTTP/1.1 200 OK

Content-Type: application/json

(33)

Examples

Content-Length: 1896

Date: Wed, 15 Nov 2017 17:34:06 GMT

x-amzn-RequestId: 2e5eaaf7-ca2b-11e7-bfa0-e7cd77b24597

X-Amzn-Trace-Id: sampled=0;root=1-5a0c7a8e-66a88aa1083a4631ce1a9e45 X-Cache: Miss from cloudfront

Via: 1.1 9ba06853e586727720bf0a1bf763bad7.cloudfront.net (CloudFront) X-Amz-Cf-Id: BtaBXTGIVWfSRurtkK7aMOcg39oiA1Uz3UCoPPQm5LWu5bt72gV_cA==

Connection: Keep-alive { "jobs": [{

"jobId": "ade0f15c-5857-4fcd-b731-43530bbd2d7d", "source": {

"s3": {

"bucketName": "signer-test-source", "key": "my-example-code.java", "version": null

} },

"signedObject": { "s3": {

"bucketName": "signer-test-dest",

"key": "signed_images/ade0f15c-5857-4fcd-b731-43530bbd2d7d"

}

}, "signingMaterial": { "certificateArn":

"arn:aws:acm:region:123456789012:certificate/7a0ed941-64dd-419b-8b59-24378756fee3"

},

"createdAt": 1508345543, "status": "Succeeded"

}, {

"jobId": "9052caa6-1d8d-43b5-9ead-0cb8621c8c74", "source": {

"s3": {

"bucketName": "signer-test-source", "key": "my-example-code.java",

"version": "W.OIrIFmjIFeuNXOaBJzPee66.wRg4GR"

} },

"signedObject": { "s3": {

"bucketName": "signer-test-dest",

"key": "9052caa6-1d8d-43b5-9ead-0cb8621c8c74"

}

}, "signingMaterial": {

"certificateArn": "arn:aws:acm:region:123456789012:certificate/9ec626ca-0bbb-4be5-83a2- ee563f8386ca"

},

"createdAt": 1510695622, "status": "Succeeded"

},

{ "jobId": "cc9067a9-9258-489a-abae-1c3408191071", "source": {

"s3": {

"bucketName": "signer-test-source", "key": "my-example-code.java",

"version": "W.OIrIFmjIFeuNXOaBJzPee66.wRg4GR"

} },

"signedObject": { "s3": {

"bucketName": "signer-test-dest",

(34)

See Also

"key": "cc9067a9-9258-489a-abae-1c3408191071"

} },

"signingMaterial": {

"certificateArn": "arn:aws:acm:region:123456789012:certificate/9ec626ca-0bbb-4be5-83a2- ee563f8386ca"

}, "createdAt": 1510698374, "status": "Succeeded"

}, {

"jobId": "ba506303-848d-4fb7-a07f-e8049eb5faa6", "source": {

"s3": {

"bucketName": "signer-test-source", "key": "my-example-code.java",

"version": "W.OIrIFmjIFeuNXOaBJzPee66.wRg4GR"

} },

"signedObject": { "s3": {

"bucketName": "signer-test-dest",

"key": "ba506303-848d-4fb7-a07f-e8049eb5faa6"

}

}, "signingMaterial": {

"certificateArn": "arn:aws:acm:region:123456789012:certificate/9ec626ca-0bbb-4be5-83a2- ee563f8386ca"

},

"createdAt": 1510760837, "status": "Succeeded"

}], "nextToken": null }

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(35)

ListSigningPlatforms

ListSigningPlatforms

Lists all signing platforms available in code signing that match the request parameters. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

Request Syntax

GET /signing-platforms?

category=category&maxResults=maxResults&nextToken=nextToken&partner=partner&target=target HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

category (p. 29)

The category type of a signing platform.

maxResults (p. 29)

The maximum number of results to be returned by this operation.

Valid Range: Minimum value of 1. Maximum value of 25.

nextToken (p. 29)

Value for specifying the next set of paginated results to return. After you receive a response with truncated results, use this parameter in a subsequent request. Set it to the value of nextToken from the response that you just received.

partner (p. 29)

Any partner entities connected to a signing platform.

target (p. 29)

The validation template that is used by the target signing platform.

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"nextToken": "string", "platforms": [ {

"category": "string", "displayName": "string",

(36)

Response Elements

"maxSizeInMB": number, "partner": "string", "platformId": "string",

"revocationSupported": boolean, "signingConfiguration": {

"encryptionAlgorithmOptions": { "allowedValues": [ "string" ], "defaultValue": "string"

},

"hashAlgorithmOptions": { "allowedValues": [ "string" ], "defaultValue": "string"

} },

"signingImageFormat": { "defaultFormat": "string", "supportedFormats": [ "string" ] },

"target": "string"

} ] }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

nextToken (p. 29)

Value for specifying the next set of paginated results to return.

Type: String platforms (p. 29)

A list of all platforms that match the request parameters.

Type: Array of SigningPlatform (p. 75) objects

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

(37)

See Also

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(38)

ListSigningProfiles

ListSigningProfiles

Lists all available signing profiles in your AWS account. Returns only profiles with an ACTIVE status unless the includeCanceled request field is set to true. If additional jobs remain to be listed, code signing returns a nextToken value. Use this value in subsequent calls to ListSigningJobs to fetch the remaining values. You can continue calling ListSigningJobs with your maxResults parameter and with new values that code signing returns in the nextToken parameter until all of your signing jobs have been returned.

Request Syntax

GET /signing-profiles?

includeCanceled=includeCanceled&maxResults=maxResults&nextToken=nextToken&platformId=platformId&statuses=statuses HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

includeCanceled (p. 32)

Designates whether to include profiles with the status of CANCELED.

maxResults (p. 32)

The maximum number of profiles to be returned.

Valid Range: Minimum value of 1. Maximum value of 25.

nextToken (p. 32)

Value for specifying the next set of paginated results to return. After you receive a response with truncated results, use this parameter in a subsequent request. Set it to the value of nextToken from the response that you just received.

platformId (p. 32)

Filters results to return only signing jobs initiated for a specified signing platform.

statuses (p. 32)

Filters results to return only signing jobs with statuses in the specified list.

Valid Values: Active | Canceled | Revoked

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json { "nextToken": "string", "profiles": [

{

(39)

Response Elements

"arn": "string",

"platformDisplayName": "string", "platformId": "string",

"profileName": "string", "profileVersion": "string", "profileVersionArn": "string", "signatureValidityPeriod": { "type": "string",

"value": number },

"signingMaterial": {

"certificateArn": "string"

},

"signingParameters": { "string" : "string"

},

"status": "string", "tags": {

"string" : "string"

} } ]}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

nextToken (p. 32)

Value for specifying the next set of paginated results to return.

Type: String profiles (p. 32)

A list of profiles that are available in the AWS account. This includes profiles with the status of CANCELED if the includeCanceled parameter is set to true.

Type: Array of SigningProfile (p. 78) objects

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

(40)

See Also

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(41)

ListTagsForResource

ListTagsForResource

Returns a list of the tags associated with a signing profile resource.

Request Syntax

GET /tags/resourceArn HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

resourceArn (p. 35)

The Amazon Resource Name (ARN) for the signing profile.

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json { "tags": {

"string" : "string"

}}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

tags (p. 35)

A list of tags associated with the signing profile.

Type: String to string map

Map Entries: Maximum number of 200 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

(42)

Errors

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

BadRequestException

The request contains invalid parameters for the ARN or tags. This exception also occurs when you call a tagging API on a cancelled signing profile.

HTTP Status Code: 400 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 NotFoundException

The signing profile was not found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(43)

PutSigningProfile

PutSigningProfile

Creates a signing profile. A signing profile is a code signing template that can be used to carry out a pre- defined signing job.

Request Syntax

PUT /signing-profiles/profileName HTTP/1.1 Content-type: application/json

{ "overrides": {

"signingConfiguration": {

"encryptionAlgorithm": "string", "hashAlgorithm": "string"

},

"signingImageFormat": "string"

},

"platformId": "string", "signatureValidityPeriod": { "type": "string",

"value": number },

"signingMaterial": {

"certificateArn": "string"

},

"signingParameters": { "string" : "string"

},

"tags": {

"string" : "string"

} }

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 37)

The name of the signing profile to be created.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes

Request Body

The request accepts the following data in JSON format.

overrides (p. 37)

A subfield of platform. This specifies any different configuration options that you want to apply to the chosen platform (such as a different hash-algorithm or signing-algorithm).

Type: SigningPlatformOverrides (p. 77) object

(44)

Response Syntax

Required: No platformId (p. 37)

The ID of the signing platform to be created.

Type: String Required: Yes

signatureValidityPeriod (p. 37)

The default validity period override for any signature generated using this signing profile. If unspecified, the default is 135 months.

Type: SignatureValidityPeriod (p. 65) object Required: No

signingMaterial (p. 37)

The AWS Certificate Manager certificate that will be used to sign code with the new signing profile.

Type: SigningMaterial (p. 74) object Required: No

signingParameters (p. 37)

Map of key-value pairs for signing. These can include any information that you want to use during signing.

Type: String to string map Required: No

tags (p. 37)

Tags to be associated with the signing profile that is being created.

Type: String to string map

Map Entries: Maximum number of 200 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ^(?!aws:)[a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

Required: No

Response Syntax

HTTP/1.1 200

Content-type: application/json { "arn": "string",

"profileVersion": "string", "profileVersionArn": "string"

}

(45)

Response Elements

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

arn (p. 38)

The Amazon Resource Name (ARN) of the signing profile created.

Type: String profileVersion (p. 38)

The version of the signing profile being created.

Type: String

Length Constraints: Fixed length of 10.

Pattern: ^[a-zA-Z0-9]{10}$

profileVersionArn (p. 38)

The signing profile ARN, including the profile version.

Type: String

Length Constraints: Minimum length of 20. Maximum length of 2048.

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

(46)

See Also

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(47)

RemoveProfilePermission

RemoveProfilePermission

Removes cross-account permissions from a signing profile.

Request Syntax

DELETE /signing-profiles/profileName/permissions/statementId?revisionId=revisionId HTTP/1.1

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 41)

A human-readable name for the signing profile with permissions to be removed.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes revisionId (p. 41)

An identifier for the current revision of the signing profile permissions.

Required: Yes statementId (p. 41)

A unique identifier for the cross-account permissions statement.

Required: Yes

Request Body

The request does not have a request body.

Response Syntax

HTTP/1.1 200

Content-type: application/json { "revisionId": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

revisionId (p. 41)

An identifier for the current revision of the profile permissions.

(48)

Errors

Type: String

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 ConflictException

The resource encountered a conflicting state.

HTTP Status Code: 409 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(49)

RevokeSignature

RevokeSignature

Changes the state of a signing job to REVOKED. This indicates that the signature is no longer valid.

Request Syntax

PUT /signing-jobs/jobId/revoke HTTP/1.1 Content-type: application/json

{ "jobOwner": "string", "reason": "string"

}

URI Request Parameters

The request uses the following URI parameters.

jobId (p. 43)

ID of the signing job to be revoked.

Required: Yes

Request Body

The request accepts the following data in JSON format.

jobOwner (p. 43)

AWS account ID of the job owner.

Type: String

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

Required: No reason (p. 43)

The reason for revoking the signing job.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 500.

Required: Yes

Response Syntax

HTTP/1.1 200

(50)

Response Elements

Response Elements

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(51)

RevokeSigningProfile

RevokeSigningProfile

Changes the state of a signing profile to REVOKED. This indicates that signatures generated using the signing profile after an effective start date are no longer valid.

Request Syntax

PUT /signing-profiles/profileName/revoke HTTP/1.1 Content-type: application/json

{ "effectiveTime": number, "profileVersion": "string", "reason": "string"

}

URI Request Parameters

The request uses the following URI parameters.

profileName (p. 45)

The name of the signing profile to be revoked.

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes

Request Body

The request accepts the following data in JSON format.

effectiveTime (p. 45)

A timestamp for when revocation of a Signing Profile should become effective. Signatures generated using the signing profile after this timestamp are not trusted.

Type: Timestamp Required: Yes profileVersion (p. 45)

The version of the signing profile to be revoked.

Type: String

Length Constraints: Fixed length of 10.

Pattern: ^[a-zA-Z0-9]{10}$

Required: Yes reason (p. 45)

The reason for revoking a signing profile.

(52)

Response Syntax

Type: String

Length Constraints: Minimum length of 1. Maximum length of 500.

Required: Yes

Response Syntax

HTTP/1.1 200

Response Elements

If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.

Errors

For information about the errors that are common to all actions, see Common Errors (p. 84).

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403 InternalServiceErrorException

An internal error occurred.

HTTP Status Code: 500 ResourceNotFoundException

A specified resource could not be found.

HTTP Status Code: 404 TooManyRequestsException

The allowed number of job-signing requests has been exceeded.

This error supersedes the error ThrottlingException.

HTTP Status Code: 429 ValidationException

You signing certificate could not be validated.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following:

• AWS Command Line Interface

• AWS SDK for .NET

• AWS SDK for C++

(53)

See Also

• AWS SDK for Go

• AWS SDK for Java V2

• AWS SDK for JavaScript

• AWS SDK for PHP V3

• AWS SDK for Python

• AWS SDK for Ruby V3

(54)

StartSigningJob

StartSigningJob

Initiates a signing job to be performed on the code provided. Signing jobs are viewable by the

ListSigningJobs operation for two years after they are performed. Note the following requirements:

• You must create an Amazon S3 source bucket. For more information, see Creating a Bucket in the Amazon S3 Getting Started Guide.

• Your S3 source bucket must be version enabled.

• You must create an S3 destination bucket. Code signing uses your S3 destination bucket to write your signed code.

• You specify the name of the source and destination buckets when calling the StartSigningJob operation.

• You must also specify a request token that identifies your request to code signing.

You can call the DescribeSigningJob (p. 8) and the ListSigningJobs (p. 24) actions after you call StartSigningJob.

For a Java example that shows how to use this action, see StartSigningJob.

Request Syntax

POST /signing-jobs HTTP/1.1 Content-type: application/json { "clientRequestToken": "string", "destination": {

"s3": {

"bucketName": "string", "prefix": "string"

} },

"profileName": "string", "profileOwner": "string", "source": {

"s3": {

"bucketName": "string", "key": "string",

"version": "string"

} } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

clientRequestToken (p. 48)

String that identifies the signing request. All calls after the first that use this token return the same response as the first call.

(55)

Response Syntax

Type: String Required: Yes destination (p. 48)

The S3 bucket in which to save your signed object. The destination contains the name of your bucket and an optional prefix.

Type: Destination (p. 58) object Required: Yes

profileName (p. 48)

The name of the signing profile.

Type: String

Length Constraints: Minimum length of 2. Maximum length of 64.

Pattern: ^[a-zA-Z0-9_]{2,}

Required: Yes profileOwner (p. 48)

The AWS account ID of the signing profile owner.

Type: String

Length Constraints: Fixed length of 12.

Pattern: ^[0-9]{12}$

Required: No source (p. 48)

The S3 bucket that contains the object to sign or a BLOB that contains your raw code.

Type: Source (p. 81) object Required: Yes

Response Syntax

HTTP/1.1 200

Content-type: application/json {

"jobId": "string", "jobOwner": "string"

}

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

jobId (p. 49)

The ID of your signing job.

參考文獻

相關文件

• tiny (a single segment, used by .com programs), small (one code segment and one data segment), medium (multiple code segments and a single data segment), compact (one code

• Performance: vectorized code often runs much faster than the corresponding code containing loops.. Zheng-Liang

• The first module, written in assembly language, contains the external procedure. • The second module contains the C/C++ code that starts and ends

In our Fudoki myth, the third, sociological, “code” predominates (= the jealous wife/greedy mistress), while the first, alimentary, code is alluded to (= fish, entrails), and

The hashCode method for a given class can be used to test for object equality and object inequality for that class. The hashCode method is used by the java.util.SortedSet

(a) The School Management Committee may approve the appointment of staff paid out of the Salaries Grant in accordance with the provisions of this Code of Aid and any

(a) The School Management Committee may grant paid leave on an annual basis to those educational psychologists, school-based speech therapists, Primary School Assistant

Incorporated Management Committees should comply with the terms in this Code of Aid and abide by such requirements as promulgated in circulars and instructions issued by the