Amazon S3政策接收每日SMS使用情况报告-不起作用

时间:2018-10-31 06:31:33

标签: amazon-web-services amazon-s3 amazon-sns

我们已将S3存储桶配置为接收来自AWS SNS的每日SMS使用情况报告。

但是S3存储桶未收到任何报告。

这是我们使用的政策:

{
    "Version": "2012-10-17",
    "Id": "sns-sms-daily-usage-policy",
    "Statement": [
        {
            "Sid": "AllowPutObject",
            "Effect": "Allow",
            "Principal": {
                "Service": "sns.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::bucket-name/*"
        },
        {
            "Sid": "AllowGetBucketLocation",
            "Effect": "Allow",
            "Principal": {
                "Service": "sns.amazonaws.com"
            },
            "Action": "s3:GetBucketLocation",
            "Resource": "arn:aws:s3:::bucket-name"
        }
    ]
}

1 个答案:

答案 0 :(得分:1)

要对此进行测试,我做了以下工作:

  • 创建了Amazon S3存储桶
  • 应用了上述存储桶策略(替换了我的存储桶名称)
  • 在Amazon SNS中,配置SMS使用情况报告以发送到该存储桶
  • 发送短信
  • 等待两天

该报告最终出现在我的S3存储桶中,名为:

SMSUsageReports/ap-southeast-2/2018/10/31/001.csv.gz

内容为:

PublishTimeUTC,MessageId,DestinationPhoneNumber,MessageType,DeliveryStatus,PriceInUSD,PartNumber,TotalParts
2018-10-31T06:40:29.247Z,xxx,+61xxx,Promotional,Message has been accepted by phone,0.05878,1,1

所以,似乎需要很长时间才能到达,但是确实可以到达。

我还注意到发送到美国号码的前100条SMS消息是免费的,因此免费消息有可能不会生成使用情况报告(但是我使用的是非美国号码,因此我不知道是否是这种情况。)