diff --git a/codegen/sdk-codegen/aws-models/backup.json b/codegen/sdk-codegen/aws-models/backup.json index bcd732e5e57..a113e3dcaaf 100644 --- a/codegen/sdk-codegen/aws-models/backup.json +++ b/codegen/sdk-codegen/aws-models/backup.json @@ -5451,6 +5451,12 @@ "traits": { "smithy.api#documentation": "
This is the non-unique name of the resource that \n belongs to the specified backup.
" } + }, + "VaultType": { + "target": "com.amazonaws.backup#VaultType", + "traits": { + "smithy.api#documentation": "This is the type of vault in which the described recovery point is stored.
" + } } }, "traits": { @@ -7562,7 +7568,7 @@ "ByResourceType": { "target": "com.amazonaws.backup#ResourceType", "traits": { - "smithy.api#documentation": "Returns only backup jobs for the specified resources:
\n\n Aurora
for Amazon Aurora
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n RDS
for Amazon Relational Database Service
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n VirtualMachine
for virtual machines
Returns only backup jobs for the specified resources:
\n\n Aurora
for Amazon Aurora
\n CloudFormation
for CloudFormation
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n Redshift
for Amazon Redshift
\n RDS
for Amazon Relational Database Service
\n SAP HANA on Amazon EC2
for SAP HANA databases
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n Timestream
for Amazon Timestream
\n VirtualMachine
for virtual machines
Returns only backup jobs for the specified resources:
\n\n Aurora
for Amazon Aurora
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n RDS
for Amazon Relational Database Service
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n VirtualMachine
for virtual machines
Returns only backup jobs for the specified resources:
\n\n Aurora
for Amazon Aurora
\n CloudFormation
for CloudFormation
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n Redshift
for Amazon Redshift
\n RDS
for Amazon Relational Database Service
\n SAP HANA on Amazon EC2
for SAP HANA databases
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n Timestream
for Amazon Timestream
\n VirtualMachine
for virtual machines
Returns only recovery points that match the specified resource type.
", + "smithy.api#documentation": "Returns only recovery points that match the specified resource type(s):
\n\n Aurora
for Amazon Aurora
\n CloudFormation
for CloudFormation
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n Redshift
for Amazon Redshift
\n RDS
for Amazon Relational Database Service
\n SAP HANA on Amazon EC2
for SAP HANA databases
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n Timestream
for Amazon Timestream
\n VirtualMachine
for virtual machines
Include this parameter to return only restore jobs for the \n specified resources:
\n\n Aurora
for Amazon Aurora
\n CloudFormation
for CloudFormation
\n DocumentDB
for Amazon DocumentDB (with MongoDB compatibility)
\n DynamoDB
for Amazon DynamoDB
\n EBS
for Amazon Elastic Block Store
\n EC2
for Amazon Elastic Compute Cloud
\n EFS
for Amazon Elastic File System
\n FSx
for Amazon FSx
\n Neptune
for Amazon Neptune
\n Redshift
for Amazon Redshift
\n RDS
for Amazon Relational Database Service
\n SAP HANA on Amazon EC2
for SAP HANA databases
\n Storage Gateway
for Storage Gateway
\n S3
for Amazon S3
\n Timestream
for Amazon Timestream
\n VirtualMachine
for virtual machines
This is the non-unique name of the resource that \n belongs to the specified backup.
" } + }, + "VaultType": { + "target": "com.amazonaws.backup#VaultType", + "traits": { + "smithy.api#documentation": "This is the type of vault in which the described recovery point is stored.
" + } } }, "traits": { @@ -12687,7 +12706,7 @@ } ], "traits": { - "smithy.api#documentation": "Updates the current service opt-in settings for the Region. If service-opt-in is enabled\n for a service, Backup tries to protect that service's resources in this Region,\n when the resource is included in an on-demand backup or scheduled backup plan. Otherwise,\n Backup does not try to protect that service's resources in this Region. Use\n the DescribeRegionSettings
API to determine the resource types that are\n supported.
Updates the current service opt-in settings for the Region.
\nUse\n the DescribeRegionSettings
API to determine the resource types that are\n supported.
Updates the list of services along with the opt-in preferences for the Region.
" + "smithy.api#documentation": "Updates the list of services along with the opt-in preferences for the Region.
\nIf resource assignments are only based on tags, then service opt-in settings are applied. \n If a resource type is explicitly assigned to a backup plan, such as Amazon S3, \n Amazon EC2, or Amazon RDS, it will be included in the \n backup even if the opt-in is not enabled for that particular service. \n If both a resource type and tags are specified in a resource assignment, \n the resource type specified in the backup plan takes priority over the \n tag condition. Service opt-in settings are disregarded in this situation.
" } }, "ResourceTypeManagementPreference": { diff --git a/codegen/sdk-codegen/aws-models/comprehend.json b/codegen/sdk-codegen/aws-models/comprehend.json index d694042e56f..2e59bfd7563 100644 --- a/codegen/sdk-codegen/aws-models/comprehend.json +++ b/codegen/sdk-codegen/aws-models/comprehend.json @@ -979,7 +979,7 @@ } ], "traits": { - "smithy.api#documentation": "Creates a classification request to analyze a single document in real-time. ClassifyDocument
\n supports the following model types:
Custom classifier - a custom model that you have created and trained. \n For input, you can provide plain text, a single-page document (PDF, Word, or image), or Textract API output.\n For more information, see Custom classification in the Amazon Comprehend Developer Guide.
\nPrompt classifier - Amazon Comprehend provides a model for classifying prompts. \n For input, you provide English plain text input.\n For prompt classification, the response includes only the Classes
field.\n For more information about prompt classifiers, see Prompt classifiers in the Amazon Comprehend Developer Guide.
If the system detects errors while processing a page in the input document,\n the API response includes an entry in Errors
that describes the errors.
If the system detects a document-level error in your input document, the API returns an\n InvalidRequestException
error response.\n For details about this exception, see\n \n Errors in semi-structured documents in the Comprehend Developer Guide.\n
Creates a classification request to analyze a single document in real-time. ClassifyDocument
\n supports the following model types:
Custom classifier - a custom model that you have created and trained. \n For input, you can provide plain text, a single-page document (PDF, Word, or image), or \n Amazon Textract API output. For more information, see Custom classification in the Amazon Comprehend Developer Guide.
\nPrompt safety classifier - Amazon Comprehend provides a pre-trained model for classifying \n input prompts for generative AI applications. \n For input, you provide English plain text input.\n For prompt safety classification, the response includes only the Classes
field.\n For more information about prompt safety classifiers, see Prompt safety classification in the Amazon Comprehend Developer Guide.
If the system detects errors while processing a page in the input document,\n the API response includes an Errors
field that describes the errors.
If the system detects a document-level error in your input document, the API returns an\n InvalidRequestException
error response.\n For details about this exception, see\n \n Errors in semi-structured documents in the Comprehend Developer Guide.\n
The Amazon Resource Number (ARN) of the endpoint.
\nFor prompt classification, Amazon Comprehend provides the endpoint ARN: zzz
.
For custom classification, you create an endpoint for your custom model. For more information, \n see Using Amazon Comprehend endpoints.
", + "smithy.api#documentation": "The Amazon Resource Number (ARN) of the endpoint.
\nFor prompt safety classification, Amazon Comprehend provides the endpoint ARN. For more information about prompt safety classifiers, see Prompt safety classification in the Amazon Comprehend Developer Guide\n
\nFor custom classification, you create an endpoint for your custom model. For more information, \n see Using Amazon Comprehend endpoints.
", "smithy.api#required": {} } }, "Bytes": { "target": "com.amazonaws.comprehend#SemiStructuredDocumentBlob", "traits": { - "smithy.api#documentation": "Use the Bytes
parameter to input a text, PDF, Word or image file.
When you classify a document using a custom model, you can also use the Bytes
parameter to input an Amazon Textract DetectDocumentText
\n or AnalyzeDocument
output file.
To classify a document using the prompt classifier, use the Text
parameter for input.
Provide the input document as a sequence of base64-encoded bytes.\n If your code uses an Amazon Web Services SDK to classify documents, the SDK may encode\n the document file bytes for you.
\nThe maximum length of this field depends on the input document type. For details, see\n \n Inputs for real-time custom analysis in the Comprehend Developer Guide.
\nIf you use the Bytes
parameter, do not use the Text
parameter.
Use the Bytes
parameter to input a text, PDF, Word or image file.
When you classify a document using a custom model, you can also use the Bytes
parameter to input an Amazon Textract DetectDocumentText
\n or AnalyzeDocument
output file.
To classify a document using the prompt safety classifier, use the Text
parameter for input.
Provide the input document as a sequence of base64-encoded bytes.\n If your code uses an Amazon Web Services SDK to classify documents, the SDK may encode\n the document file bytes for you.
\nThe maximum length of this field depends on the input document type. For details, see\n \n Inputs for real-time custom analysis in the Comprehend Developer Guide.
\nIf you use the Bytes
parameter, do not use the Text
parameter.
The classes used by the document being analyzed. These are used for multi-class trained\n models. Individual classes are mutually exclusive and each document is expected to have only a\n single class assigned to it. For example, an animal can be a dog or a cat, but not both at the\n same time.
\nFor prompt classification, the response includes a single class (UNDESIRED_PROMPT
), along with a confidence score. \n A higher confidence score indicates that the input prompt is undesired in nature.
The classes used by the document being analyzed. These are used for models trained in multi-class mode.\n Individual classes are mutually exclusive and each document is expected to have only a\n single class assigned to it. For example, an animal can be a dog or a cat, but not both at the\n same time.
\nFor prompt safety classification, the response includes only two classes (SAFE_PROMPT and UNSAFE_PROMPT), \n along with a confidence score for each class. The value range of the score is zero to one, where one is the highest confidence.
" } }, "Labels": { "target": "com.amazonaws.comprehend#ListOfLabels", "traits": { - "smithy.api#documentation": "The labels used the document being analyzed. These are used for multi-label trained\n models. Individual labels represent different categories that are related in some manner and\n are not mutually exclusive. For example, a movie can be just an action movie, or it can be an\n action movie, a science fiction movie, and a comedy, all at the same time.
" + "smithy.api#documentation": "The labels used in the document being analyzed. These are used for multi-label trained\n models. Individual labels represent different categories that are related in some manner and\n are not mutually exclusive. For example, a movie can be just an action movie, or it can be an\n action movie, a science fiction movie, and a comedy, all at the same time.
" } }, "DocumentMetadata": { @@ -2526,7 +2526,7 @@ "Mode": { "target": "com.amazonaws.comprehend#DocumentClassifierMode", "traits": { - "smithy.api#documentation": "Indicates the mode in which the classifier will be trained. The classifier can be trained\n in multi-class mode, which identifies one and only one class for each document, or multi-label\n mode, which identifies one or more labels for each document. In multi-label mode, multiple\n labels for an individual document are separated by a delimiter. The default delimiter between\n labels is a pipe (|).
" + "smithy.api#documentation": "Indicates the mode in which the classifier will be trained. The classifier can be trained\n in multi-class (single-label) mode or multi-label mode. \n Multi-class mode identifies a single class label for each document and\n multi-label mode identifies one or more class labels for each document. Multiple\n labels for an individual document are separated by a delimiter. The default delimiter between\n labels is a pipe (|).
" } }, "ModelKmsKeyId": { @@ -4997,7 +4997,7 @@ } ], "traits": { - "smithy.api#documentation": "Performs toxicity analysis on the list of text strings that you provide as input.\n The analysis uses the order of strings in the list to determine context when predicting toxicity.\n The API response contains a results list that matches the size of the input list.\n For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide\n
" + "smithy.api#documentation": "Performs toxicity analysis on the list of text strings that you provide as input.\n The API response contains a results list that matches the size of the input list.\n For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide.\n
" } }, "com.amazonaws.comprehend#DetectToxicContentRequest": { @@ -5006,7 +5006,7 @@ "TextSegments": { "target": "com.amazonaws.comprehend#ListOfTextSegments", "traits": { - "smithy.api#documentation": "A list of up to 10 text strings. The maximum size for the list is 10 KB.
", + "smithy.api#documentation": "A list of up to 10 text strings. Each string has a maximum size of 1 KB, and\n the maximum size of the list is 10 KB.
", "smithy.api#required": {} } }, @@ -5674,7 +5674,7 @@ } }, "traits": { - "smithy.api#documentation": "Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT
\n as the read action, you must specify one or both of the following values:
\n TABLES
- Returns additional information about any tables that are detected in the input document.
\n FORMS
- Returns additional information about any forms that are detected in the input document.
TABLES or FORMS
" } }, "com.amazonaws.comprehend#DocumentReadMode": { @@ -5713,7 +5713,7 @@ "FeatureTypes": { "target": "com.amazonaws.comprehend#ListOfDocumentReadFeatureTypes", "traits": { - "smithy.api#documentation": "Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT
\n as the read action, you must specify one or both of the following values:
\n TABLES
- Returns information about any tables that are detected in the input document.
\n FORMS
- Returns information and the data from any forms that are detected in the input document.
Specifies the type of Amazon Textract features to apply. If you chose TEXTRACT_ANALYZE_DOCUMENT
\n as the read action, you must specify one or both of the following values:
\n TABLES
- Returns additional information about any tables that are detected in the input document.
\n FORMS
- Returns additional information about any forms that are detected in the input document.
An entity type within a labeled training dataset that Amazon Comprehend uses to train a\n custom entity recognizer.
\nEntity types must not contain the following invalid characters: \\n (line break), \\\\n\n (escaped line break, \\r (carriage return), \\\\r (escaped carriage return), \\t (tab), \\\\t\n (escaped tab), space, and , (comma).
", + "smithy.api#documentation": "An entity type within a labeled training dataset that Amazon Comprehend uses to train a\n custom entity recognizer.
\nEntity types must not contain the following invalid characters: \\n (line break), \\\\n\n (escaped line break, \\r (carriage return), \\\\r (escaped carriage return), \\t (tab), \\\\t\n (escaped tab), and , (comma).
", "smithy.api#required": {} } } @@ -7660,12 +7660,12 @@ "Reason": { "target": "com.amazonaws.comprehend#InvalidRequestDetailReason", "traits": { - "smithy.api#documentation": "Reason code is INVALID_DOCUMENT
.
Reason codes include the following values:
\nDOCUMENT_SIZE_EXCEEDED - Document size is too large. Check the size of your file and resubmit the request.
\nUNSUPPORTED_DOC_TYPE - Document type is not supported. Check the file type and resubmit the request.
\nPAGE_LIMIT_EXCEEDED - Too many pages in the document. Check the number of pages in your file and resubmit the request.
\nTEXTRACT_ACCESS_DENIED - Access denied to Amazon Textract. Verify that your account has permission to use Amazon Textract API operations and resubmit the request.
\nNOT_TEXTRACT_JSON - Document is not Amazon Textract JSON format. Verify the format and resubmit the request.
\nMISMATCHED_TOTAL_PAGE_COUNT - Check the number of pages in your file and resubmit the request.
\nINVALID_DOCUMENT - Invalid document. Check the file and resubmit the request.
\nProvides additional detail about why the request failed:
\nDocument size is too large - Check the size of your file and resubmit the request.
\nDocument type is not supported - Check the file type and resubmit the request.
\nToo many pages in the document - Check the number of pages in your file and resubmit the request.
\nAccess denied to Amazon Textract - Verify that your account has permission to use Amazon Textract API operations and resubmit the request.
\nProvides additional detail about why the request failed.
" } }, "com.amazonaws.comprehend#InvalidRequestDetailReason": { @@ -10907,7 +10907,7 @@ } ], "traits": { - "smithy.api#documentation": "Starts an asynchronous document classification job. Use the \n DescribeDocumentClassificationJob
\n operation to track the progress of the job.
Starts an asynchronous document classification job using a custom classification model. Use the \n DescribeDocumentClassificationJob
\n operation to track the progress of the job.
Overall toxicity score for the string.
" + "smithy.api#documentation": "Overall toxicity score for the string. Value range is zero to one, where one is the highest confidence.
" } } }, "traits": { - "smithy.api#documentation": "Toxicity analysis result for one string. For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide\n
" + "smithy.api#documentation": "Toxicity analysis result for one string. For more information about toxicity detection, see Toxicity detection in the Amazon Comprehend Developer Guide.
" } }, "com.amazonaws.comprehend#UnsupportedLanguageException": { @@ -13437,7 +13437,7 @@ } }, "traits": { - "smithy.api#documentation": "Amazon Comprehend can't process the language of the input text. For custom entity\n recognition APIs, only English, Spanish, French, Italian, German, or Portuguese are accepted.\n For a list of supported languages,\n Supported languages in the Comprehend Developer Guide.\n
", + "smithy.api#documentation": "Amazon Comprehend can't process the language of the input text. For a list of supported languages,\n Supported languages in the Comprehend Developer Guide.\n
", "smithy.api#error": "client", "smithy.api#httpError": 400 } diff --git a/codegen/sdk-codegen/aws-models/connect.json b/codegen/sdk-codegen/aws-models/connect.json index 5917b4026b9..a52e9e3fb78 100644 --- a/codegen/sdk-codegen/aws-models/connect.json +++ b/codegen/sdk-codegen/aws-models/connect.json @@ -5627,6 +5627,12 @@ "smithy.api#documentation": "Your contact center allows outbound calls.
", "smithy.api#required": {} } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }
.
This URL allows contact center users to access the Amazon Connect admin website.
" } + }, + "Tags": { + "target": "com.amazonaws.connect#TagMap", + "traits": { + "smithy.api#documentation": "The tags of an instance.
" + } } }, "traits": { diff --git a/codegen/sdk-codegen/aws-models/ec2.json b/codegen/sdk-codegen/aws-models/ec2.json index d8aac22f065..f886e06ada4 100644 --- a/codegen/sdk-codegen/aws-models/ec2.json +++ b/codegen/sdk-codegen/aws-models/ec2.json @@ -13658,6 +13658,9 @@ } } }, + "com.amazonaws.ec2#CpuManufacturerName": { + "type": "string" + }, "com.amazonaws.ec2#CpuManufacturerSet": { "type": "list", "member": { @@ -82854,6 +82857,14 @@ "smithy.api#documentation": "Indicates whether the instance type supports AMD SEV-SNP. If the request returns \n amd-sev-snp
, AMD SEV-SNP is supported. Otherwise, it is not supported. \n For more information, see \n AMD SEV-SNP.
The manufacturer of the processor.
", + "smithy.api#xmlName": "manufacturer" + } } }, "traits": { diff --git a/codegen/sdk-codegen/aws-models/payment-cryptography.json b/codegen/sdk-codegen/aws-models/payment-cryptography.json index 2123d20e8b4..c3ecb7e9f6d 100644 --- a/codegen/sdk-codegen/aws-models/payment-cryptography.json +++ b/codegen/sdk-codegen/aws-models/payment-cryptography.json @@ -45,6 +45,41 @@ "smithy.api#pattern": "^alias/[a-zA-Z0-9/_-]+$" } }, + "com.amazonaws.paymentcryptography#AliasResource": { + "type": "resource", + "identifiers": { + "AliasName": { + "target": "com.amazonaws.paymentcryptography#AliasName" + } + }, + "put": { + "target": "com.amazonaws.paymentcryptography#CreateAlias" + }, + "read": { + "target": "com.amazonaws.paymentcryptography#GetAlias" + }, + "update": { + "target": "com.amazonaws.paymentcryptography#UpdateAlias" + }, + "delete": { + "target": "com.amazonaws.paymentcryptography#DeleteAlias" + }, + "list": { + "target": "com.amazonaws.paymentcryptography#ListAliases" + }, + "traits": { + "aws.cloudformation#cfnResource": { + "name": "Alias", + "additionalSchemas": [ + "com.amazonaws.paymentcryptography#Alias" + ] + }, + "smithy.api#noReplace": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, "com.amazonaws.paymentcryptography#Aliases": { "type": "list", "member": { @@ -111,7 +146,8 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Creates an alias, or a friendly name, for an Amazon Web Services Payment Cryptography key. You can use an alias to identify a key in the console and when you call cryptographic operations such as EncryptData or DecryptData.
\nYou can associate the alias with any key in the same Amazon Web Services Region. Each alias is associated with only one key at a time, but a key can have multiple aliases. You can't create an alias without a key. The alias must be unique in the account and Amazon Web Services Region, but you can create another alias with the same name in a different Amazon Web Services Region.
\nTo change the key that's associated with the alias, call UpdateAlias. To delete the alias, call DeleteAlias. These operations don't affect the underlying key. To get the alias that you created, call ListAliases.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n DeleteAlias\n
\n\n GetAlias\n
\n\n ListAliases\n
\n\n UpdateAlias\n
\nCreates an alias, or a friendly name, for an Amazon Web Services Payment Cryptography key. You can use an alias to identify a key in the console and when you call cryptographic operations such as EncryptData or DecryptData.
\nYou can associate the alias with any key in the same Amazon Web Services Region. Each alias is associated with only one key at a time, but a key can have multiple aliases. You can't create an alias without a key. The alias must be unique in the account and Amazon Web Services Region, but you can create another alias with the same name in a different Amazon Web Services Region.
\nTo change the key that's associated with the alias, call UpdateAlias. To delete the alias, call DeleteAlias. These operations don't affect the underlying key. To get the alias that you created, call ListAliases.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n DeleteAlias\n
\n\n GetAlias\n
\n\n ListAliases\n
\n\n UpdateAlias\n
\nA friendly name that you can use to refer a key. An alias must begin with alias/
followed by a name, for example alias/ExampleAlias
. It can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-).
Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nA friendly name that you can use to refer to a key. An alias must begin with alias/
followed by a name, for example alias/ExampleAlias
. It can contain only alphanumeric characters, forward slashes (/), underscores (_), and dashes (-).
Don't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nThe KeyARN
of the key to associate with the alias.
The KeyARN
of the key to associate with the alias.
The alias for the key.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } } }, @@ -186,7 +234,7 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Creates an Amazon Web Services Payment Cryptography key, a logical representation of a cryptographic key, that is unique in your account and Amazon Web Services Region. You use keys for cryptographic functions such as encryption and decryption.
\nIn addition to the key material used in cryptographic operations, an Amazon Web Services Payment Cryptography key includes metadata such as the key ARN, key usage, key origin, creation date, description, and key state.
\nWhen you create a key, you specify both immutable and mutable data about the key. The immutable data contains key attributes that defines the scope and cryptographic operations that you can perform using the key, for example key class (example: SYMMETRIC_KEY
), key algorithm (example: TDES_2KEY
), key usage (example: TR31_P0_PIN_ENCRYPTION_KEY
) and key modes of use (example: Encrypt
). For information about valid combinations of key attributes, see Understanding key attributes in the Amazon Web Services Payment Cryptography User Guide. The mutable data contained within a key includes usage timestamp and key deletion timestamp and can be modified after creation.
Amazon Web Services Payment Cryptography binds key attributes to keys using key blocks when you store or export them. Amazon Web Services Payment Cryptography stores the key contents wrapped and never stores or transmits them in the clear.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n " + "smithy.api#documentation": "Creates an Amazon Web Services Payment Cryptography key, a logical representation of a cryptographic key, that is unique in your account and Amazon Web Services Region. You use keys for cryptographic functions such as encryption and decryption.
\nIn addition to the key material used in cryptographic operations, an Amazon Web Services Payment Cryptography key includes metadata such as the key ARN, key usage, key origin, creation date, description, and key state.
\nWhen you create a key, you specify both immutable and mutable data about the key. The immutable data contains key attributes that define the scope and cryptographic operations that you can perform using the key, for example key class (example: SYMMETRIC_KEY
), key algorithm (example: TDES_2KEY
), key usage (example: TR31_P0_PIN_ENCRYPTION_KEY
) and key modes of use (example: Encrypt
). For information about valid combinations of key attributes, see Understanding key attributes in the Amazon Web Services Payment Cryptography User Guide. The mutable data contained within a key includes usage timestamp and key deletion timestamp and can be modified after creation.
Amazon Web Services Payment Cryptography binds key attributes to keys using key blocks when you store or export them. Amazon Web Services Payment Cryptography stores the key contents wrapped and never stores or transmits them in the clear.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n " } }, "com.amazonaws.paymentcryptography#CreateKeyInput": { @@ -195,33 +243,53 @@ "KeyAttributes": { "target": "com.amazonaws.paymentcryptography#KeyAttributes", "traits": { + "aws.cloudformation#cfnMutability": "full", "smithy.api#documentation": "The role of the key, the algorithm it supports, and the cryptographic operations allowed with the key. This data is immutable after the key is created.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "KeyCheckValueAlgorithm": { "target": "com.amazonaws.paymentcryptography#KeyCheckValueAlgorithm", "traits": { - "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV) for DES and AES keys.
\nFor DES key, the KCV is computed by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.
" + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.
\nFor TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.
", + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "Exportable": { "target": "smithy.api#Boolean", "traits": { + "aws.cloudformation#cfnMutability": "full", "smithy.api#documentation": "Specifies whether the key is exportable from the service.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "Enabled": { "target": "smithy.api#Boolean", "traits": { - "smithy.api#documentation": "Specifies whether to enable the key. If the key is enabled, it is activated for use within the service. If the key not enabled, then it is created but not activated. The default value is enabled.
" + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "Specifies whether to enable the key. If the key is enabled, it is activated for use within the service. If the key is not enabled, then it is created but not activated. The default value is enabled.
", + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "Tags": { "target": "com.amazonaws.paymentcryptography#Tags", "traits": { - "smithy.api#documentation": "The tags to attach to the key. Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.
\nTo use this parameter, you must have TagResource
permission.
Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.
\nAssigns one or more tags to the Amazon Web Services Payment Cryptography key. Use this parameter to tag a key when it is created. To tag an existing Amazon Web Services Payment Cryptography key, use the TagResource operation.
\nEach tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.
\nDon't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.
\nThe key material that contains all the key attributes.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } } }, @@ -277,7 +349,8 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Deletes the alias, but doesn't affect the underlying key.
\nEach key can have multiple aliases. To get the aliases of all keys, use the ListAliases operation. To change the alias of a key, first use DeleteAlias to delete the current alias and then use CreateAlias to create a new alias. To associate an existing alias with a different key, call UpdateAlias.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n CreateAlias\n
\n\n GetAlias\n
\n\n ListAliases\n
\n\n UpdateAlias\n
\nDeletes the alias, but doesn't affect the underlying key.
\nEach key can have multiple aliases. To get the aliases of all keys, use the ListAliases operation. To change the alias of a key, first use DeleteAlias to delete the current alias and then use CreateAlias to create a new alias. To associate an existing alias with a different key, call UpdateAlias.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n CreateAlias\n
\n\n GetAlias\n
\n\n ListAliases\n
\n\n UpdateAlias\n
\nDeletes the key material and all metadata associated with Amazon Web Services Payment Cryptography key.
\nKey deletion is irreversible. After a key is deleted, you can't perform cryptographic operations using the key. For example, you can't decrypt data that was encrypted by a deleted Amazon Web Services Payment Cryptography key, and the data may become unrecoverable. Because key deletion is destructive, Amazon Web Services Payment Cryptography has a safety mechanism to prevent accidental deletion of a key. When you call this operation, Amazon Web Services Payment Cryptography disables the specified key but doesn't delete it until after a waiting period. The default waiting period is 7 days. To set a different waiting period, set DeleteKeyInDays
. During the waiting period, the KeyState
is DELETE_PENDING
. After the key is deleted, the KeyState
is DELETE_COMPLETE
.
If you delete key material, you can use ImportKey to reimport the same key material into the Amazon Web Services Payment Cryptography key.
\nYou should delete a key only when you are sure that you don't need to use it anymore and no other parties are utilizing this key. If you aren't sure, consider deactivating it instead by calling StopKeyUsage.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n RestoreKey\n
\n\n StartKeyUsage\n
\n\n StopKeyUsage\n
\nDeletes the key material and metadata associated with Amazon Web Services Payment Cryptography key.
\nKey deletion is irreversible. After a key is deleted, you can't perform cryptographic operations using the key. For example, you can't decrypt data that was encrypted by a deleted Amazon Web Services Payment Cryptography key, and the data may become unrecoverable. Because key deletion is destructive, Amazon Web Services Payment Cryptography has a safety mechanism to prevent accidental deletion of a key. When you call this operation, Amazon Web Services Payment Cryptography disables the specified key but doesn't delete it until after a waiting period set using DeleteKeyInDays
. The default waiting period is 7 days. During the waiting period, the KeyState
is DELETE_PENDING
. After the key is deleted, the KeyState
is DELETE_COMPLETE
.
You should delete a key only when you are sure that you don't need to use it anymore and no other parties are utilizing this key. If you aren't sure, consider deactivating it instead by calling StopKeyUsage.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n RestoreKey\n
\n\n StartKeyUsage\n
\n\n StopKeyUsage\n
\nThe KeyARN
of the key that is scheduled for deletion.
Parameter information for IPEK export.
" + } + }, + "KeyCheckValueAlgorithm": { + "target": "com.amazonaws.paymentcryptography#KeyCheckValueAlgorithm", + "traits": { + "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity. Specify KCV for IPEK export only.
\nFor TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.
" + } + } + }, + "traits": { + "smithy.api#documentation": "The attributes for IPEK generation during export.
" + } + }, + "com.amazonaws.paymentcryptography#ExportDukptInitialKey": { + "type": "structure", + "members": { + "KeySerialNumber": { + "target": "com.amazonaws.paymentcryptography#HexLength20Or24", + "traits": { + "smithy.api#documentation": "The KSN for IPEK generation using DUKPT.
\nKSN must be padded before sending to Amazon Web Services Payment Cryptography. KSN hex length should be 20 for a TDES_2KEY key or 24 for an AES key.
", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "Parameter information for IPEK generation during export.
" + } + }, "com.amazonaws.paymentcryptography#ExportKey": { "type": "operation", "input": { @@ -411,7 +524,7 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Exports a key from Amazon Web Services Payment Cryptography using either ANSI X9 TR-34 or TR-31 key export standard.
\nAmazon Web Services Payment Cryptography simplifies main or root key exchange process by eliminating the need of a paper-based key exchange process. It takes a modern and secure approach based of the ANSI X9 TR-34 key exchange standard.
\nYou can use ExportKey
to export main or root keys such as KEK (Key Encryption Key), using asymmetric key exchange technique following ANSI X9 TR-34 standard. The ANSI X9 TR-34 standard uses asymmetric keys to establishes bi-directional trust between the two parties exchanging keys. After which you can export working keys using the ANSI X9 TR-31 symmetric key exchange standard as mandated by PCI PIN. Using this operation, you can share your Amazon Web Services Payment Cryptography generated keys with other service partners to perform cryptographic operations outside of Amazon Web Services Payment Cryptography
\n TR-34 key export\n
\nAmazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange standard to export main keys such as KEK. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Host (KRH). In key export process, KDH is Amazon Web Services Payment Cryptography which initiates key export. KRH is the user receiving the key. Before you initiate TR-34 key export, you must obtain an export token by calling GetParametersForExport. This operation also returns the signing key certificate that KDH uses to sign the wrapped key to generate a TR-34 wrapped key block. The export token expires after 7 days.
\nSet the following parameters:
\nThe KeyARN
of the certificate chain that will sign the wrapping key certificate. This must exist within Amazon Web Services Payment Cryptography before you initiate TR-34 key export. If it does not exist, you can import it by calling ImportKey for RootCertificatePublicKey
.
Obtained from KDH by calling GetParametersForExport.
\nAmazon Web Services Payment Cryptography uses this to wrap the key under export.
\nWhen this operation is successful, Amazon Web Services Payment Cryptography returns the TR-34 wrapped key block.
\n\n TR-31 key export\n
\nAmazon Web Services Payment Cryptography uses TR-31 symmetric key exchange standard to export working keys. In TR-31, you must use a main key such as KEK to encrypt or wrap the key under export. To establish a KEK, you can use CreateKey or ImportKey. When this operation is successful, Amazon Web Services Payment Cryptography returns a TR-31 wrapped key block.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ImportKey\n
\nExports a key from Amazon Web Services Payment Cryptography.
\nAmazon Web Services Payment Cryptography simplifies key exchange by replacing the existing paper-based approach with a modern electronic approach. With ExportKey
you can export symmetric keys using either symmetric and asymmetric key exchange mechanisms. Using this operation, you can share your Amazon Web Services Payment Cryptography generated keys with other service partners to perform cryptographic operations outside of Amazon Web Services Payment Cryptography
For symmetric key exchange, Amazon Web Services Payment Cryptography uses the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 norm . Asymmetric key exchange methods are typically used to establish bi-directional trust between the two parties exhanging keys and are used for initial key exchange such as Key Encryption Key (KEK). After which you can export working keys using symmetric method to perform various cryptographic operations within Amazon Web Services Payment Cryptography.
\nThe TR-34 norm is intended for exchanging 3DES keys only and keys are imported in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, KeyModesOfUse, Exportability) are contained within the key block.
\nYou can also use ExportKey
functionality to generate and export an IPEK (Initial Pin Encryption Key) from Amazon Web Services Payment Cryptography using either TR-31 or TR-34 export key exchange. IPEK is generated from BDK (Base Derivation Key) and ExportDukptInitialKey
attribute KSN (KeySerialNumber
). The generated IPEK does not persist within Amazon Web Services Payment Cryptography and has to be re-generated each time during export.
\n To export KEK or IPEK using TR-34\n
\nUsing this operation, you can export initial key using TR-34 asymmetric key exchange. You can only export KEK generated within Amazon Web Services Payment Cryptography. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Device (KRD). During key export process, KDH is Amazon Web Services Payment Cryptography which initiates key export and KRD is the user receiving the key.
\nTo initiate TR-34 key export, the KRD must obtain an export token by calling GetParametersForExport. This operation also generates a key pair for the purpose of key export, signs the key and returns back the signing public key certificate (also known as KDH signing certificate) and root certificate chain. The KDH uses the private key to sign the the export payload and the signing public key certificate is provided to KRD to verify the signature. The KRD can import the root certificate into its Hardware Security Module (HSM), as required. The export token and the associated KDH signing certificate expires after 7 days.
\nNext the KRD generates a key pair for the the purpose of encrypting the KDH key and provides the public key cerificate (also known as KRD wrapping certificate) back to KDH. The KRD will also import the root cerificate chain into Amazon Web Services Payment Cryptography by calling ImportKey for RootCertificatePublicKey
. The KDH, Amazon Web Services Payment Cryptography, will use the KRD wrapping cerificate to encrypt (wrap) the key under export and signs it with signing private key to generate a TR-34 WrappedKeyBlock. For more information on TR-34 key export, see section Exporting symmetric keys in the Amazon Web Services Payment Cryptography User Guide.
Set the following parameters:
\n\n ExportAttributes
: Specify export attributes in case of IPEK export. This parameter is optional for KEK export.
\n ExportKeyIdentifier
: The KeyARN
of the KEK or BDK (in case of IPEK) under export.
\n KeyMaterial
: Use Tr34KeyBlock
parameters.
\n CertificateAuthorityPublicKeyIdentifier
: The KeyARN
of the certificate chain that signed the KRD wrapping key certificate.
\n ExportToken
: Obtained from KDH by calling GetParametersForImport.
\n WrappingKeyCertificate
: The public key certificate in PEM format (base64 encoded) of the KRD wrapping key Amazon Web Services Payment Cryptography uses for encryption of the TR-34 export payload. This certificate must be signed by the root certificate (CertificateAuthorityPublicKeyIdentifier) imported into Amazon Web Services Payment Cryptography.
When this operation is successful, Amazon Web Services Payment Cryptography returns the KEK or IPEK as a TR-34 WrappedKeyBlock.
\n\n To export WK (Working Key) or IPEK using TR-31\n
\nUsing this operation, you can export working keys or IPEK using TR-31 symmetric key exchange. In TR-31, you must use an initial key such as KEK to encrypt or wrap the key under export. To establish a KEK, you can use CreateKey or ImportKey.
\nSet the following parameters:
\n\n ExportAttributes
: Specify export attributes in case of IPEK export. This parameter is optional for KEK export.
\n ExportKeyIdentifier
: The KeyARN
of the KEK or BDK (in case of IPEK) under export.
\n KeyMaterial
: Use Tr31KeyBlock
parameters.
When this operation is successful, Amazon Web Services Payment Cryptography returns the WK or IPEK as a TR-31 WrappedKeyBlock.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ImportKey\n
\nThe KeyARN
of the key under export from Amazon Web Services Payment Cryptography.
The attributes for IPEK generation during export.
" + } } }, "traits": { @@ -442,18 +561,18 @@ "Tr31KeyBlock": { "target": "com.amazonaws.paymentcryptography#ExportTr31KeyBlock", "traits": { - "smithy.api#documentation": "Parameter information for key material export using TR-31 standard.
" + "smithy.api#documentation": "Parameter information for key material export using symmetric TR-31 key exchange method.
" } }, "Tr34KeyBlock": { "target": "com.amazonaws.paymentcryptography#ExportTr34KeyBlock", "traits": { - "smithy.api#documentation": "Parameter information for key material export using TR-34 standard.
" + "smithy.api#documentation": "Parameter information for key material export using the asymmetric TR-34 key exchange method.
" } } }, "traits": { - "smithy.api#documentation": "Parameter information for key material export from Amazon Web Services Payment Cryptography.
" + "smithy.api#documentation": "Parameter information for key material export from Amazon Web Services Payment Cryptography using TR-31 or TR-34 key exchange method.
" } }, "com.amazonaws.paymentcryptography#ExportKeyOutput": { @@ -462,7 +581,7 @@ "WrappedKey": { "target": "com.amazonaws.paymentcryptography#WrappedKey", "traits": { - "smithy.api#documentation": "The key material under export as a TR-34 or TR-31 wrapped key block.
" + "smithy.api#documentation": "The key material under export as a TR-34 WrappedKeyBlock or a TR-31 WrappedKeyBlock.
" } } }, @@ -488,7 +607,7 @@ } }, "traits": { - "smithy.api#documentation": "Parameter information for key material export using TR-31 standard.
" + "smithy.api#documentation": "Parameter information for key material export using symmetric TR-31 key exchange method.
" } }, "com.amazonaws.paymentcryptography#ExportTr34KeyBlock": { @@ -530,7 +649,7 @@ } }, "traits": { - "smithy.api#documentation": "Parameter information for key material export using TR-34 standard.
" + "smithy.api#documentation": "Parameter information for key material export using the asymmetric TR-34 key exchange method.
" } }, "com.amazonaws.paymentcryptography#GetAlias": { @@ -588,8 +707,12 @@ "Alias": { "target": "com.amazonaws.paymentcryptography#Alias", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The alias of the Amazon Web Services Payment Cryptography key.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } } }, @@ -652,8 +775,12 @@ "Key": { "target": "com.amazonaws.paymentcryptography#Key", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The key material, including the immutable and mutable data for the key.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } } }, @@ -713,7 +840,7 @@ "SigningKeyAlgorithm": { "target": "com.amazonaws.paymentcryptography#KeyAlgorithm", "traits": { - "smithy.api#documentation": "The signing key algorithm to generate a signing key certificate. This certificate signs the wrapped key under export within the TR-34 key block cryptogram. RSA_2048
is the only signing key algorithm allowed.
The signing key algorithm to generate a signing key certificate. This certificate signs the wrapped key under export within the TR-34 key block. RSA_2048
is the only signing key algorithm allowed.
The signing key certificate of the public key for signature within the TR-34 key block cryptogram. The certificate expires after 7 days.
", + "smithy.api#documentation": "The signing key certificate in PEM format (base64 encoded) of the public key for signature within the TR-34 key block. The certificate expires after 7 days.
", "smithy.api#required": {} } }, "SigningKeyCertificateChain": { "target": "com.amazonaws.paymentcryptography#CertificateType", "traits": { - "smithy.api#documentation": "The certificate chain that signed the signing key certificate. This is the root certificate authority (CA) within your service account.
", + "smithy.api#documentation": "The root certificate authority (CA) that signed the signing key certificate in PEM format (base64 encoded).
", "smithy.api#required": {} } }, @@ -801,7 +928,7 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Gets the import token and the wrapping key certificate to initiate a TR-34 key import into Amazon Web Services Payment Cryptography.
\nThe wrapping key certificate wraps the key under import within the TR-34 key payload. The import token and wrapping key certificate must be in place and operational before calling ImportKey. The import token expires in 7 days. The same import token can be used to import multiple keys into your service account.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ImportKey\n
\nGets the import token and the wrapping key certificate in PEM format (base64 encoded) to initiate a TR-34 WrappedKeyBlock.
\nThe wrapping key certificate wraps the key under import. The import token and wrapping key certificate must be in place and operational before calling ImportKey. The import token expires in 7 days. You can use the same import token to import multiple keys into your service account.
\n\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ImportKey\n
\nThe key block format type such as TR-34 or TR-31 to use during key material import. Import token is only required for TR-34 key import TR34_KEY_BLOCK
. Import token is not required for TR-31 key import.
The method to use for key material import. Import token is only required for TR-34 WrappedKeyBlock (TR34_KEY_BLOCK
).
Import token is not required for TR-31, root public key cerificate or trusted public key certificate.
", "smithy.api#required": {} } }, "WrappingKeyAlgorithm": { "target": "com.amazonaws.paymentcryptography#KeyAlgorithm", "traits": { - "smithy.api#documentation": "The wrapping key algorithm to generate a wrapping key certificate. This certificate wraps the key under import within the TR-34 key block cryptogram. RSA_2048
is the only wrapping key algorithm allowed.
The wrapping key algorithm to generate a wrapping key certificate. This certificate wraps the key under import.
\nAt this time, RSA_2048
, RSA_3072
, RSA_4096
are the only allowed algorithms for TR-34 WrappedKeyBlock import.
The wrapping key certificate of the wrapping key for use within the TR-34 key block. The certificate expires in 7 days.
", + "smithy.api#documentation": "The wrapping key certificate in PEM format (base64 encoded) of the wrapping key for use within the TR-34 key block. The certificate expires in 7 days.
", "smithy.api#required": {} } }, "WrappingKeyCertificateChain": { "target": "com.amazonaws.paymentcryptography#CertificateType", "traits": { - "smithy.api#documentation": "The Amazon Web Services Payment Cryptography certificate chain that signed the wrapping key certificate. This is the root certificate authority (CA) within your service account.
", + "smithy.api#documentation": "The Amazon Web Services Payment Cryptography root certificate authority (CA) that signed the wrapping key certificate in PEM format (base64 encoded).
", "smithy.api#required": {} } }, "WrappingKeyAlgorithm": { "target": "com.amazonaws.paymentcryptography#KeyAlgorithm", "traits": { - "smithy.api#documentation": "The algorithm of the wrapping key for use within TR-34 key block. RSA_2048
is the only wrapping key algorithm allowed.
The algorithm of the wrapping key for use within TR-34 WrappedKeyBlock.
", "smithy.api#required": {} } }, @@ -924,14 +1051,14 @@ "KeyCertificate": { "target": "com.amazonaws.paymentcryptography#CertificateType", "traits": { - "smithy.api#documentation": "The public key component of the asymmetric key pair in a certificate (PEM) format. It is signed by the root certificate authority (CA) within your service account. The certificate expires in 90 days.
", + "smithy.api#documentation": "The public key component of the asymmetric key pair in a certificate PEM format (base64 encoded). It is signed by the root certificate authority (CA). The certificate expires in 90 days.
", "smithy.api#required": {} } }, "KeyCertificateChain": { "target": "com.amazonaws.paymentcryptography#CertificateType", "traits": { - "smithy.api#documentation": "The certificate chain that signed the public key certificate of the asymmetric key pair. This is the root certificate authority (CA) within your service account.
", + "smithy.api#documentation": "The root certificate authority (CA) that signed the public key certificate in PEM format (base64 encoded) of the asymmetric key pair.
", "smithy.api#required": {} } } @@ -950,6 +1077,16 @@ "smithy.api#pattern": "^[0-9A-F]+$" } }, + "com.amazonaws.paymentcryptography#HexLength20Or24": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 20, + "max": 24 + }, + "smithy.api#pattern": "^[0-9A-F]{20}$|^[0-9A-F]{24}$" + } + }, "com.amazonaws.paymentcryptography#ImportKey": { "type": "operation", "input": { @@ -986,7 +1123,7 @@ ], "traits": { "aws.api#controlPlane": {}, - "smithy.api#documentation": "Imports keys and public key certificates into Amazon Web Services Payment Cryptography.
\nAmazon Web Services Payment Cryptography simplifies main or root key exchange process by eliminating the need of a paper-based key exchange process. It takes a modern and secure approach based of the ANSI X9 TR-34 key exchange standard.
\nYou can use ImportKey
to import main or root keys such as KEK (Key Encryption Key) using asymmetric key exchange technique following the ANSI X9 TR-34 standard. The ANSI X9 TR-34 standard uses asymmetric keys to establishes bi-directional trust between the two parties exchanging keys.
After you have imported a main or root key, you can import working keys to perform various cryptographic operations within Amazon Web Services Payment Cryptography using the ANSI X9 TR-31 symmetric key exchange standard as mandated by PCI PIN.
\nYou can also import a root public key certificate, a self-signed certificate used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.
\n\n To import a public root key certificate\n
\nUsing this operation, you can import the public component (in PEM cerificate format) of your private root key. You can use the imported public root key certificate for digital signatures, for example signing wrapping key or signing key in TR-34, within your Amazon Web Services Payment Cryptography account.
\nSet the following parameters:
\n\n KeyMaterial
: RootCertificatePublicKey
\n
\n KeyClass
: PUBLIC_KEY
\n
\n KeyModesOfUse
: Verify
\n
\n KeyUsage
: TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE
\n
\n PublicKeyCertificate
: The certificate authority used to sign the root public key certificate.
\n To import a trusted public key certificate\n
\nThe root public key certificate must be in place and operational before you import a trusted public key certificate. Set the following parameters:
\n\n KeyMaterial
: TrustedCertificatePublicKey
\n
\n CertificateAuthorityPublicKeyIdentifier
: KeyArn
of the RootCertificatePublicKey
.
\n KeyModesOfUse
and KeyUsage
: Corresponding to the cryptographic operations such as wrap, sign, or encrypt that you will allow the trusted public key certificate to perform.
\n PublicKeyCertificate
: The certificate authority used to sign the trusted public key certificate.
\n Import main keys\n
\nAmazon Web Services Payment Cryptography uses TR-34 asymmetric key exchange standard to import main keys such as KEK. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Host (KRH). During the key import process, KDH is the user who initiates the key import and KRH is Amazon Web Services Payment Cryptography who receives the key. Before initiating TR-34 key import, you must obtain an import token by calling GetParametersForImport. This operation also returns the wrapping key certificate that KDH uses wrap key under import to generate a TR-34 wrapped key block. The import token expires after 7 days.
\nSet the following parameters:
\n\n CertificateAuthorityPublicKeyIdentifier
: The KeyArn
of the certificate chain that will sign the signing key certificate and should exist within Amazon Web Services Payment Cryptography before initiating TR-34 key import. If it does not exist, you can import it by calling by calling ImportKey
for RootCertificatePublicKey
.
\n ImportToken
: Obtained from KRH by calling GetParametersForImport.
\n WrappedKeyBlock
: The TR-34 wrapped key block from KDH. It contains the KDH key under import, wrapped with KRH provided wrapping key certificate and signed by the KDH private signing key. This TR-34 key block is generated by the KDH Hardware Security Module (HSM) outside of Amazon Web Services Payment Cryptography.
\n SigningKeyCertificate
: The public component of the private key that signed the KDH TR-34 wrapped key block. In PEM certificate format.
TR-34 is intended primarily to exchange 3DES keys. Your ability to export AES-128 and larger AES keys may be dependent on your source system.
\n\n Import working keys\n
\nAmazon Web Services Payment Cryptography uses TR-31 symmetric key exchange standard to import working keys. A KEK must be established within Amazon Web Services Payment Cryptography by using TR-34 key import. To initiate a TR-31 key import, set the following parameters:
\n\n WrappedKeyBlock
: The key under import and encrypted using KEK. The TR-31 key block generated by your HSM outside of Amazon Web Services Payment Cryptography.
\n WrappingKeyIdentifier
: The KeyArn
of the KEK that Amazon Web Services Payment Cryptography uses to decrypt or unwrap the key under import.
\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ExportKey\n
\nImports symmetric keys and public key certificates in PEM format (base64 encoded) into Amazon Web Services Payment Cryptography.
\nAmazon Web Services Payment Cryptography simplifies key exchange by replacing the existing paper-based approach with a modern electronic approach. With ImportKey
you can import symmetric keys using either symmetric and asymmetric key exchange mechanisms.
For symmetric key exchange, Amazon Web Services Payment Cryptography uses the ANSI X9 TR-31 norm in accordance with PCI PIN guidelines. And for asymmetric key exchange, Amazon Web Services Payment Cryptography supports ANSI X9 TR-34 norm . Asymmetric key exchange methods are typically used to establish bi-directional trust between the two parties exhanging keys and are used for initial key exchange such as Key Encryption Key (KEK) or Zone Master Key (ZMK). After which you can import working keys using symmetric method to perform various cryptographic operations within Amazon Web Services Payment Cryptography.
\nThe TR-34 norm is intended for exchanging 3DES keys only and keys are imported in a WrappedKeyBlock format. Key attributes (such as KeyUsage, KeyAlgorithm, KeyModesOfUse, Exportability) are contained within the key block.
\nYou can also import a root public key certificate, used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.
\n\n To import a public root key certificate\n
\nYou can also import a root public key certificate, used to sign other public key certificates, or a trusted public key certificate under an already established root public key certificate.
\n\n To import a public root key certificate\n
\nUsing this operation, you can import the public component (in PEM cerificate format) of your private root key. You can use the imported public root key certificate for digital signatures, for example signing wrapping key or signing key in TR-34, within your Amazon Web Services Payment Cryptography account.
\nSet the following parameters:
\n\n KeyMaterial
: RootCertificatePublicKey
\n
\n KeyClass
: PUBLIC_KEY
\n
\n KeyModesOfUse
: Verify
\n
\n KeyUsage
: TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE
\n
\n PublicKeyCertificate
: The public key certificate in PEM format (base64 encoded) of the private root key under import.
\n To import a trusted public key certificate\n
\nThe root public key certificate must be in place and operational before you import a trusted public key certificate. Set the following parameters:
\n\n KeyMaterial
: TrustedCertificatePublicKey
\n
\n CertificateAuthorityPublicKeyIdentifier
: KeyArn
of the RootCertificatePublicKey
.
\n KeyModesOfUse
and KeyUsage
: Corresponding to the cryptographic operations such as wrap, sign, or encrypt that you will allow the trusted public key certificate to perform.
\n PublicKeyCertificate
: The trusted public key certificate in PEM format (base64 encoded) under import.
\n To import KEK or ZMK using TR-34\n
\nUsing this operation, you can import initial key using TR-34 asymmetric key exchange. In TR-34 terminology, the sending party of the key is called Key Distribution Host (KDH) and the receiving party of the key is called Key Receiving Device (KRD). During the key import process, KDH is the user who initiates the key import and KRD is Amazon Web Services Payment Cryptography who receives the key.
\nTo initiate TR-34 key import, the KDH must obtain an import token by calling GetParametersForImport. This operation generates an encryption keypair for the purpose of key import, signs the key and returns back the wrapping key certificate (also known as KRD wrapping certificate) and the root certificate chain. The KDH must trust and install the KRD wrapping certificate on its HSM and use it to encrypt (wrap) the KDH key during TR-34 WrappedKeyBlock generation. The import token and associated KRD wrapping certificate expires after 7 days.
\nNext the KDH generates a key pair for the purpose of signing the encrypted KDH key and provides the public certificate of the signing key to Amazon Web Services Payment Cryptography. The KDH will also need to import the root certificate chain of the KDH signing certificate by calling ImportKey
for RootCertificatePublicKey
. For more information on TR-34 key import, see section Importing symmetric keys in the Amazon Web Services Payment Cryptography User Guide.
Set the following parameters:
\n\n KeyMaterial
: Use Tr34KeyBlock
parameters.
\n CertificateAuthorityPublicKeyIdentifier
: The KeyARN
of the certificate chain that signed the KDH signing key certificate.
\n ImportToken
: Obtained from KRD by calling GetParametersForImport.
\n WrappedKeyBlock
: The TR-34 wrapped key material from KDH. It contains the KDH key under import, wrapped with KRD wrapping certificate and signed by KDH signing private key. This TR-34 key block is typically generated by the KDH Hardware Security Module (HSM) outside of Amazon Web Services Payment Cryptography.
\n SigningKeyCertificate
: The public key certificate in PEM format (base64 encoded) of the KDH signing key generated under the root certificate (CertificateAuthorityPublicKeyIdentifier) imported in Amazon Web Services Payment Cryptography.
\n To import WK (Working Key) using TR-31\n
\nAmazon Web Services Payment Cryptography uses TR-31 symmetric key exchange norm to import working keys. A KEK must be established within Amazon Web Services Payment Cryptography by using TR-34 key import or by using CreateKey. To initiate a TR-31 key import, set the following parameters:
\n\n KeyMaterial
: Use Tr31KeyBlock
parameters.
\n WrappedKeyBlock
: The TR-31 wrapped key material. It contains the key under import, encrypted using KEK. The TR-31 key block is typically generated by a HSM outside of Amazon Web Services Payment Cryptography.
\n WrappingKeyIdentifier
: The KeyArn
of the KEK that Amazon Web Services Payment Cryptography uses to decrypt or unwrap the key under import.
\n Cross-account use: This operation can't be used across different Amazon Web Services accounts.
\n\n Related operations:\n
\n\n ExportKey\n
\nThe algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV) for DES and AES keys.
\nFor DES key, the KCV is computed by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES key, the KCV is computed by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.
" + "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.
\nFor TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.
" } }, "Enabled": { @@ -1014,7 +1151,7 @@ "Tags": { "target": "com.amazonaws.paymentcryptography#Tags", "traits": { - "smithy.api#documentation": "The tags to attach to the key. Each tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key.
\nYou can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the specified one.
\nTo use this parameter, you must have TagResource
permission.
Don't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.
\nAssigns one or more tags to the Amazon Web Services Payment Cryptography key. Use this parameter to tag a key when it is imported. To tag an existing Amazon Web Services Payment Cryptography key, use the TagResource operation.
\nEach tag consists of a tag key and a tag value. Both the tag key and the tag value are required, but the tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the specified one.
\nDon't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTagging or untagging an Amazon Web Services Payment Cryptography key can allow or deny permission to the key.
\nParameter information for key material import using TR-31 standard.
" + "smithy.api#documentation": "Parameter information for key material import using symmetric TR-31 key exchange method.
" } }, "Tr34KeyBlock": { "target": "com.amazonaws.paymentcryptography#ImportTr34KeyBlock", "traits": { - "smithy.api#documentation": "Parameter information for key material import using TR-34 standard.
" + "smithy.api#documentation": "Parameter information for key material import using the asymmetric TR-34 key exchange method.
" } } }, "traits": { - "smithy.api#documentation": "Parameter information for key material import.
" + "smithy.api#documentation": "Parameter information for key material import into Amazon Web Services Payment Cryptography using TR-31 or TR-34 key exchange method.
" } }, "com.amazonaws.paymentcryptography#ImportKeyOutput": { @@ -1088,13 +1225,13 @@ "WrappedKeyBlock": { "target": "com.amazonaws.paymentcryptography#Tr31WrappedKeyBlock", "traits": { - "smithy.api#documentation": "The TR-34 wrapped key block to import.
", + "smithy.api#documentation": "The TR-31 wrapped key block to import.
", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "Parameter information for key material import using TR-31 standard.
" + "smithy.api#documentation": "Parameter information for key material import using symmetric TR-31 key exchange method.
" } }, "com.amazonaws.paymentcryptography#ImportTr34KeyBlock": { @@ -1110,14 +1247,14 @@ "SigningKeyCertificate": { "target": "com.amazonaws.paymentcryptography#CertificateType", "traits": { - "smithy.api#documentation": "The public key component in PEM certificate format of the private key that signs the KDH TR-34 wrapped key block.
", + "smithy.api#documentation": "The public key component in PEM certificate format of the private key that signs the KDH TR-34 WrappedKeyBlock.
", "smithy.api#required": {} } }, "ImportToken": { "target": "com.amazonaws.paymentcryptography#ImportTokenId", "traits": { - "smithy.api#documentation": "The import token that initiates key import into Amazon Web Services Payment Cryptography. It expires after 7 days. You can use the same import token to import multiple keys to the same service account.
", + "smithy.api#documentation": "The import token that initiates key import using the asymmetric TR-34 key exchange method into Amazon Web Services Payment Cryptography. It expires after 7 days. You can use the same import token to import multiple keys to the same service account.
", "smithy.api#required": {} } }, @@ -1143,7 +1280,7 @@ } }, "traits": { - "smithy.api#documentation": "Parameter information for key material import using TR-34 standard.
" + "smithy.api#documentation": "Parameter information for key material import using the asymmetric TR-34 key exchange method.
" } }, "com.amazonaws.paymentcryptography#InternalServerException": { @@ -1165,8 +1302,12 @@ "KeyArn": { "target": "com.amazonaws.paymentcryptography#KeyArn", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The Amazon Resource Name (ARN) of the key.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "KeyAttributes": { @@ -1179,14 +1320,18 @@ "KeyCheckValue": { "target": "com.amazonaws.paymentcryptography#KeyCheckValue", "traits": { - "smithy.api#documentation": "The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or \"00\" or \"01\" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
", - "smithy.api#required": {} + "aws.cloudformation#cfnExcludeProperty": {}, + "smithy.api#documentation": "The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.
", + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "KeyCheckValueAlgorithm": { "target": "com.amazonaws.paymentcryptography#KeyCheckValueAlgorithm", "traits": { - "smithy.api#documentation": "The algorithm used for calculating key check value (KCV) for DES and AES keys. For a DES key, Amazon Web Services Payment Cryptography computes the KCV by encrypting 8 bytes, each with value '00', with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For an AES key, Amazon Web Services Payment Cryptography computes the KCV by encrypting 8 bytes, each with value '01', with the key to be checked and retaining the 3 highest order bytes of the encrypted result.
", + "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.
\nFor TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.
", "smithy.api#required": {} } }, @@ -1207,51 +1352,88 @@ "KeyState": { "target": "com.amazonaws.paymentcryptography#KeyState", "traits": { + "aws.cloudformation#cfnMutability": "read", "smithy.api#documentation": "The state of key that is being created or deleted.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "KeyOrigin": { "target": "com.amazonaws.paymentcryptography#KeyOrigin", "traits": { + "aws.cloudformation#cfnMutability": "read", "smithy.api#documentation": "The source of the key material. For keys created within Amazon Web Services Payment Cryptography, the value is AWS_PAYMENT_CRYPTOGRAPHY
. For keys imported into Amazon Web Services Payment Cryptography, the value is EXTERNAL
.
The date and time when the key was created.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "UsageStartTimestamp": { "target": "com.amazonaws.paymentcryptography#Timestamp", "traits": { - "smithy.api#documentation": "The date and time after which Amazon Web Services Payment Cryptography will start using the key material for cryptographic operations.
" + "aws.cloudformation#cfnExcludeProperty": {}, + "smithy.api#documentation": "The date and time after which Amazon Web Services Payment Cryptography will start using the key material for cryptographic operations.
", + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "UsageStopTimestamp": { "target": "com.amazonaws.paymentcryptography#Timestamp", "traits": { - "smithy.api#documentation": "The date and time after which Amazon Web Services Payment Cryptography will stop using the key material for cryptographic operations.
" + "aws.cloudformation#cfnExcludeProperty": {}, + "smithy.api#documentation": "The date and time after which Amazon Web Services Payment Cryptography will stop using the key material for cryptographic operations.
", + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "DeletePendingTimestamp": { "target": "com.amazonaws.paymentcryptography#Timestamp", "traits": { - "smithy.api#documentation": "The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when KeyState
is DELETE_PENDING
and the key is scheduled for deletion.
The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when KeyState
is DELETE_PENDING
and the key is scheduled for deletion.
The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when when the KeyState
is DELETE_COMPLETE
and the Amazon Web Services Payment Cryptography key is deleted.
The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when when the KeyState
is DELETE_COMPLETE
and the Amazon Web Services Payment Cryptography key is deleted.
Metadata about an Amazon Web Services Payment Cryptography key.
" + "smithy.api#documentation": "Metadata about an Amazon Web Services Payment Cryptography key.
", + "smithy.api#references": [ + { + "resource": "com.amazonaws.paymentcryptography#KeyResource", + "service": "com.amazonaws.paymentcryptography#PaymentCryptographyControlPlane", + "ids": { + "KeyIdentifier": "KeyArn" + } + } + ] } }, "com.amazonaws.paymentcryptography#KeyAlgorithm": { @@ -1517,6 +1699,48 @@ ] } }, + "com.amazonaws.paymentcryptography#KeyResource": { + "type": "resource", + "identifiers": { + "KeyIdentifier": { + "target": "com.amazonaws.paymentcryptography#KeyArnOrKeyAliasType" + } + }, + "create": { + "target": "com.amazonaws.paymentcryptography#CreateKey" + }, + "read": { + "target": "com.amazonaws.paymentcryptography#GetKey" + }, + "delete": { + "target": "com.amazonaws.paymentcryptography#DeleteKey" + }, + "list": { + "target": "com.amazonaws.paymentcryptography#ListKeys" + }, + "operations": [ + { + "target": "com.amazonaws.paymentcryptography#RestoreKey" + }, + { + "target": "com.amazonaws.paymentcryptography#StartKeyUsage" + }, + { + "target": "com.amazonaws.paymentcryptography#StopKeyUsage" + } + ], + "traits": { + "aws.cloudformation#cfnResource": { + "name": "Key", + "additionalSchemas": [ + "com.amazonaws.paymentcryptography#Key" + ] + }, + "smithy.api#suppress": [ + "UnstableTrait" + ] + } + }, "com.amazonaws.paymentcryptography#KeyState": { "type": "string", "traits": { @@ -1568,7 +1792,7 @@ "KeyCheckValue": { "target": "com.amazonaws.paymentcryptography#KeyCheckValue", "traits": { - "smithy.api#documentation": "The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or \"00\" or \"01\" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.
", + "smithy.api#documentation": "The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.
", "smithy.api#required": {} } }, @@ -1758,8 +1982,12 @@ "Aliases": { "target": "com.amazonaws.paymentcryptography#Aliases", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The list of aliases. Each alias describes the KeyArn
contained within.
Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.
" + "smithy.api#documentation": "Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.
\nThis value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.
" } } }, @@ -1845,8 +2073,12 @@ "Keys": { "target": "com.amazonaws.paymentcryptography#KeySummaryList", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The list of keys created within the caller's Amazon Web Services account and Amazon Web Services Region.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } }, "NextToken": { @@ -1919,7 +2151,7 @@ "MaxResults": { "target": "com.amazonaws.paymentcryptography#MaxResults", "traits": { - "smithy.api#documentation": "Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.
" + "smithy.api#documentation": "Use this parameter to specify the maximum number of items to return. When this value is present, Amazon Web Services Payment Cryptography does not return more than the specified number of items, but it might return fewer.
\nThis value is optional. If you include a value, it must be between 1 and 100, inclusive. If you do not include a value, it defaults to 50.
" } } }, @@ -1970,27 +2202,9 @@ "type": "service", "version": "2021-09-14", "operations": [ - { - "target": "com.amazonaws.paymentcryptography#CreateAlias" - }, - { - "target": "com.amazonaws.paymentcryptography#CreateKey" - }, - { - "target": "com.amazonaws.paymentcryptography#DeleteAlias" - }, - { - "target": "com.amazonaws.paymentcryptography#DeleteKey" - }, { "target": "com.amazonaws.paymentcryptography#ExportKey" }, - { - "target": "com.amazonaws.paymentcryptography#GetAlias" - }, - { - "target": "com.amazonaws.paymentcryptography#GetKey" - }, { "target": "com.amazonaws.paymentcryptography#GetParametersForExport" }, @@ -2003,46 +2217,37 @@ { "target": "com.amazonaws.paymentcryptography#ImportKey" }, - { - "target": "com.amazonaws.paymentcryptography#ListAliases" - }, - { - "target": "com.amazonaws.paymentcryptography#ListKeys" - }, { "target": "com.amazonaws.paymentcryptography#ListTagsForResource" }, - { - "target": "com.amazonaws.paymentcryptography#RestoreKey" - }, - { - "target": "com.amazonaws.paymentcryptography#StartKeyUsage" - }, - { - "target": "com.amazonaws.paymentcryptography#StopKeyUsage" - }, { "target": "com.amazonaws.paymentcryptography#TagResource" }, { "target": "com.amazonaws.paymentcryptography#UntagResource" + } + ], + "resources": [ + { + "target": "com.amazonaws.paymentcryptography#AliasResource" }, { - "target": "com.amazonaws.paymentcryptography#UpdateAlias" + "target": "com.amazonaws.paymentcryptography#KeyResource" } ], "traits": { "aws.api#service": { "sdkId": "Payment Cryptography", "arnNamespace": "payment-cryptography", - "endpointPrefix": "controlplane.payment-cryptography" + "endpointPrefix": "controlplane.payment-cryptography", + "cloudFormationName": "PaymentCryptography" }, "aws.auth#sigv4": { "name": "payment-cryptography" }, "aws.protocols#awsJson1_0": {}, "smithy.api#cors": {}, - "smithy.api#documentation": "You use the Amazon Web Services Payment Cryptography Control Plane to manage the encryption keys you use for payment-related cryptographic operations. You can create, import, export, share, manage, and delete keys. You can also manage Identity and Access Management (IAM) policies for keys. For more information, see Identity and access management in the Amazon Web Services Payment Cryptography User Guide.\n
\nTo use encryption keys for payment-related transaction processing and associated cryptographic operations, you use the Amazon Web Services Payment Cryptography Data Plane. You can encrypt, decrypt, generate, verify, and translate payment-related cryptographic operations.
\nAll Amazon Web Services Payment Cryptography API calls must be signed and transmitted using Transport Layer Security (TLS). We recommend you always use the latest supported TLS version for logging API requests.
\nAmazon Web Services Payment Cryptography supports CloudTrail, a service that logs Amazon Web Services API calls and related events for your Amazon Web Services account and delivers them to an Amazon S3 bucket that you specify. By using the information collected by CloudTrail, you can determine what requests were made to Amazon Web Services Payment Cryptography, who made the request, when it was made, and so on. If you don't configure a trail, you can still view the most recent events in the CloudTrail console. For more information, see the CloudTrail User Guide.
", + "smithy.api#documentation": "Amazon Web Services Payment Cryptography Control Plane APIs manage encryption keys for use during payment-related cryptographic operations. You can create, import, export, share, manage, and delete keys. You can also manage Identity and Access Management (IAM) policies for keys. For more information, see Identity and access management in the Amazon Web Services Payment Cryptography User Guide.\n
\nTo use encryption keys for payment-related transaction processing and associated cryptographic operations, you use the Amazon Web Services Payment Cryptography Data Plane. You can perform actions like encrypt, decrypt, generate, and verify payment-related data.
\nAll Amazon Web Services Payment Cryptography API calls must be signed and transmitted using Transport Layer Security (TLS). We recommend you always use the latest supported TLS version for logging API requests.
\nAmazon Web Services Payment Cryptography supports CloudTrail for control plane operations, a service that logs Amazon Web Services API calls and related events for your Amazon Web Services account and delivers them to an Amazon S3 bucket you specify. By using the information collected by CloudTrail, you can determine what requests were made to Amazon Web Services Payment Cryptography, who made the request, when it was made, and so on. If you don't configure a trail, you can still view the most recent events in the CloudTrail console. For more information, see the CloudTrail User Guide.
", "smithy.api#title": "Payment Cryptography Control Plane", "smithy.rules#endpointRuleSet": { "version": "1.0", @@ -2086,7 +2291,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2105,7 +2309,6 @@ }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -2133,13 +2336,14 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [ @@ -2152,7 +2356,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2166,7 +2369,6 @@ "assign": "PartitionResult" } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2189,7 +2391,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2224,11 +2425,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -2239,16 +2438,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS and DualStack are enabled, but this partition does not support one or both", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2262,14 +2464,12 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ { "fn": "booleanEquals", "argv": [ - true, { "fn": "getAttr", "argv": [ @@ -2278,15 +2478,14 @@ }, "supportsFIPS" ] - } + }, + true ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -2297,16 +2496,19 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "FIPS is enabled but this partition does not support FIPS", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [ @@ -2320,7 +2522,6 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [ @@ -2340,11 +2541,9 @@ ] } ], - "type": "tree", "rules": [ { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -2355,20 +2554,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "DualStack is enabled but this partition does not support DualStack", "type": "error" } - ] + ], + "type": "tree" }, { "conditions": [], - "type": "tree", "rules": [ { "conditions": [], @@ -2379,18 +2580,22 @@ }, "type": "endpoint" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" } - ] + ], + "type": "tree" }, { "conditions": [], "error": "Invalid Configuration: Missing Region", "type": "error" } - ] + ], + "type": "tree" } ] }, @@ -2796,8 +3001,12 @@ "Key": { "target": "com.amazonaws.paymentcryptography#Key", "traits": { + "aws.cloudformation#cfnExcludeProperty": {}, "smithy.api#documentation": "The key material of the restored key. The KeyState
will change to CREATE_COMPLETE
and value for DeletePendingTimestamp
gets removed.
The KeyARN
of the Amazon Web Services Payment Cryptography key activated for use.
The KeyARN
of the key.
One or more tags. Each tag consists of a tag key and a tag value. The tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the new one.
\nDon't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTo use this parameter, you must have TagResource permission in an IAM policy.
\nDon't include confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nOne or more tags. Each tag consists of a tag key and a tag value. The tag value can be an empty (null) string. You can't have more than one tag on an Amazon Web Services Payment Cryptography key with the same tag key. If you specify an existing tag key with a different tag value, Amazon Web Services Payment Cryptography replaces the current tag value with the new one.
\nDon't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nTo use this parameter, you must have TagResource permission in an IAM policy.
\nDon't include personal, confidential or sensitive information in this field. This field may be displayed in plaintext in CloudTrail logs and other output.
\nThe alias name.
", - "smithy.api#required": {} + "smithy.api#required": {}, + "smithy.api#suppress": [ + "UnstableTrait" + ] } } }, @@ -3368,13 +3589,25 @@ "KeyMaterial": { "target": "com.amazonaws.paymentcryptography#KeyMaterial", "traits": { - "smithy.api#documentation": "Parameter information for generating a wrapped key using TR-31 or TR-34 standard.
", + "smithy.api#documentation": "Parameter information for generating a wrapped key using TR-31 or TR-34 skey exchange method.
", "smithy.api#required": {} } + }, + "KeyCheckValue": { + "target": "com.amazonaws.paymentcryptography#KeyCheckValue", + "traits": { + "smithy.api#documentation": "The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.
" + } + }, + "KeyCheckValueAlgorithm": { + "target": "com.amazonaws.paymentcryptography#KeyCheckValueAlgorithm", + "traits": { + "smithy.api#documentation": "The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.
\nFor TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.
" + } } }, "traits": { - "smithy.api#documentation": "Parameter information for generating a wrapped key using TR-31 or TR-34 standard.
" + "smithy.api#documentation": "Parameter information for generating a WrappedKeyBlock for key exchange.
" } }, "com.amazonaws.paymentcryptography#WrappedKeyMaterialFormat": {