Шифрование ответа API Django Rest Framework + расшифровка ответа в react app
В настоящее время я создаю приложение.
Мой front end разработан с использованием React и Axios (для запросов вызовов API). Он обслуживается непосредственно vercel на сайте mydomain.com
Мой back end разработан с использованием Django и Django Rest. Она обслуживается с помощью apache2 на api.mydomain.com. Он обслуживает только конечные точки API.
Таким образом, front-end и back-end разделены.
Я хочу вернуть все данные в зашифрованном виде в качестве ответа API, а затем хочу расшифровать их во внешнем приложении (react)
У вас есть идеи, что я могу сделать, чтобы достичь этого?
Заранее большое спасибо за ваши ответы.
Это такой интересный вопрос.
Если вам нужно шифрование, я думаю, вам стоит обратить внимание на SSL-шифрование (используя https вместо http). SSL шифрует данные между клиентом и сервером. Вам все равно придется сделать конечные точки API недоступными для неавторизованных пользователей.
Здесь есть отличная статья о защите Django API с помощью JWT-токенов.
Вы можете установить конечную точку входа, которая будет получать токены из Django после успешного входа.
Затем эти токены могут быть использованы React для доступа к защищенным конечным точкам Django. В качестве дополнительного уровня безопасности, вы можете сделать эти токены недолговечными, в маловероятном случае, если кто-то перехватит токены, они истекут, и хакер потеряет доступ к вашему API.
SSL + JWT-токены должны решить ваши потребности :)