如何设置只能从 App Engine 标准环境连接的 Google CloudSQL 用户
How Can I Setup a Google CloudSQL user that can connect only from App Engine Standard Environment
我有一个 Java JSP 应用程序使用 JPA 连接到 CloudSQL。我面临的问题是我无法设置只允许从 App Engine 访问的 CloudSQL 用户。即使在将用户设置为仅通过 CloudSQL 代理连接之后,它仍然会失败。当我把所有IP都加入白名单后,用户才能访问数据库。
我终于成功了。问题是我使用了错误的 jdbc 驱动程序。为了实现我想要的要求,我必须配置一个 cloudsqlproxy 用户并使用下面的连接字符串和驱动程序让它在 App Engine 中工作:
<property name="javax.persistence.jdbc.url" value="jdbc:google:mysql://instance-name/database"/>
<property name="javax.persistence.jdbc.user" value="user"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.GoogleDriver"/>
注意: 以上仅在部署到 App Engine 后有效。您可以使用标准的非Google jdbc 驱动程序在您的本地机器上进行测试
我有一个 Java JSP 应用程序使用 JPA 连接到 CloudSQL。我面临的问题是我无法设置只允许从 App Engine 访问的 CloudSQL 用户。即使在将用户设置为仅通过 CloudSQL 代理连接之后,它仍然会失败。当我把所有IP都加入白名单后,用户才能访问数据库。
我终于成功了。问题是我使用了错误的 jdbc 驱动程序。为了实现我想要的要求,我必须配置一个 cloudsqlproxy 用户并使用下面的连接字符串和驱动程序让它在 App Engine 中工作:
<property name="javax.persistence.jdbc.url" value="jdbc:google:mysql://instance-name/database"/>
<property name="javax.persistence.jdbc.user" value="user"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.GoogleDriver"/>
注意: 以上仅在部署到 App Engine 后有效。您可以使用标准的非Google jdbc 驱动程序在您的本地机器上进行测试