gpt4 book ai didi

php - 如何签署 Apache 服务器以便所有来自目录的请求都通过 HTTPS 并包含您的私钥?

转载 作者:行者123 更新时间:2023-11-30 18:27:50 25 4
gpt4 key购买 nike

所以我被 MintChip Challenge 录取了,但不幸的是我没有受支持的移动设备(Android、iPhone 或 Windows Phone),所以我将不得不使用 Hosted API .我打算使用 JavaScript/PHP 与 API 进行交互。唯一的问题是,当我尝试请求数据时,我得到一个 403 error意味着 API 理解我的请求但选择拒绝它。

我知道所有请求都需要 SSL 和 signing with your provided certificate .我也知道我的证书有效并且 imported to my browser正确,因为我可以通过点击任何 URL 进入托管 API 并直接查看请求,即: https://remote.mintchipchallenge.com/mintchip/info/json

所以最大的问题是,Apache Web 服务器本身是否可以像我的浏览器一样为所​​有请求签名,以启用服务器-服务器签名请求。除此之外,PHP 是否有任何库或实用程序来导入 x.509 证书并使用它签署您的请求?

我通常使用 JSONp 向 JSON API 发出客户端-服务器请求,这可以解决此需求,但可以理解的是,JSONp 被视为存在安全风险,因此不受 MintChip 支持。我也想不出任何其他 API 对每个请求都需要这种级别的安全性,通常只是 BASIC Auth 或 ws-security 之类的东西,这是不是太过分了,甚至会让事情变得更安全?一般信息问题通常不会被看好,因为我在发布之前就已经对这个问题发出了警告,但也许一些安全专家有更多关于如何签署 Apache Web 服务器的信息,对来自特定目录的所有请求强制使用 SSL,保护 key ,同时将它们存储在服务器上,通过 PHP 使用 x.509 等?感谢您的帮助。

(更新:2012-05-04,更改标题以反射(reflect)您使用私钥签署请求的事实,并且它们当然会使用您的公钥解密)

最佳答案

没有。 Apache 服务器不会向 MintChip 本身生成 API 请求,因此无法让它开始签署它不知道的请求。

直接通过客户端网络浏览器向 MintChip API 创建请求很可能是不合适的。没有什么好方法可以保证客户端无论如何都有证书。

如果您使用 curl 通过 PHP 发出 API 请求扩展,您可以在请求指定要使用的客户端证书时使用 CURLOPT_SSLCERT 选项。理想情况下,您应该将执行 API 请求的所有代码都放在一个位置(例如,mintchip_api 函数),因此无需将其应用于“源自目录的所有请求” ".

关于php - 如何签署 Apache 服务器以便所有来自目录的请求都通过 HTTPS 并包含您的私钥?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10378279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com