首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在客户端应用程序中保护YouTube v3 API密钥

在客户端应用程序中保护YouTube v3 API密钥
EN

Stack Overflow用户
提问于 2014-09-04 04:03:31
回答 7查看 6.2K关注 0票数 7

我正在看以下指南:https://developers.google.com/youtube/v3/getting-started

与YouTube的API交互的第一步是:

您需要一个Google帐户来访问Google开发人员控制台,请求API密钥,并注册您的应用程序。

他们继续展示一个他们使用钥匙的例子:

网址:钥匙 &part=snippet,contentDetails,statistics,status

我有一个客户端应用程序,它被许多人使用。该应用程序向YouTube的API发出搜索请求。YouTube的API的请求限制为每天5000万次。

因为它是客户端应用程序,所以我的API键被嵌入到代码中。

今天,恶意用户编写了一些脚本来最大限度地执行请求:

我想知道我有什么办法来抵御这种活动。我唯一的选择是托管服务器,通过我的服务器路由YouTube API的所有需求,并在请求太频繁时拒绝它们吗?

我真的很担心实现这样的事情。它将有效地将每个API请求的等待时间增加一倍,并向服务器征税,这似乎是不必要的,但可能是需要的。

我还有其他的选择吗?

谢谢

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2014-09-09 13:50:27

这是由于配额成本的增加,它暂时恢复了。我们将宣布未来http://apiblog.youtube.com/历史的成本变化。

票数 2
EN

Stack Overflow用户

发布于 2014-09-04 17:34:33

不要认为它是恶意用户。我认为YouTube有问题,因为我看到了我的应用程序发出的API请求也有同样的问题。

票数 4
EN

Stack Overflow用户

发布于 2014-09-04 16:37:36

您可以使用限制来保护API密钥。

使用公共API键的REFERERS属性。转到console developers -> API&Auth -> Credentials中的项目

  • 如果将键用于浏览器应用程序,则REFERERS是对域的引用。
  • 如果使用服务器密钥,则REFERERS是对IP的引用。(例如您的服务器的ip)

例如,如果您使用github.io进行应用程序的现场演示,REFERERS将指向http://user.github.io/*

您可以阅读更多的注册您的申请

  • 如果应用程序在服务器上运行,请使用服务器密钥。不要在服务器代码之外使用此键。例如,不要将其嵌入到网页中。要防止配额盗取,请限制您的密钥,以便只允许从服务器的源IP地址发出请求。
  • 如果应用程序在客户端(如web浏览器)上运行,请使用浏览器键。若要防止您的密钥被用于未经授权的网站,请只允许来自您管理的域的引用。

帮助你的屏幕:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25657111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档