2017-12-06 30 views
0

SQS 클라이언트에 유닉스 사용자 자격 증명을 추가 할 수 있습니까?boto3 unix 자격 증명을 추가, urllib2/3

상황 : 유닉스 시스템에 사용자가 있습니다 ('sudo'/ root 권한 없음). 그리고이 유닉스 사용자의 권한으로는 amazonaws.com에 연결할 수 없습니다.

이 Unix 사용자의 사용자 이름과 암호를 boto3 client (SQS)로 전달할 수 있습니까?

또는, 우리는 boto3 클라이언트가 메시지 객체를 수신 할 수 있습니까? urllib2/3? 나는 이미 시도 무엇

:

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 
) 
  • 내가 그것을 긁어 urllib2가를 사용하는 URL에 액세스 할 수 있습니다. 그리고 유닉스 인증을 통과 할 수있다.

  • root 사용자로서 위의 코드에서 언급 한 바와 같이 boto3을 사용하여 amazonSQS에서 메시지를 가져올 수 있습니다.

답변

1

아니요. 코드에서 보면 자격 증명이 sudo 권한이없는 사용자가 액세스 할 수없는 루트 사용자의 디렉토리에 저장되어있는 것처럼 보입니다. 이것은 Linux 문제이며 Boto3과는 관련이 없습니다.

사용자가 aws 자격 증명에 액세스 할 수있는 방법을 찾습니다. 자격 증명 파일에 대한 읽기 권한이있는 소프트 링크와 같습니다.