Моему пользователю IAM прикреплены две нижеприведенные политики.
Я создал приведенную ниже политику IAM, которая запрещает создание лямбды, если у нее нет тега Project.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Deny",
"Action": "lambda:*",
"Resource": "*",
"Condition": {
"Null": {
"aws:RequestTag/Project": "true"
}
}
}
]
}
Мне также нужно присоединить / создать новую роль выполнения при создании лямбды, поэтому я добавил ниже политику Iam для своего пользователя IAM.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Action": "iam:*",
"Resource": "*"
}
]
}
Я вошел в консоль aws используя учетные данные этого пользователя IAM и попытался создать лямбда-функцию без тега, но он не заблокировал создание ресурса. Я смог создать лямбда-функцию без обязательного тега, но со следующими ошибками.
You are not authorized to perform: cloudformation:DescribeStackResources.
You are not authorized to perform: lambda:GetFunctionEventInvokeConfig.
User: arn:aws:iam::****:user/testuser is not authorized to perform: lambda:ListEventSourceMappings on resource: * with an explicit deny (Service: AWSLambda; Status Code: 403; Error Code: AccessDeniedException; Request ID: 199433ed*****)
Как полностью заблокировать создание ресурса?
https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_example-scps.html#example -require-tag-on-create
В конце концов я хочу попробовать aws: RequestTag / {TageKey} для всех поддерживаемых aws ресурсов.