我们在使用Apache NiFi和SQS时遇到了非常奇怪的情况。我们正在使用AWSCredentialsProviderControllerService管理我们的身份验证。如果我们使用未加密的队列,则工作正常,但是,如果使用加密的队列,则不会失败,但不会写入任何内容。在NiFi或云端跟踪日志中似乎也没有生成任何内容。只是想知道是否有什么特别的事情需要完成以支持这种情况。如果失败,我们将无法确定发生在哪里。任何建议或想法将不胜感激。
答案 0 :(得分:1)
在以下情况下,我能够使用PutSQS重现静默故障:
解决方案是向NiFi的AWS凭证提供使用SQS和KMS的权限。我在What AWS KMS Permissions Do I Need to Use SSE for Amazon SQS?中找到了以下示例策略:
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"kms:GenerateDataKey",
"kms:Decrypt"
],
"Resource": "arn:aws:kms:us-east-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
}, {
"Effect": "Allow",
"Action": [
"sqs:SendMessage",
"sqs:SendMessageBatch"
],
"Resource": "arn:aws:sqs:*:123456789012:MyQueue"
}]
}