Согласно документации здесь есть связанная с сервисом роль для автоматического масштабирования Dynamodb — AWSServiceRoleForApplicationAutoScaling_DynamoDBTable. Политика разрешений ролей позволяет автомасштабированию приложений выполнять следующие действия на всех ресурсах:
Action: dynamodb:DescribeTable
Action: dynamodb:UpdateTable
Action: cloudwatch:DeleteAlarms
Action: cloudwatch:DescribeAlarms
Action: cloudwatch:PutMetricAlarm
что переводится как (из здесь ),
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dynamodb:DescribeTable",
"dynamodb:UpdateTable",
"cloudwatch:DeleteAlarms",
"cloudwatch:DescribeAlarms",
"cloudwatch:PutMetricAlarm"
],
"Resource": "*"
}
]
}
Так, например, когда политика используется, как показано ниже,
TableLiveProductsReadScalableTarget:
Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
Properties:
MaxCapacity: !Ref TableLiveProductsReadMaxCap
MinCapacity: !Ref TableLiveProductsReadMinCap
ResourceId: !Sub "table/${TableLiveProducts}"
RoleARN: !Sub arn:aws:iam::${AWS::AccountId}:role/aws-service-role/dynamodb.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_DynamoDBTable
ScalableDimension: 'dynamodb:table:ReadCapacityUnits'
ServiceNamespace: dynamodb
с точки зрения безопасности можно ли предположить, что, поскольку роль может быть принята только dynamodb.application-autoscaling.amazonaws.com
, нет проблем с разрешением на обновление ALL
таблиц, удаление ALL
аварийных сигналов и т. д.?
В чем причина запроса такого разрешения с подстановочными знаками здесь (а также во многих связанных с сервисами ролях, созданных AWS)?
"Resource": "*"
. - person Jimson Kannanthara James   schedule 06.03.2021