Как расшифровать значения Secure String в хранилище параметров с помощью .NET Core AmazonSimpleSystemsManagementClient

У меня есть следующий код в лямбда-функции:

        var ssmConfig = new AmazonSimpleSystemsManagementConfig
        {
            RegionEndpoint = RegionEndpoint.APSoutheast2
        };

        using (var ssmClient = new AmazonSimpleSystemsManagementClient(ssmConfig))
        {
            var myParameter = await ssmClient.GetParameterAsync(
                new GetParameterRequest
                {
                    Name = "myParameter",
                    WithDecryption = true
                });

Лямбда-функция имеет следующую политику:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeParameters",
                "ssm:GetParameters",
                "ssm:GetParameter"
            ],
            "Resource": "arn:aws:ssm:ap-southeast-2:23314131242:parameter/myParameters/*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:DescribeKey",
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:ap-southeast-2:23314131242:key/myKey"
            ]
        }
    ]
}

Однако я получаю следующую ошибку:

Amazon.SimpleSystemsManagement.AmazonSimpleSystemsManagementException: The ciphertext refers to a customer master key that does not exist, does not exist in this region, or you are not allowed to access

Используя симулятор политики IAM, я проверил, что роль Lambda имеет ожидаемые разрешения.

Нужно ли как-то указывать псевдоним CMK? Что еще может быть не так?

0
задан 24 March 2020 в 08:42
1 ответ

Я понял, что мне также нужно добавить роль Lambda в качестве «ключевого пользователя» CMK. Подробнее см. https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-users .

Это можно сделать через консоль, отредактировав CMK, а затем прокрутите вниз до раздела «Ключевые пользователи».

0
ответ дан 30 March 2020 в 01:28

Теги

Похожие вопросы