借助 gcloud beta alloydb connect 命令,您可以与 AlloyDB for PostgreSQL 实例建立经过授权的加密连接。它会自动启动 AlloyDB Auth Proxy 并运行 psql 客户端工具。
在本地机器或 Cloud Shell 等环境中,使用此命令进行手动数据库管理和开发。
如需了解详情,请参阅连接概览。
准备工作
- 安装 Google Cloud CLI。
- 安装
psql客户端工具。 - 确保您的 Identity and Access Management (IAM) 主账号具有 AlloyDB Client (
roles/alloydb.client) 角色。如需了解详情,请参阅管理 IAM 身份验证。
连接到实例
如需使用默认 postgres 用户和数据库通过专用 IP 连接到实例,请运行以下命令:
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID
通过公共 IP 连接
如果您的实例启用了公共 IP 地址,您可以通过添加 --public-ip 标志来连接到该实例:
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--public-ip
使用 IAM 进行身份验证
gcloud beta alloydb connect 命令支持自动 IAM 身份验证。使用 --auto-iam-authn 标志以已登录的 gcloud CLI 用户或服务账号身份进行身份验证。
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--auto-iam-authn
如需详细了解 IAM 身份验证,请参阅 IAM 数据库身份验证。
通过 Private Service Connect 连接
如果您使用的是 Private Service Connect,请添加 --psc 标志:
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--psc
使用特定用户和数据库进行连接
如需以特定数据库用户的身份连接到特定数据库,请使用 --user 和 --database 标志:
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--user=USER_NAME \
--database=DATABASE_NAME
服务账号模拟
您可以使用模拟的服务账号来授权连接。使用模拟时,Auth 代理会使用指定服务账号的凭据来检索连接信息。
如需使用模拟的服务账号进行连接,请添加 --impersonate-service-account 标志:
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--impersonate-service-account=SERVICE_ACCOUNT_EMAIL
Auth 代理使用模拟的服务账号检索连接信息。但是,它不会自动向数据库进行身份验证。
如需同时以模拟服务账号身份向数据库进行身份验证,请添加 --auto-iam-authn 标志。模拟服务账号必须是数据库中的用户。
gcloud beta alloydb connect INSTANCE_ID \
--cluster=CLUSTER_ID \
--region=REGION_ID \
--impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
--auto-iam-authn
后续步骤
- 了解连接概览。
- 了解如何选择连接选项。
- 详细了解 AlloyDB Auth Proxy。