AWS API Gateway защищает конечную точку - PullRequest
0 голосов
/ 16 сентября 2018

У меня есть лямбда-функция, которая запускается службой API Gateway, однако к этому API-интерфейсу обращается интерфейсное приложение, которое не требует от пользователей входа или регистрации для его использования.

Однако я бы хотел, чтобы мой API разрешал только из моего интерфейсного приложения.

После исследования я обнаружил, что могу использовать пользовательскую авторизацию в API Gateway, эта пользовательская авторизация проверитзаголовок авторизации входящего запроса и его валидация.

вопрос в том, могу ли я использовать Amazon Cognito для чего-то вроде этого (неявный тип предоставления)?если нет, то что отправляет мне приложение для проверки, и как я могу сохранить его всегда изменяемым, чтобы никто не мог его угадать?

Спасибо.

1 Ответ

0 голосов
/ 16 сентября 2018

Вы можете проверить заголовки, но если они всегда одинаковы, кто-то может отправить HTTP-запрос с этими заголовками - с любого клиента - и заставить вашу лямбду думать, что она исходит от вашего пользовательского интерфейса.

Даже если вы генерируете уникальный токен каждый раз, когда ваш пользовательский интерфейс загружается, и включаете его в заголовки, кто-то может взять этот токен и отправить запросы и от другого клиента.

Вы можете создать фантастические трюки JavaScript, чтобы сделать заголовки болеединамический, но это только усложнит использование вашего API от другого клиента, а не просто невозможно.

...