1

我们正在使用映射到 python flask api 的 Azure API 管理。我们正在进行 javascript ajax 调用(Azure API)。我们现在将订阅密钥直接放在 ajax 调用的查询参数中。

现在任何有权访问此密钥的人(通过按开发人员工具或查看源代码)也可以访问 api。

有没有办法在 ajax 调用中隐藏订阅密钥?

4

3 回答 3

1

您可以在请求中使用 JSON Web Token (JWT),它具有签名和过期时间。

于 2016-01-26T18:56:13.190 回答
0

似乎我们无法在 JS 代码中隐藏订阅 ID。因为 JS 代码应该用这个 key 发送 http 请求,我们可以用 Fiddler 获取订阅 ID。另一种方法是,我们可以在服务器端发送这个 http 请求。我们可以使用Ajax调用服务端方法,服务端调用Azure管理API我们可以将订阅写入服务端。使用这种方法,其他人在 JS 代码中是看不到订阅 ID 的。

于 2016-01-28T03:58:58.903 回答
-1

你可以利用 Azure Key Vault,它有助于保护云应用程序和服务使用的加密密钥和机密,以满足你的要求。您可以参考什么是 Azure Key Vault?更多细节,您还可以在本文的表格中找到几个经典场景。

目前,提供了适用于 Azure Key Vault 的 .Net 和 Node.js SDK。您可以利用Microsoft Azure SDK for Node.js - Key Vault Management将 Key Vault 集成到 Node.js 中,或者您可能需要通过Python 应用程序中的REST API实现

于 2016-01-26T07:08:38.890 回答