2017-07-27 61 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主題時自動設置?

回答