Я пытаюсь использовать boto3 SDK, чтобы включить ведение журнала доступа к серверу через python. Тем не менее, я получаю сообщение об ошибке:
Вы должны предоставить группе доставки журналов разрешения WRITE и READ_ACP для целевого сегмента
Я знаю, что мне нужно добавить разрешения для этой группы, но я не знаю, как это сделать с помощью Python SDK.
Я пытался выполнить Включение ведения журнала программно - Amazon Simple Storage Service , но мне не удалось преобразовать его в Python.
Я дополнительно попытался поместить Грантополучателя и Разрешения в вызов put_bucket_logging, но безрезультатно.
Ниже приведена моя функция, чтобы попытаться сделать это, что привело к вышеупомянутой ошибке:
def enableAccessLogging(clientS3, bucketName, storageBucket,
targetPrefix):
#Give the group log-delievery WRITE and READ_ACP permisions to the
#target bucket
acl = get_bucket_acl(clientS3, storageBucket)
new_grant = {
'Grantee': {
'ID' : 'LogDelivery',
'Type' : 'Group'
},
'Permission': 'FULL_CONTROL',
}
modified_acl = copy.deepcopy(acl)
modified_acl['Grants'].append(new_grant)
setBucketAcl(clientS3, bucketName, modified_acl)
response = clientS3.put_bucket_logging(
Bucket=bucketName,
BucketLoggingStatus={
'LoggingEnabled': {
'TargetBucket': storageBucket,
'TargetPrefix': targetPrefix
}
}
)