【发布时间】:2020-08-07 18:51:58
【问题描述】:
我一直在尝试弄清楚 Google Cloud 是否有一种“撬棍”限制 API 使用的机制,作为一种安全措施。
我担心的情况是,假设我在服务器上有一个 API 密钥文件,黑客窃取了它并将其插入他们的系统(为了一些模糊的骗局)正在运行无限数量的翻译尽快提出要求。然后我收到一张 25,000 美元的账单。我没有看到任何机制可以真正防止这种情况发生。
我可以限制该密钥的角色,但如果黑客的兴趣在于我用于我的项目的同一个 API,那将无济于事。我可以设置计费限额,但这只是给我发送一封电子邮件,而且我不是一个注意到收到电子邮件的人,所以实际上我需要几天时间才能意识到这已经发生了。
我可以设置配额,但仪表板中的所有配额似乎都是每分钟或每天的限制。我需要每个月的配额,但我看不出有什么办法。我只是遗漏了什么,还是 Google 根本没有为此提供任何选项?
我知道“不要让您的 API 密钥被泄露”可能是常识,但出于多种原因,这对于我的用例来说是不可接受的,因此我没有兴趣讨论它。谢谢!
编辑:我应该注意,Google 的 documentation 说“您可以设置每天的请求上限” - 但该页面上没有关于如何执行此操作的说明,而且我看不到任何机制。我不想要每天的上限,我想要每月的上限,但如果我能找到一个,我会采取每天的上限。这些是我看到的 Cloud Vision 的唯一配额,例如:
【问题讨论】:
-
所以,在我的工作中,我尝试解决这些问题的方法是 - 将角色限制为键,然后提醒账单支付,您可以根据自己的使用百分比设置阈值,但谷歌有这是每月配额。尽量不要把它放在服务器上,一旦使用就删除它或创建某种密钥轮换机制。
-
这曾经可以通过 AppEngine 实现,您可以在其中设置每天的硬性支出上限。但是,此功能已被删除,因此我怀疑是否有支持此用例的计划。