2011-09-17 128 views
4

我正在使用某个Python代码中的API密钥,我正在分发这些代码。此API密钥适用于Google地图。在分发这个API密钥方面是否存在任何安全问题?如果是,如何最好地隐藏这个密钥?隐藏代码中的API密钥(Python)

+0

如何获得python的API密钥?我一直在寻找它 – ealeon

回答

1

你不能隐藏这个。你的程序需要访问它,如果他/她真的想知道API密钥,黑客就会简单地使用像调试器,虚拟机或修改过的Python实现的工具。

我认为无论如何都不需要隐藏Google Maps API密钥,因为当API正在使用时,网页的源代码中也会包含此密钥。您应该参考文档或获取密钥的页面,查看它是否是私钥。

0

如果您要为“超级用户”使用Google地图提供工具,那么期待他们提供自己的Google API密钥是合理的。如果这不是您的用户的选择,您将需要有一个Web服务,您的应用程序访问作为代理,以便您的私钥不会暴露。如果适用,您仍然必须设计一种认证用户的方法。

0

您可以用各种方式混淆密钥,但不值得付出努力。混淆是一种保护信息的弱方法,在这种情况下,信息的安全性无论如何不是特别关键。

API密钥的重点在很大程度上使得API供应商(Google,在这里)可以监视,限制和撤销应用程序对其服务的使用。它意味着是私人的,你不应该不小心或有意地分享它,但如果有人得到它,它不是世界末日。

5

没有必要将Google API密钥绑定到您的网域,以便在使用引荐网址时对其进行检查。

You can read more about how it works here

有关部分

注意,当网站使用该地址访问的http://www.mygooglemapssite.com/一键才会被接受。如果通过IP地址访问站点(例如http://10.1.2.3/)或通过使用DNS CNAME记录向www.mygooglemapssite.com别名的主机名访问该站点,则不会被接受。

他们的版本3 API现在不需要密钥。

http://code.google.com/apis/maps/documentation/javascript/

0

的谷歌地图API密钥只适用于第2版,这已经2010年5月被正式弃用强烈建议您使用第3版的API,而不是,这是更好的,并且没有必要一个API密钥。