Исключение Canary — AccessDeniedException: Доступ к KMS запрещен

#amazon-cloudwatch #aws-secrets-manager

Вопрос:

Я настроил простой синтетический мониторинг транзакций (canary) в aws, который запускает HTTP-запрос POST для определенной конечной точки с использованием секретных ключей, определенных в AWS Secrets Manager (ASM).

 const AWS = require('aws-sdk'); const secretsManager = new AWS.SecretsManager(); const getKeyCert = async () =gt; {  var params = {  SecretId: "arn:aws:secretsmanager:us-west-1:443682978425:secret:Canary_BO_TLS_CER-LalJXG"  };  const key = await secretsManager.getSecretValue(params).promise();  var params = {  SecretId: "arn:aws:secretsmanager:us-west-1:443682978425:secret:Canary_BO_TLS_CER-LalJXG"  };  const cert = await secretsManager.getSecretValue(params).promise(); }  var synthetics = require('Synthetics'); const log = require('SyntheticsLogger'); const syntheticsConfiguration = synthetics.getConfiguration();  const apiCanaryBlueprint = async function () {  const [ key, cert ] = await getKeyCert();  syntheticsConfiguration.setConfig({  restrictedHeaders: [], // Value of these headers will be redacted from logs and reports  restrictedUrlParameters: [] // Values of these url parameters will be redacted from logs and reports  });  

Я также приложил GetSecretValue полис в IAM. к роли, которая управляет Канарейкой.

Но по какой-то причине я получаю сообщение об ошибке, связанное со Службой управления ключами (KMS):

 AccessDeniedException: Access to KMS is not allowed Stack: AccessDeniedException: Access to KMS is not allowed  

Что очень интересно, потому что я не зашифровал свой секрет в диспетчере секретов AWS (ASM).

что навело меня на мысль, что, возможно, это может быть Служба управления ключами (KMS) по умолчанию шифрует секреты, если я не шифровал их с самого начала?

Я не уверен, как решить эту проблему.