【问题标题】:API key security using cgi script使用 cgi 脚本的 API 密钥安全性
【发布时间】:2021-01-27 15:46:49
【问题描述】:

我是网络开发的新手。建立一个爱好天气预报的网站。我有一个 API 密钥可以从预测服务(openweathermap)发出“GET”请求。我知道我不想将这个密钥暴露给公众。所以我目前的计划是让用户通过文本输入选择他们的位置,客户端 JavaScript 函数将此信息发送到服务器端 Perl 脚本,该脚本向预测服务发出“GET+key”请求。 Perl 脚本将预测数据返回到客户端 JavaScript 以显示在页面上。

由于 API 密钥存储在服务器端脚本中,我假设它对公众不可见。这是真的吗?我的上述方法好用吗?

【问题讨论】:

  • 是的,你是对的,如果你是从“后端”发出请求,那么没有人可以访问 headers-url,因此你的密钥。
  • 某些 API 附带与特定站点绑定的 API 密钥。 Google Analytics、Maps 和其他类似的用于跟踪的 JavaScript sn-ps 就是这样工作的。这允许您在实际上没有保密的地方使用 API 密钥。听起来这在这里行不通。因此,将其放在后端是明智之举。如果您有一个允许 CGI 的托管环境,那将很简单。您需要知道如何运行 CGI,以及如何发出请求和呈现响应。例如,您可以重新打包有效负载并将其发送出去,然后逐字发送回响应。

标签: api-key cgi-bin


【解决方案1】:

在服务器上,客户端应该看不到它。但是,您可能会做各种事情来暴露它。使用适当的传输安全性(例如 HTTPS 等),小心输出错误消息,将其存储在远离他人窥探的地方,等等。

研究各种管理机密的方法。其中一些使您甚至不知道 API 密钥是什么。

【讨论】:

    猜你喜欢
    • 2016-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 1970-01-01
    • 2011-05-18
    • 1970-01-01
    • 2017-01-30
    相关资源
    最近更新 更多