使用本地计算机上的boto3连接到AWS SNS。

时间:2018-01-25 15:25:06

标签: python amazon-web-services boto3 amazon-sns

我在AWS上有一个SNS主题,我可以使用boto3从本地计算机连接到它吗?

我无法找到合适的文件来清除这一点。

1 个答案:

答案 0 :(得分:3)

如评论中所述,您需要拥有适当的权限以及正确的凭据。您可以使用awscli在本地设置凭据,您应该可以通过pip

进行安装
pip install awscli

请参阅此guide进行安装。

配置awscli时,您将设置位于~/.aws/credentials的凭据文件。默认情况下,Boto3将使用此文件进行身份验证。

aws configure

请注意,这将在您的计算机上存储AWS Access密钥ID和秘密访问密钥。最好不要使用root帐户执行此操作,而是为此目的创建辅助用户。

设置完成后,通过Boto3连接到AWS SNS将非常简单(假设链接的凭据可以访问您帐户中的SNS。

import boto3
client = boto3.client('sns')

或者,如果您愿意,可以直接使用访问密钥和秘密访问密钥创建Boto3客户端。

import boto3
client = boto3.client(
    'sns',
    aws_access_key_id=ACCESS_KEY,
    aws_secret_access_key=SECRET_KEY
)

如果您仍然存在权限问题,则链接的凭据可能无法访问SNS。您可以通过转到IAM并确保您已连接的用户具有足够的权限来通过AWS控制台修改权限。