Как обеспечить безопасную авторизацию с ajax? - PullRequest
0 голосов
/ 03 апреля 2020

Бэкэнд-команда предоставила мне POST-вызов для создания новой учетной записи пользователя, похожей на ту, что в фрагменте, с зашифрованной строкой авторизации в заголовке. Как защитить службу от нарушений, например, кто-то может написать сценарий и запустить его как al oop в консоли браузера Chrome для вызова службы. Строка авторизации жестко закодирована во внешнем интерфейсе и запрашивает токен на предъявителя для создания учетной записи во втором вызове сервера. Каков был бы более безопасный подход?

fetch('https://jsonplaceholder.typicode.com/posts', {
  method: 'POST',
  body: JSON.stringify({
    title: 'New Account',
    body: 'Create account for new user',
    userId: 1
  }),
  headers: {
    'Content-type': 'application/json; charset=UTF-8',
      Authorization: `B dGhN4787496087493c87nR67faaf1dGS3g=`,
      AuthorizationHash: `B e9267f8a4709171e849e54aaf1db7319c`,    
  }
})
.then(res => res.json())
.then(console.log)

1 Ответ

1 голос
/ 03 апреля 2020

Интерфейс в основном небезопасен, и вы ничего не можете с этим поделать. Бэкэнд-команда должна защитить свои конечные точки от атак с помощью таких методов, как:

  • Только разрешенные зарегистрированным пользователям действия
  • Ограничение скорости
  • Маркеры CSRF

Кстати, я предполагаю, что вы говорите о защите от быстрого вызова конечной точки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...