服务器之间安全的通信方式

时间:2018-06-26 12:16:40

标签: node.js https get request

我们正在传递秘密密钥,以对启用https的网站之间的GET请求进行身份验证。以下哪种方式更安全:

GET /auth?secret=8727n2i752gns982jsn'

只有2台服务器知道该秘密密钥。

或者我们应该将标头设置如下:

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

哪种方法更安全?为什么?

2 个答案:

答案 0 :(得分:2)

理想情况下,发送密钥不是一个好选择。但是,如果有最需要的话,我建议您在以下标题中发送密钥:

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

如果将“秘密密钥”提供给浏览器,则不再是秘密了。浏览器中的Javascript太开放了,无法真正保留密钥机密。

由于它不那么可见,但是任何人都可以嗅探它,因为它只是JavaScript。

以下是一些可以启发您的链接:

答案 1 :(得分:1)

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

这是通过标头传递令牌的标准化方法。安全部分实际上更多地是关于令牌的创建。

“载体”是您使用的授权类型。可能是“基本”等 即

'Authorization': 'Basic s87ehwdiw8y3dhj'