update_field_level_encryption_profile

update_field_level_encryption_profile(**kwargs)

Update a field-level encryption profile.

See also: AWS API Documentation

Request Syntax

response = client.update_field_level_encryption_profile(
    FieldLevelEncryptionProfileConfig={
        'Name': 'string',
        'CallerReference': 'string',
        'Comment': 'string',
        'EncryptionEntities': {
            'Quantity': 123,
            'Items': [
                {
                    'PublicKeyId': 'string',
                    'ProviderId': 'string',
                    'FieldPatterns': {
                        'Quantity': 123,
                        'Items': [
                            'string',
                        ]
                    }
                },
            ]
        }
    },
    Id='string',
    IfMatch='string'
)
Parameters
  • FieldLevelEncryptionProfileConfig (dict) --

    [REQUIRED]

    Request to update a field-level encryption profile.

    • Name (string) -- [REQUIRED]

      Profile name for the field-level encryption profile.

    • CallerReference (string) -- [REQUIRED]

      A unique number that ensures that the request can't be replayed.

    • Comment (string) --

      An optional comment for the field-level encryption profile. The comment cannot be longer than 128 characters.

    • EncryptionEntities (dict) -- [REQUIRED]

      A complex data type of encryption entities for the field-level encryption profile that include the public key ID, provider, and field patterns for specifying which fields to encrypt with this key.

      • Quantity (integer) -- [REQUIRED]

        Number of field pattern items in a field-level encryption content type-profile mapping.

      • Items (list) --

        An array of field patterns in a field-level encryption content type-profile mapping.

        • (dict) --

          Complex data type for field-level encryption profiles that includes the encryption key and field pattern specifications.

          • PublicKeyId (string) -- [REQUIRED]

            The public key associated with a set of field-level encryption patterns, to be used when encrypting the fields that match the patterns.

          • ProviderId (string) -- [REQUIRED]

            The provider associated with the public key being used for encryption. This value must also be provided with the private key for applications to be able to decrypt data.

          • FieldPatterns (dict) -- [REQUIRED]

            Field patterns in a field-level encryption content type profile specify the fields that you want to be encrypted. You can provide the full field name, or any beginning characters followed by a wildcard (*). You can't overlap field patterns. For example, you can't have both ABC* and AB*. Note that field patterns are case-sensitive.

            • Quantity (integer) -- [REQUIRED]

              The number of field-level encryption field patterns.

            • Items (list) --

              An array of the field-level encryption field patterns.

              • (string) --
  • Id (string) --

    [REQUIRED]

    The ID of the field-level encryption profile request.

  • IfMatch (string) -- The value of the ETag header that you received when retrieving the profile identity to update. For example: E2QWRUHAPOMQZL .
Return type

dict

Returns

Response Syntax

{
    'FieldLevelEncryptionProfile': {
        'Id': 'string',
        'LastModifiedTime': datetime(2015, 1, 1),
        'FieldLevelEncryptionProfileConfig': {
            'Name': 'string',
            'CallerReference': 'string',
            'Comment': 'string',
            'EncryptionEntities': {
                'Quantity': 123,
                'Items': [
                    {
                        'PublicKeyId': 'string',
                        'ProviderId': 'string',
                        'FieldPatterns': {
                            'Quantity': 123,
                            'Items': [
                                'string',
                            ]
                        }
                    },
                ]
            }
        }
    },
    'ETag': 'string'
}

Response Structure

  • (dict) --

    • FieldLevelEncryptionProfile (dict) --

      Return the results of updating the profile.

      • Id (string) --

        The ID for a field-level encryption profile configuration which includes a set of profiles that specify certain selected data fields to be encrypted by specific public keys.

      • LastModifiedTime (datetime) --

        The last time the field-level encryption profile was updated.

      • FieldLevelEncryptionProfileConfig (dict) --

        A complex data type that includes the profile name and the encryption entities for the field-level encryption profile.

        • Name (string) --

          Profile name for the field-level encryption profile.

        • CallerReference (string) --

          A unique number that ensures that the request can't be replayed.

        • Comment (string) --

          An optional comment for the field-level encryption profile. The comment cannot be longer than 128 characters.

        • EncryptionEntities (dict) --

          A complex data type of encryption entities for the field-level encryption profile that include the public key ID, provider, and field patterns for specifying which fields to encrypt with this key.

          • Quantity (integer) --

            Number of field pattern items in a field-level encryption content type-profile mapping.

          • Items (list) --

            An array of field patterns in a field-level encryption content type-profile mapping.

            • (dict) --

              Complex data type for field-level encryption profiles that includes the encryption key and field pattern specifications.

              • PublicKeyId (string) --

                The public key associated with a set of field-level encryption patterns, to be used when encrypting the fields that match the patterns.

              • ProviderId (string) --

                The provider associated with the public key being used for encryption. This value must also be provided with the private key for applications to be able to decrypt data.

              • FieldPatterns (dict) --

                Field patterns in a field-level encryption content type profile specify the fields that you want to be encrypted. You can provide the full field name, or any beginning characters followed by a wildcard (*). You can't overlap field patterns. For example, you can't have both ABC* and AB*. Note that field patterns are case-sensitive.

                • Quantity (integer) --

                  The number of field-level encryption field patterns.

                • Items (list) --

                  An array of the field-level encryption field patterns.

                  • (string) --
    • ETag (string) --

      The result of the field-level encryption profile request.

Exceptions

  • CloudFront.Client.exceptions.AccessDenied
  • CloudFront.Client.exceptions.FieldLevelEncryptionProfileAlreadyExists
  • CloudFront.Client.exceptions.IllegalUpdate
  • CloudFront.Client.exceptions.InconsistentQuantities
  • CloudFront.Client.exceptions.InvalidArgument
  • CloudFront.Client.exceptions.InvalidIfMatchVersion
  • CloudFront.Client.exceptions.NoSuchPublicKey
  • CloudFront.Client.exceptions.NoSuchFieldLevelEncryptionProfile
  • CloudFront.Client.exceptions.PreconditionFailed
  • CloudFront.Client.exceptions.FieldLevelEncryptionProfileSizeExceeded
  • CloudFront.Client.exceptions.TooManyFieldLevelEncryptionEncryptionEntities
  • CloudFront.Client.exceptions.TooManyFieldLevelEncryptionFieldPatterns