Ошибка без доступа к серверу Lambda SQS - PullRequest
0 голосов
/ 31 октября 2019

У меня есть приложение узла, работающее через serverless-framework.

Приложение записывает сообщения в SQS и имеет код

const AWS = require('aws-sdk');
const config = require('../../configs/constants').config;

const sqs = new AWS.SQS({apiVersion: '2012-11-05'});

module.exports.sendMessage = (service, message) => {
    const params = {
        MessageBody: JSON.stringify(message),
        QueueUrl: config.SQS_QUEUE_URL_ANALYTICS
    };

    return new Promise((resolve, reject) => {
        sqs.sendMessage(params, (err, data) => {
            if (err) {
                console.error('Error creating SQS Message: ', err);
                reject(err);
            } else {
                console.log('SQS Message created successfully: ', data);
                resolve(data);
            }
        });
    });
};

Разрешение, предоставленное пользователю,

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "sqs:ListQueues",
                "sqs:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": "sqs:*",
            "Resource": "arn:aws:sqs:ap-south-1:881210447458:Staging-Analytics-Log-Data-Process"
        }
    ]
}

При выполнении лямбда-функции выдает ошибку

ERROR Error creating SQS Message: { AccessDenied: Access to the resource https://sqs.ap-south-1.amazonaws.com/ is denied.

Какие еще учетные данные требуются для запуска SQS?

1 Ответ

0 голосов
/ 01 ноября 2019

Не уверен, что подстановочный знак пропускает ваши разрешения, но из кода, который вы разместили, вам нужны только разрешения для отправки сообщения.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "sqs:SendMessage"
            ],
            "Resource": "arn:aws:sqs:ap-south-1:881210447458:Staging-Analytics-Log-Data-Process"
        }
    ]
}
...