Python Lambda - базовая аутентификация для вызовов API в лямбда-функции - PullRequest
0 голосов
/ 06 февраля 2019

Я пытаюсь сделать вызов API для внешней системы, используя AWS Lambda.Это будет использоваться для сбора информации о файлах по мере их поступления в корзину S3.

Я получаю сообщение об ошибке 403 при попытке выполнить вызов REST API.Я считаю, что есть проблема с тем, как я форматирую имя пользователя и пароль, необходимые для аутентификации.Нужно ли это делать особым образом для подключения Python 3.6 Lambdas?

import boto3
import requests

s3 = boto3.resource('s3')
myurl = "https://my-url/"

# These will be stored in AWS KMS for production system
username = 'username'
passkey = 'passkey'

headers = {
            "Accept": "application/json",
            "Content-Type": "application/json; charset=utf-8"
        }

def lambda_handler(event, context):
    bucket = s3.Bucket('mybucket')


    for obj in bucket.objects.all():
        file_name = obj.key.split('/', 2).pop()
        file_name_no_ext = file_name[:-5]


        if file_name != '':
            if file_name.endswith('.json'):
                Final_File_name = file_name_no_ext + '.mxf'
                url = myurl + 'mypath/'+ Final_File_name
                response = requests.get(url, headers=headers, auth=(username, passkey))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...