putEncryptionConfig method

Future<PutEncryptionConfigResult> putEncryptionConfig({
  1. required EncryptionType type,
  2. String? keyId,
})

Updates the encryption configuration for X-Ray data.

May throw InvalidRequestException. May throw ThrottledException.

Parameter type : The type of encryption. Set to KMS to use your own key for encryption. Set to NONE for default encryption.

Parameter keyId : An AWS KMS customer master key (CMK) in one of the following formats:

  • Alias - The name of the key. For example, alias/MyKey.
  • Key ID - The KMS key ID of the key. For example, ae4aa6d49-a4d8-9df9-a475-4ff6d7898456. AWS X-Ray does not support asymmetric CMKs.
  • ARN - The full Amazon Resource Name of the key ID or alias. For example, arn:aws:kms:us-east-2:123456789012:key/ae4aa6d49-a4d8-9df9-a475-4ff6d7898456. Use this format to specify a key in a different account.
Omit this key if you set Type to NONE.

Implementation

Future<PutEncryptionConfigResult> putEncryptionConfig({
  required EncryptionType type,
  String? keyId,
}) async {
  ArgumentError.checkNotNull(type, 'type');
  _s.validateStringLength(
    'keyId',
    keyId,
    1,
    3000,
  );
  final $payload = <String, dynamic>{
    'Type': type.toValue(),
    if (keyId != null) 'KeyId': keyId,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/PutEncryptionConfig',
    exceptionFnMap: _exceptionFns,
  );
  return PutEncryptionConfigResult.fromJson(response);
}