如何加密REST API身份验证的密码

时间:2015-05-12 00:48:26

标签: javascript rest restful-authentication

有很多关于如何保护REST API访问的资源,但这不是我想要的。我将使用提供的REST API与基本身份验证(这不能轻易更改:()。

显然我可以选择:

var requestOptions = {
    hostname: "rest.api.url.com",
    path: "/path/",
    auth: "username:password"
};

var req = http.request(requestOptions, function (res) {
    // some code here
    });

有没有办法不在脚本中以纯文本形式提供密码?

2 个答案:

答案 0 :(得分:2)

  

有没有办法在[JavaScript]中以纯文本形式提供密码?

客户端JavaScript总是容易被篡改和修改,包括撤消任何加密的#34;您存储在客户端脚本中的密码。您可以随意模糊代码,但如果密码在客户端脚本中以任何形式出现,则可以访问。

  

我将使用提供的REST API和基本身份验证(这不能轻易更改

由于您无法将REST API更改为使用令牌或SSL,因此我们想到的一个解决方案是在服务器和REST API之间建立中介 > use SSL。与服务器上的某些服务器端脚本安全通信,并使此脚本代理来自REST API的请求和响应。

资源:

答案 1 :(得分:0)

您可以使用您喜欢的任何加密对其进行编码,但您的加密技术仍将存在于客户端。这里要做的正确的事情是设置SSL证书,以便使用证书加密您的请求。

此外,为了减少在您周围发送密码的需要,您可能希望查看使用某种基于令牌的身份验证。