我正在努力在 PHP 上构建基于 API 的体系结构。
我想确保尝试使用不同 API 密钥使用我的 API 的客户端是授权客户端。例如,API 密钥“ABCD1234”分配给域“example.com”。如果域“fraud.com”尝试使用此 API 密钥,他们应该无法使用该 API。如何在 API 端实现此检查?
根据我到目前为止所看到的,客户很容易将引荐来源标头传递给“伪造”它的真实身份。
另外我还依稀记得 Google Maps 刚推出 API 时,他们实现了类似的技术,只有授权的 URL 才能使用相应的 API Key。所以这似乎不是不可能的。
任何帮助/方向将不胜感激。
谢谢,
-安全