如何在Ionic/Cordova应用程序中保护我的Google Maps Javascript V3 API密钥?

seb*_*bbo 5 javascript google-maps google-maps-api-3 cordova ionic

我目前正在开发一个Ionic app,我有一个嵌入式Google Map.Google Maps V3 API建议使用API​​密钥来跟踪使用情况.问题是,当我为浏览器使用创建API密钥时,我只能通过指定引用来保护我的API密钥.现在我在移动设备上没有推荐人,那么我该怎么做才能避免其他人也可以使用我的API密钥呢?

Sha*_*ner 3

在我看来,你有两种选择:

  1. 您根本无法保护它,因为为了让某人获得密钥,他们需要从您的应用程序中提取它。在大多数情况下,即使有人获得了密钥,他们也怀疑他们是否会将其用于任何恶意行为,因为他们只能获得自己的密钥。您必须逐个项目评估这种风险,并决定您是否可以容忍。
  2. 第二个选项是将其固定到特定的引荐来源网址,然后欺骗设备上的 Web 视图所使用的引荐来源网址。关于如何执行此操作,有一些有关堆栈溢出的示例。请参阅在嵌入式 UIWebView 中指定 HTTP 引用地址

无论哪种方式,某人仍然有可能获得您的密钥并用它代表您提出请求。即使您走那条路线,他们也可以通过自己欺骗引荐来源网址来做到这一点,因为它是客户端浏览器提供的标头。