in remediation/terraform/fc/fc_function_for_kms_tag.py [0:0]
def tag_resources(context, resource_id, resource_type, region_id):
config = open_api_models.Config(
access_key_id = sts_access_key_id,
access_key_secret = sts_access_key_secret,
security_token = sts_security_token
)
logger.info(f'check {region_id}')
config.endpoint = f'kms.{region_id}.aliyuncs.com'
client = OpenApiClient(config)
params = open_api_models.Params(
action='TagResource',
version='2016-01-20',
protocol='HTTPS',
method='POST',
auth_type='AK',
style='RPC',
pathname=f'/',
req_body_type='json',
body_type='json'
)
resource_type_params = 'KeyId' if resource_type == 'ACS::KMS::Key' else 'SecretName'
queries = {resource_type_params: resource_id,
'Tags': DESIRED_TAG}
# runtime options
runtime = util_models.RuntimeOptions()
request = open_api_models.OpenApiRequest(
query=OpenApiUtilClient.query(queries)
)
try:
response = client.call_api(params, request, runtime)
logger.info('tag_resources with request: {}, response: {}.'.format(request, response))
except Exception as e:
logger.error('tag_resources error: %s' % e)