Безопасный способ общения между серверами - PullRequest
0 голосов
/ 26 июня 2018

Мы передаем секретные ключи для аутентификации запросов GET между веб-сайтами с поддержкой https. Какой из следующих способов более безопасен:

GET /auth?secret=8727n2i752gns982jsn'

Только 2 сервера знают эти секретные ключи.

Или мы должны установить заголовки следующим образом:

request({
    url: '/auth',
    headers: {
        'secretKey': 's87ehwdiw8y3dhj'
    }
});

Какой метод более безопасен и почему?

Ответы [ 2 ]

0 голосов
/ 26 июня 2018

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

request({
    url: '/auth',
    headers: {
        'secretKey': 's87ehwdiw8y3dhj'
    }
});

Если вы дадите «секретный ключ» браузеру, он больше не будет секретом. Javascript в браузере слишком открыт, чтобы действительно держать ключ в секрете.

Поскольку он менее заметен, его может прослушать кто угодно, так как это всего лишь javascript.

Вот несколько ссылок, чтобы просветить вас больше:

0 голосов
/ 26 июня 2018
request({
    url: '/auth',
    headers: {
        'Authorization': 'Bearer s87ehwdiw8y3dhj'
    }
});

Это стандартный способ передачи токенов через заголовок. Часть безопасности действительно больше касается создания вашего токена.

«Носитель» - это тип авторизации, который вы используете. Это может быть «Basic» и т. Д. то есть

'Authorization': 'Basic s87ehwdiw8y3dhj'
...