第 3 步:配置访问权限
本部分提供了有关完成 MDE 安装所需的部署后步骤的指南。
启用 GKE 集群 Filestore 驱动程序
自 1.4.0 版起,MDE GKE 集群使用 Filestore 实例来存储 JVM 堆转储,这使工程团队能够更有效地排查客户问题。由于 Terraform 限制,此插件可能无法在较低版本的 Autopilot 集群中启用。如果您发现 pod 未启动且处于 ContainerCreating 状态,则需要使用以下命令为 Filestore 启用 CSI 驱动程序:
gcloud container clusters update CLUSTER_NAME \
--update-addons=GcpFilestoreCsiDriver=ENABLED --region REGION_NAME
配置 Identity-Aware Proxy
借助 Identity-Aware Proxy (IAP),您可以安全地连接到 MDE API 和网页界面,还可以限制对 MDE 网页界面的外部访问权限,仅允许授权用户访问(如果您在部署时选择了“外部负载平衡器”选项)。
如需使用 IAP,您必须先配置 OAuth 屏幕并启用 IAP 服务 API:
在 Google Cloud 控制台中,前往 IAP,然后点击启用 API。此操作可能需要几分钟才能完成。
为 IAP 配置 OAuth 权限请求页面:
在 Google Cloud 控制台中,前往安全性 > Identity-Aware Proxy 页面,然后选择 MDE 部署项目。
如果您尚未配置项目的 OAuth 权限请求页面,系统将提示您进行配置:
- 点击配置同意屏幕。
- 选择外部用户类型,然后点击创建。
- 输入您要显示的应用名称,例如
MDE。 - 在用户支持邮箱下,选择您希望作为公开联系方式显示的邮箱。该电子邮件地址必须属于登录的用户账号,或者属于登录用户是管理员或所有者的 Google 群组。
- 前往开发者联系信息,输入您希望 Google 用于通知您有关项目变更的电子邮件地址。
- 添加任何可选详细信息。
- 点击保存。
如需稍后更改 OAuth 同意屏幕上的信息(例如产品名称或电子邮件地址),请重复上述步骤配置同意屏幕。
通过 IAP 建立 SSH 隧道
如需连接到 MDE 服务的专用 IP,您可以通过 SSH 隧道将它们通过代理进行传输,这样您就可以使用 Postman 等本地工具与 MDE API 进行交互。
准备工作
确保您已完成常规 IAP 配置步骤。
标准 MDE 部署会创建一个名为 mde-proxy 的代理虚拟机。此机器可以将传入的请求代理到 MDE API 网关或 MDE 网页界面。此虚拟机只有专用 IP,但借助 Identity-Aware Proxy (IAP) 进行 TCP 转发,您可以创建一条安全的 SSH 隧道来连接到此机器。本部分的其余内容将介绍如何配置 IAP 以将流量隧道传输到 mde-proxy,以及如何从工作站创建到该实例的隧道:
在 Google Cloud 控制台中,前往 IAP,然后点击 SSH 和 TCP 资源。
向获授权使用 IAP 连接到
mde-proxy的用户授予权限:在用户可以使用 IAP 连接到
mde-proxy之前,请按照以下说明向他们授予roles/iap.tunnelResourceAccessor角色:从列表中选择 mde-proxy。
点击右侧面板中的添加主账号。
输入要授予访问权限的主账号的电子邮件地址。
选择
IAP-secured Tunnel User角色。
使用以下命令创建通往 MDE API 的隧道:
export MDE_PROXY_ZONE=$(gcloud compute instances list --filter="mde-proxy" \ --format="value(zone)") gcloud compute ssh mde-proxy \ --zone "$MDE_PROXY_ZONE" --tunnel-through-iap \ -- -N -L 8080:api.mde.cloud.google.com:80运行命令后,您可以在
http://localhost:8080下访问 MDE API。创建通往 MDE 网页界面的隧道。
如果您在第 3 步中创建了通往 MDE API 的隧道,则可以打开一个新终端,以便稍后执行命令。连接到 MDE API 和 MDE 网页界面的 SSH 隧道可以并行运行。
export MDE_PROXY_ZONE=$(gcloud compute instances list --filter="mde-proxy" \ --format="value(zone)") gcloud compute ssh mde-proxy \ --zone "$MDE_PROXY_ZONE" --tunnel-through-iap \ -- -N -L 8081:ui.mde.cloud.google.com:80运行该命令后,即可通过
http://localhost:8081访问 MDE 网页界面。
配置对网页界面外部 HTTP 负载平衡器的访问权限
在本部分中,您将配置对使用 IAP 的 MDE 网页界面外部 HTTP 负载平衡器的访问权限。
如果您为 MDE 网页界面启用了外部 HTTP 负载平衡器,则必须使用 IAP 将应用访问权限限制为仅限授权用户。
准备工作
请确保您已满足以下前提条件:
- 您已通过 MDE 网页界面部署 MDE。
- 您已使用外部 HTTP 负载平衡器部署 MDE Web 界面。
- 您已完成常规 IAP 配置步骤。
步骤
- 在 Google Cloud 控制台中,前往 IAP。
- 点击应用。
选择
mde/mde-ui-ext-service服务。点击启用切换开关。
阅读并接受配置要求。
点击开启。此操作可能需要几分钟时间。
向获授权使用 IAP 的用户授予访问 MDE 网页界面的权限:
- 点击右侧面板中的添加主账号。
- 输入要授予访问权限的主账号的电子邮件地址。
- 选择
IAP-secured Web App User角色。
为 MDE 网页界面配置 DNS
如果您为 MDE 网页界面启用了外部 HTTP 负载均衡器,则必须将您在 input.tfvars 中分配给变量 MDE_UI_DOMAIN_NAME 的网域名的 A 记录设置为已部署的外部 HTTP 负载均衡器的 IP 地址,以完成 Google 管理的 SSL 证书的预配。
您可以使用以下命令查找外部 HTTP 负载平衡器的 IP 地址:
gcloud compute addresses list --filter="name~'.*mde-ui.*'" --format="value(address)" --global
如需详细了解如何创建 A 记录,请咨询您的 DNS 主机。