GoogleCloudPlatform/guacamole-on-gcp

GitHub: GoogleCloudPlatform/guacamole-on-gcp

在 Google Cloud 上通过 Terraform 一键部署 Apache Guacamole,并提供 IAP 身份认证集成插件,实现安全的无客户端远程桌面访问。

Stars: 19 | Forks: 7

# Google Cloud Platform 上的 Apache Guacamole 请参阅 [Google Cloud Architecture Center](https://cloud.google.com/architecture/deploy-guacamole-gke) 上的教程。 这不是官方支持的 Google 产品。 Guacamole 提供了一个扩展框架——guacamole-ext——可用于提供自定义身份验证机制。guacamole-auth-googleiap 扩展与数据库身份验证机制(Google CloudSQL)结合使用,按以下顺序应用: * guacamole-auth-googleiap(自定义服务)——验证由 IAP 传递的 Json Web Token (JWT)。它通过加密方式验证此 token 并确保其有效性。该身份信息从 JWT 中提取,并作为用户名传递给 Guacamole 身份验证链中的下一个机制。 * guacamole-auth-jdbc-mysql(内置服务)——此服务信任由 guacamole-auth-googleiap 传递的身份,并将其与数据库中的信息进行比较以执行授权,同时存储有关该身份的配置文件信息。 为了使扩展程序能够正确验证 JWT,它会检查 IAP 是否为 Guacamole 颁发了该 token。扩展程序通过检查 JWT 的头部和 payload,并验证 token 的数字签名来完成此操作。有关 IAP token 验证的更多信息,请参阅“使用签名头部保护您的应用”。 为了验证 token 是否为 Guacamole 颁发,扩展程序将 token 的 aud(Audience)声明与由 GKE 创建的 Guacamole 负载均衡器配置中的 backendServiceId 进行比较。扩展程序使用 Google Cloud API 以编程方式从您的项目中检索后端服务 ID,并使用您之前配置的 GKE Workload Identity 向 API 进行身份验证。
标签:Apache Guacamole, ECS, GCP, IAP, JS文件枚举, Terraform, 域名枚举, 基础设施自动化, 请求拦截, 远程桌面