CloudWatchLogs / Client / put_data_protection_policy
put_data_protection_policy#
- CloudWatchLogs.Client.put_data_protection_policy(**kwargs)#
- Creates a data protection policy for the specified log group. A data protection policy can help safeguard sensitive data that’s ingested by the log group by auditing and masking the sensitive log data. - Warning- Sensitive data is detected and masked when it is ingested into the log group. When you set a data protection policy, log events ingested into the log group before that time are not masked. - By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks. A user who has the - logs:Unmaskpermission can use a GetLogEvents or FilterLogEvents operation with the- unmaskparameter set to- trueto view the unmasked log events. Users with the- logs:Unmaskcan also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs Insights query with the- unmaskquery command.- For more information, including a list of types of data that can be audited and masked, see Protect sensitive log data with masking. - The - PutDataProtectionPolicyoperation applies to only the specified log group. You can also use PutAccountPolicy to create an account-level data protection policy that applies to all log groups in the account, including both existing log groups and log groups that are created level. If a log group has its own data protection policy and the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term specified in either policy is masked.- See also: AWS API Documentation - Request Syntax- response = client.put_data_protection_policy( logGroupIdentifier='string', policyDocument='string' ) - Parameters:
- logGroupIdentifier (string) – - [REQUIRED] - Specify either the log group name or log group ARN. 
- policyDocument (string) – - [REQUIRED] - Specify the data protection policy, in JSON. - This policy must include two JSON blocks: - The first block must include both a - DataIdentiferarray and an- Operationproperty with an- Auditaction. The- DataIdentiferarray lists the types of sensitive data that you want to mask. For more information about the available options, see Types of data that you can mask. The- Operationproperty with an- Auditaction is required to find the sensitive data terms. This- Auditaction must contain a- FindingsDestinationobject. You can optionally use that- FindingsDestinationobject to list one or more destinations to send audit findings to. If you specify destinations such as log groups, Firehose streams, and S3 buckets, they must already exist.
- The second block must include both a - DataIdentiferarray and an- Operationproperty with an- Deidentifyaction. The- DataIdentiferarray must exactly match the- DataIdentiferarray in the first block of the policy. The- Operationproperty with the- Deidentifyaction is what actually masks the data, and it must contain the- "MaskConfig": {}object. The- "MaskConfig": {}object must be empty.
 - For an example data protection policy, see the Examples section on this page. - Warning- The contents of the two - DataIdentiferarrays must match exactly.- In addition to the two JSON blocks, the - policyDocumentcan also include- Name,- Description, and- Versionfields. The- Nameis used as a dimension when CloudWatch Logs reports audit findings metrics to CloudWatch.- The JSON specified in - policyDocumentcan be up to 30,720 characters.
 
- Return type:
- dict 
- Returns:
- Response Syntax- { 'logGroupIdentifier': 'string', 'policyDocument': 'string', 'lastUpdatedTime': 123 } - Response Structure- (dict) – - logGroupIdentifier (string) – - The log group name or ARN that you specified in your request. 
- policyDocument (string) – - The data protection policy used for this log group. 
- lastUpdatedTime (integer) – - The date and time that this policy was most recently updated. 
 
 
 - Exceptions- CloudWatchLogs.Client.exceptions.InvalidParameterException
- CloudWatchLogs.Client.exceptions.LimitExceededException
- CloudWatchLogs.Client.exceptions.OperationAbortedException
- CloudWatchLogs.Client.exceptions.ResourceNotFoundException
- CloudWatchLogs.Client.exceptions.ServiceUnavailableException