boto3 添加 unix 凭据,urllib2/3

boto3 add unix credentials, urllib2/3

我们可以将 unix 用户凭据添加到 SQS 客户端吗?

情况: 我在 Unix 系统中有一个用户(没有 'sudo'/root 权限)。而这个 Unix 用户的权限不允许我连接到 amazonaws.com

我可以将此Unix 用户的用户名和密码传递给boto3 客户端(SQS) 吗?

或者,我们可以在 urllib2/3 中传递 boto3 客户端接收消息对象吗?

我已经尝试过的:

import boto3

# Create SQS client
sqs = boto3.client('sqs',region_name='eu-west-1')

queue_url='https://sqs.eu-west-1.amazonaws.com/XXXX'

# Receive message from SQS queue
response = sqs.receive_message(
    QueueUrl=queue_url,
    AttributeNames=[
        'SentTimestamp'
    ],
    MaxNumberOfMessages=10,
    MessageAttributeNames=[
        'All'
    ],
    VisibilityTimeout=0,
    WaitTimeSeconds=0
)

没有。不可能。从您的代码来看,凭证似乎存储在 root 用户的目录下,没有 sudo 权限的用户无法访问该目录。这是一个 Linux 问题,与 Boto3 无关。

想办法让用户访问 aws 凭据。就像对凭据文件具有读取权限的软 link。