gpt4 book ai didi

php - 在应用程序中实现(安全的)Api key

转载 作者:行者123 更新时间:2023-12-02 22:42:27 24 4
gpt4 key购买 nike

我编写了一个 Web 应用程序,我希望允许其他开发人员从中获取信息。

我工作的服务器不是那么好,不能处理那么多请求,所以我们的想法是生成 API key 并将其分配给每个想要查询我们信息的人。使用 Api key ,我可以限制每日请求,或许还可以收集一些统计数据,看看哪些信息对其他开发人员真正有用。

问题是,我担心它的安全方面。由于 Api key 将被发送到我们的服务器(通过 GET/POST 等),有人可以使用 wireshark 嗅探请求并毫不费力地获取开发人员 API key ,对吧?

我想生成一个 key 和一个 API key 。然后我可以指示其他开发人员将它们连接起来并将它的哈希发送到我们的 API。然后我会验证哈希是否有效并允许请求......但是同样的问题会持续存在。黑客仍然可以嗅探该哈希并代表其他开发者的应用发出请求。

所以我的问题是

  • 我怎样才能避免这个问题?
  • 或者更好的是,我的担心是否有效?这是一个真正的问题吗?
  • 是否有更好、更安全的方式来允许访问我的信息,而不会让其他开发人员感到太复杂?

大家怎么看?

最佳答案

我认为您正在尝试在这里解决一堆不同的问题。

如果您的目标是限制对服务器的请求数量,您应该创建一个限制机制。这很重要,但我将其基于 IP 地址而不是许可证 key - 单个许可用户可能会用大量请求淹没您的系统。您可以在不实现许可机制的情况下通过 IP 地址进行限制。

如果你想创建一个许可方案,你需要了解密码学等 - 这是一个非常重要的问题。例如,您如何阻止合法用户与所有 friend 共享他们的许可证 key ?您如何阻止黑客窃取您的 key 并与他的所有 friend 共享?

对此有多种解决方案 - 它们都会给您的用户带来一定程度的痛苦。例如,您可以在 HTTPS 上运行您的服务;这会停止监听,但会降低性能。您可以为您的服务发行“ token ”,这些 token 在使用一定次数后会过期;获取新 token 需要加密交换(这可能会检查您的 IP 地址)。您可能需要“挑战/响应”类型的逻辑(包括 IP 地址验证)。所有这些步骤都会让您的用户生活更加艰难;他们可能不会感谢您为他们必须做的额外工作。

关于php - 在应用程序中实现(安全的)Api key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10602170/

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