如何在网站上安全的谷歌地图api密钥

How to google maps api keys safe on website

本文关键字:谷歌地图 api 密钥 安全 网站      更新时间:2023-09-26

我在我的网站上使用谷歌地图api,并想使用我的api密钥,但我对如何保持它的安全感到困惑。我知道我可以将实际的键硬编码到index。html

<!DOCTYPE html>
<html>
<head>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&key=HARDCODED_KEY"></script>

但是,当任何人查看网站的源代码时,都可以看到它。如果有人使用调试工具(如Firebug)查看站点,我也不希望它显示在DOM中。

我假设有一种方法可以将它存储在一个单独的文件中(可能在我的html/目录之外),我可以来源。如果有人能提供一个例子或评论这种方法是否相对安全,我将非常感谢帮助。我发现了关于这个话题的其他帖子,但没有一个适用于这个(相对简单的)情况。

只需设置引用,如文档中所述:

防止其他应用程序使用您的密钥并使用您的配额,您可以限制可以使用API密钥的IP地址发送请求:

访问Google开发者控制台并登录您的Google帐户。

选择在您签名时为您创建的项目向上项目名称将以Google Maps API for Work开头。

在左侧的侧边栏中,选择Credentials。

找到您正在使用的密钥在"公共API访问"标题下,单击"编辑允许的ip"。

输入接收您的密钥的IP地址,每行一个。您也可以使用CIDR符号输入子网(例如192.168.0.0/22)。

您也可以在设置推荐后提出这个问题,我想你会发现它很有用。

将API存储在文本文件中。然后,使用jQuery $.get()检索它。确保配置你的。htaccess文件不允许直接访问TXT文件。

要动态加载Google Maps API,在需要地图之前,在代码中使用$.getScript()

Google还建议通过推荐和/或IP地址限制API的使用。