terraform google cloud storage
v8.0.1
此模組可以輕鬆建立一個或多個GCS儲存桶,並將其基本權限指派給任意使用者。
此模組將創建/觸發的資源/服務/啟動/刪除是:
如果您只想建立單一儲存桶,請考慮使用簡單的儲存桶子模組。
此模組適用於 Terraform 0.13+ 並使用 Terraform 1.0+ 進行測試。如果您發現使用 Terraform >=0.13 不相容,請提出問題。如果您尚未升級且需要此模組的 Terraform 0.12.x 相容版本,則適用於 Terraform 0.12.x 的最新發布版本是 v1.7.1。
該模組的基本用法如下:
module "gcs_buckets" {
source = " terraform-google-modules/cloud-storage/google "
version = " ~> 8.0 "
project_id = " <PROJECT ID> "
names = [ " first " , " second " ]
prefix = " my-unique-prefix "
set_admin_roles = true
admins = [ " group:[email protected] " ]
versioning = {
first = true
}
bucket_admins = {
second = " user:[email protected],user:[email protected] "
}
}
功能範例包含在範例目錄中。
姓名 | 描述 | 類型 | 預設 | 必需的 |
---|---|---|---|---|
管理員 | 將被授予所有儲存桶上的 Roles/storage.objectAdmin 的 IAM 類型成員。 | list(string) | [] | 不 |
自動分類 | 小寫無前綴儲存桶名稱的可選映射 => 布林值,預設為 false。 | map(bool) | {} | 不 |
存儲桶管理員 | 小寫無前綴名稱的映射 => 以逗號分隔的 IAM 風格的每個儲存桶管理員。 | map(string) | {} | 不 |
儲存桶創建者 | 小寫無前綴名稱的映射 => 以逗號分隔的 IAM 風格的每個儲存桶創建者。 | map(string) | {} | 不 |
Bucket_hmac_key_admins | 小寫無前綴名稱的對應 => 以逗號分隔的 IAM 樣式每儲存桶 HMAC 金鑰管理員。 | map(string) | {} | 不 |
儲存桶生命週期規則 | 特定儲存桶的附加生命週期規則。小寫無前綴名稱映射 => 要設定的生命週期規則清單。 | 地圖(設定(對象({ | {} | 不 |
僅儲存桶策略 | 停用指定儲存桶上的臨時 ACL。預設為 true。小寫無前綴名稱映射 => 布林值 | map(bool) | {} | 不 |
存儲桶管理員 | 小寫無前綴名稱的對應 => 以逗號分隔的 IAM 風格的每儲存桶儲存管理員。 | map(string) | {} | 不 |
儲存桶查看者 | 小寫無前綴名稱的對應 => 以逗號分隔的 IAM 樣式每儲存桶檢視器。 | map(string) | {} | 不 |
科爾斯 | CORS 值的混合類型屬性的對應集。請在此處查看適當的屬性類型:https://www.terraform.io/docs/providers/google/r/storage_bucket.html#cors | set(any) | [] | 不 |
創造者 | 將被授予所有儲存桶上的 Roles/storage.objectCreators 的 IAM 風格成員。 | list(string) | [] | 不 |
自訂放置配置 | 小寫無前綴名稱的映射 => 自訂放置配置物件。格式與提供者文件中所述的相同 https://www.terraform.io/docs/providers/google/r/storage_bucket#custom_placement_config | any | {} | 不 |
基於預設事件的保留 | 對新增至特定儲存桶的新物件啟用基於事件的保留。預設為 false。小寫無前綴名稱映射 => 布林值 | map(bool) | {} | 不 |
加密金鑰名稱 | 小寫無前綴名稱 => 字串的可選映射,空字串將被忽略。 | map(string) | {} | 不 |
資料夾 | 小寫無前綴名稱映射 => 頂級資料夾物件清單。 | map(list(string)) | {} | 不 |
強制銷毀 | 小寫無前綴名稱的可選映射 => 布林值,預設為 false。 | map(bool) | {} | 不 |
hmac_key_admins | 將被授予所有儲存桶上的 Roles/storage.hmacKeyAdmin 的 IAM 類型成員。 | list(string) | [] | 不 |
hmac_service_accounts | 用於授予 GCS 存取權限的 HMAC 服務帳戶清單。 | map(string) | {} | 不 |
標籤 | 貼在桶子上的標籤 | map(string) | {} | 不 |
生命週期規則 | 要設定的生命週期規則清單。格式與提供者文件 https://www.terraform.io/docs/providers/google/r/storage_bucket.html#lifecycle_rule 中所描述的相同,但 condition.matches_storage_class 應該是逗號分隔的字串。 | 設定(對象({ | [] | 不 |
地點 | 鏟鬥位置。 | string | "EU" | 不 |
記錄 | 小寫無前綴名稱的對應 => 儲存桶日誌記錄配置物件。格式與提供者文件中所述的相同 https://www.terraform.io/docs/providers/google/r/storage_bucket.html#logging | any | {} | 不 |
名字 | 儲存桶名稱後綴。 | list(string) | 不適用 | 是的 |
前綴 | 用於產生儲存桶名稱的前綴。 | string | "" | 不 |
專案ID | 儲存桶項目 ID。 | string | 不適用 | 是的 |
公共訪問預防 | 阻止公眾存取儲存桶。可接受的值是繼承或強制執行的。如果繼承,則僅當儲存桶受公共存取阻止組織策略約束時,此儲存桶才會使用公共存取封鎖。 | string | "inherited" | 不 |
隨機後綴 | 為所有儲存桶名稱添加相同但隨機的 4 個字元後綴 | bool | false | 不 |
保留政策 | 保留策略值映射。格式與提供者文件中所述的相同 https://www.terraform.io/docs/providers/google/r/storage_bucket#retention_policy | any | {} | 不 |
設定管理員角色 | 將 Roles/storage.objectAdmin 角色授予 admins 和 bucket_admins。 | bool | false | 不 |
設定創建者角色 | 向創建者和bucket_creators授予roles/storage.objectCreator角色。 | bool | false | 不 |
set_hmac_access | 設定對 GCS 的 S3 相容存取。 | bool | false | 不 |
set_hmac_key_admin_roles | 將roles/storage.hmacKeyAdmin 角色授予hmac_key_admins 和bucket_hmac_key_admins。 | bool | false | 不 |
設定存儲管理員角色 | 將roles/storage.admin 角色授予storage_admins 和bucket_storage_admins。 | bool | false | 不 |
設定查看者角色 | 向查看者和bucket_viewers授予roles/storage.objectViewer角色。 | bool | false | 不 |
軟刪除策略 | 要套用的軟刪除策略。小寫無前綴名稱映射 => 軟刪除策略。格式與提供者文件中所述的相同 https://www.terraform.io/docs/providers/google/r/storage_bucket.html#nested_soft_delete_policy | map(any) | {} | 不 |
儲存管理員 | 將被授予所有儲存桶上的 Roles/storage.admin 的 IAM 類型成員。 | list(string) | [] | 不 |
儲存類別 | 桶存儲類。 | string | "STANDARD" | 不 |
版本控制 | 小寫無前綴名稱的可選映射 => 布林值,預設為 false。 | map(bool) | {} | 不 |
觀眾 | 將被授予所有儲存桶上的 Roles/storage.objectViewer 的 IAM 風格成員。 | list(string) | [] | 不 |
網站 | 網站價值地圖。支援的屬性:main_page_suffix、not_found_page | map(any) | {} | 不 |
姓名 | 描述 |
---|---|
apphub_service_uri | Apphub 所使用的 CAIS 樣式的 URI。 |
桶 | 桶資源(一次性使用)。 |
水桶 | 將資源儲存為清單。 |
桶映射 | 按名稱儲存資源。 |
hmac_keys | HMAC 密鑰列表。 |
姓名 | 儲存桶名稱(一次性使用)。 |
名字 | 儲存桶名稱。 |
名稱列表 | 儲存桶名稱列表。 |
網址 | 儲存桶 URL(一次性使用)。 |
網址 | 儲存桶 URL。 |
網址列表 | 儲存桶 URL 清單。 |
這些部分描述了使用此模組的要求。
以下相依性必須可用:
必須使用具有以下角色的使用者或服務帳戶憑證來配置此模組的資源:
roles/storage.admin
專案工廠模組和 IAM 模組可以組合使用,以提供應用了必要角色的服務帳戶。
必須使用啟用了以下 API 的專案來託管該模組的資源:
storage-api.googleapis.com
專案工廠模組可用於配置啟用必要 API 的專案。
有關為本模組做出貢獻的信息,請參閱貢獻指南。