Cloud Storage

Documentation

Spec

オブジェクトのバージョニング

オブジェクトのバージョニング | Cloud Storage | Google Cloud

CLI操作

# バージョニングのON/OFF確認
gsutil versioning get gs://[BUCKET_NAME]
# バージョニングの有効化
gsutil versioning set on gs://[BUCKET_NAME]
# バージョニングの無効化
gsutil versioning set off gs://[BUCKET_NAME]

# バージョン化されたオブジェクトの一覧表示
gsutil ls -a gs://[BUCKET_NAME]

# 非現行バージョンのオブジェクトの削除
gsutil rm gs://[BUCKET_NAME]/[OBJECT_NAME]#[GENERATION_NUMBER]

アクセス制御

https://cloud.google.com/storage/docs/access-control

バケットのアクセス制御のタイプが2つある:

  • 均一アクセス(Uniform) … 2020-10-05時点の推奨
    • IAMのみで権限管理する。IAM Coditionsを使える
  • きめ細かいアクセス(Fine-grained)
    • レガシー
    • IAMとACLを併用して権限管理できる。Amazon S3と相互運用できるようにデザインされている

IAM

Cloud Identity and Access Management | Cloud Storage | Google Cloud

関連項目:

メンバータイプ

Cloud Storageバケットのみに適用できる特別なメンバータイプがある:

  • projectOwner:[PROJECT_ID]
  • projectEditor:[PROJECT_ID]
  • projectViewer:[PROJECT_ID]

いずれかにロールを付与すると、指定したプロジェクトに対して指定された権限を持つすべてのメンバーが、選択されたロールを取得する。

ただし、これらの権限はコンソールや gsutil iam ch コマンドでは設定できないようだ。
gsutil iam set コマンドであれば設定することができる。

Example:

gsutil iam set policy.json gs://my-bucket