【问题标题】:How to host a private static web site in Google Cloud Storage?如何在 Google Cloud Storage 中托管私有静态网站?
【发布时间】:2021-01-21 03:56:09
【问题描述】:

我想托管一个仅包含 HTML/CSS/JS 以及 HTML 页面之间的一些相互链接的 静态 Web 应用程序。

如果我将存储桶设为公开,我就可以成功访问该应用程序,但我不想公开该应用程序并且我希望只有经过身份验证的用户(组织的人员)可以访问该应用。

当我将其设为私有时,CSS/JS 将停止工作,因为 index.html 由于权限问题而无法访问这些文件。

如何做到这一点?

【问题讨论】:

  • AFAIK 这是不可能的。静态网站功能要求对象是公开的。任何需要授权的对象都会返回 403 错误。

标签: google-cloud-platform google-cloud-storage


【解决方案1】:

正如 John 所说,您无法通过 Cloud Storage 实现这一目标。不过,您可以将 App Engine 标准与 IAP 结合使用。

为此,请获取您的资源并使用此内容构建一个 app.yaml 文件

runtime: python3

handlers:
- url: /stylesheets
  static_dir: stylesheets

- url: /statics
  static_dir: statics

- url: /.*
  script: index.html

然后部署它gcloud app deploy

然后,转到identity aware proxy page 并为您的 App Engine 服务激活 IAP。

最后,您可以选择您的 App Engine 服务,进入右侧的信息面板并点击添加成员。您可以添加单个用户、组或公司。 (所有人都需要有一个 Google 帐户。例如与 Google Workspace 公司合作良好);并添加角色 IAP 保护的 Web 应用用户

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-18
    • 2019-03-02
    • 2021-01-16
    • 2023-03-23
    • 2018-03-16
    • 2019-12-09
    • 2016-08-15
    相关资源
    最近更新 更多