2011-09-17 150 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密鑰。