Предоставление доступа к ресурсам AWS Lambda, имеющим данный тег - PullRequest
1 голос
/ 01 апреля 2019

Я хочу предоставить доступ группе пользователей для выполнения определенных операций с определенными функциями Lambda. Мои лямбды уже помечены правильно, чтобы разрешить это, например: "отдел: час". Могу ли я связать это вместе с IAM?

Я видел документацию по условным выражениям, которая позволяет сравнивать ResourceTag\* со значением, но они не доступны в визуальном редакторе (от которого, к сожалению, я зависел) для функций Lambda.

Я хочу что-то вроде этого:

            "Effect": "Allow",
            "Action": [
                "lambda:ListFunctions",
                "lambda:ListVersionsByFunction",
                "lambda:GetLayerVersion",
                "lambda:GetEventSourceMapping",
                "lambda:GetFunction",
                "lambda:ListAliases",
                "lambda:GetAccountSettings",
                "lambda:GetFunctionConfiguration",
                "lambda:GetLayerVersionPolicy",
                "lambda:ListTags",
                "lambda:ListEventSourceMappings",
                "lambda:ListLayerVersions",
                "lambda:ListLayers",
                "lambda:GetAlias",
                "lambda:GetPolicy"
            ],
            "Resource": "*"
            "Condition": {
                "StringEquals": {
                    "lambda:ResourceTag/department": "hr"
                }

Я не могу встроить это в визуальный редактор, и я получаю синтаксические ошибки, когда пытаюсь сам.

1 Ответ

1 голос
/ 02 апреля 2019

Я не верю, что lambda:ResourceTag/${TagKey} является условием контекста, доступным для любых лямбда-действий (REF: https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awslambda.html).

С учетом вышесказанного, некорректное использование ключей контекста обычно завершается сбоем молча.Вы включаете полный оператор? Например, в приведенном выше фрагменте отсутствует условие } для условия.

...