Я думаю, Lambda
вместе с API Gateway
предлагает хорошее решение. API Gateway позволяет создавать постоянную, общедоступную конечную точку HTTP. Вы можете определить конкретные конкретные «ресурсы», которые отображают методы HTTP для вызовов лямбда-функций.
Я не особенно знаком с OAuth 2, но я представляю себе что-то вроде этого: в API Gateway определите ресурс '/ callback' с помощью метода GET, который вызывает вашу функцию Lambda.
Зарегистрируйте API шлюза конечной точки в качестве обратного вызова вашего приложения URI, который будет выглядеть примерно так:
https://c1bql2cdxy.execute-api.us-east-1.amazonaws.com/callback
Поступая таким образом, удаленный сервис будет вызывать вашу функцию лямбда, которая затем может прочитать разрешение токен из запроса и использовать его, как это необходимо, независимо от того, включает ли это: 1) хранение токена в базе данных для будущего использования (и повторного использования) другими службами; 2) непосредственное обращение к службам в пределах одной и той же функции лямбда и т. д.
много для редактирования и ответа, звучит многообещающе. Я проверю все и вернусь, чтобы отметить его как правильное. – JordanBelf
Hi @rumdrums, как работает oauth 2, вы сначала отправляете запрос GET для получения кода, а затем используете этот код в запросе POST с некоторыми другими данными в виде секретного ключа, идентификатора приложения и т. Д. Я пытаюсь понять API Поток шлюза. Я должен создать 2 разных ресурса правильно? И затем назовите их своей лямбда-функцией. Извините, если это не имеет смысла, я пытаюсь понять, как это работает. Еще раз спасибо – JordanBelf
@JordanBelf Я думаю, что вы определенно на правильном пути. Поскольку вопрос ограничивался частью обратного вызова обратного вызова, я не очень задумывался над начальной частью - когда пользователь запрашивает у вашего приложения начальную ссылку на авторизацию, - но я думаю, что вы определенно захотите разделить Лямбда-сервис, доступный по другому URL-адресу, который пользователь может получить для получения этой ссылки. Оттуда пользователь аутентифицируется с помощью службы авторизации, после чего он перенаправляется на ваш URL обратного вызова. Имеет ли это смысл? – rumdrums