2017-07-27 56 views
1

我使用python boto3在多个帐户中自动创建云轨。我的问题是,create_trail不会自动创建与轨迹关联的sns话题。 create_trail期望sns主题已经存在。将服务添加到SNS政策

我可以用boto创建sns主题,但我似乎无法设置主题的策略以允许cloudtrail发布到主题。

这是正确的策略是什么样子的控制台:

{ 
    "Sid": "AWSCloudTrailSNSPolicy20150319", 
    "Effect": "Allow", 
    "Principal": { 
    "Service": "cloudtrail.amazonaws.com" 
    }, 
    "Action": "SNS:Publish", 
    "Resource": "arn:aws:sns:us-east-1:123456678912:us-east-1-trail" 
} 

似乎没有被授予权限的服务与博托方式:

client.add_permission(
    TopicArn=arn, 
    Label='AWSCloudTrailSNSPolicy20150319', 
    AWSAccountId=[ 
     '12345678912' 
    ], 
    ActionName=[ 
     'Publish', 
    ] 
) 

如果我在此处添加帐户create_trail调用仍然失败:

调用CreateTrail操作时发生错误(InsufficientSnsTopicPolicyException):SNS主题不存在或不存在主题策略不正确!

有没有办法给服务授权或在创建线索或sns主题时自动设置?

回答