Cloud Storage の組織ポリシーの設定

このページでは、Cloud Storage 固有の組織ポリシーをプロジェクト レベル以上で設定する方法を説明します。これは、組織全体のバケット設定を管理するのに役立ちます。Cloud Storage には、現在利用可能な組織ポリシーが 2 つあります。1 つはバケットロックの保持ポリシーの使用を強制するためのポリシー、もう 1 つはバケット ポリシーのみの使用を強制するためのポリシーです。

保持ポリシーの制約を設定する

以下の手順で、組織全体のバケットを適切な保持ポリシーで作成するようにします。

gcloud

  1. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.retentionPolicySeconds",
        "listPolicy": {
          "allowedValues": [SET_OF_TIMES_IN_SECONDS],
          "inheritFromParent": "[BOOLEAN]"
        }
      }

    次のように、制約には複数の値を指定できます。

    "allowedValues": [ "100", "200", "1000" ]
  2. gcloud beta resource-manager org-policies set-policy コマンドを使用します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    gcloud beta resource-manager org-policies set-policy [JSON_FILE_NAME].json --[RESOURCE_TYPE]=[RESOURCE_NAME]

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。
  2. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.retentionPolicySeconds",
        "listPolicy": {
          "allowedValues": [SET_OF_TIMES_IN_SECONDS],
          "inheritFromParent": "[BOOLEAN]"
        }
      }

    次のように、制約には複数の値を指定できます。

    "allowedValues": [ "100", "200", "1000" ]
  3. cURL を使用して、JSON API を POST リクエストで呼び出します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -H "Content-Type: application/json" \
    "https://cloudresourcemanager.googleapis.com/v1/[RESOURCE_TYPE]/[RESOURCE_ID]:setOrgPolicy"

バケット ポリシーのみの制約を設定する

以下の手順で、組織全体でバケット ポリシーのみを有効にしてバケットを作成し、既存のバケットでバケット ポリシーのみを無効にしないようにします。

gcloud

  1. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.bucketPolicyOnly",
        "booleanPolicy": {
          "enforced": "[BOOLEAN]"
        }
      }

  2. gcloud beta resource-manager org-policies set-policy コマンドを使用します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    gcloud beta resource-manager org-policies set-policy [JSON_FILE_NAME].json --[RESOURCE_TYPE]=[RESOURCE_NAME]

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。
  2. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.bucketPolicyOnly",
        "booleanPolicy": {
          "enforced": "[BOOLEAN]"
        }
      }
  3. cURL を使用して、JSON API を POST リクエストで呼び出します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -H "Content-Type: application/json" \
    "https://cloudresourcemanager.googleapis.com/v1/[RESOURCE_TYPE]/[RESOURCE_ID]:setOrgPolicy"

HMAC キーの作成を無効にする

HMAC キーが組織内のサービス アカウントに対して作成されないようにするには:

gcloud

  1. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.disableServiceAccountHmacKeyCreation",
        "booleanPolicy": {
          "enforced": "[BOOLEAN]"
        }
      }

  2. gcloud beta resource-manager org-policies set-policy コマンドを使用します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    gcloud beta resource-manager org-policies set-policy [JSON_FILE_NAME].json --[RESOURCE_TYPE]=[RESOURCE_NAME]

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。
  2. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "constraints/storage.disableServiceAccountHmacKeyCreation",
        "booleanPolicy": {
          "enforced": "[BOOLEAN]"
        }
      }
  3. cURL を使用して、JSON API を POST リクエストで呼び出します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -H "Content-Type: application/json" \
    "https://cloudresourcemanager.googleapis.com/v1/[RESOURCE_TYPE]/[RESOURCE_ID]:setOrgPolicy"

組織ポリシーの制約を削除する

以下の手順で、既存の組織ポリシーの制約を削除します。

gcloud

  1. gcloud beta resource-manager org-policies delete コマンドを使用します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    gcloud beta resource-manager org-policies delete [CONSTAINT_NAME] --[RESOURCE_TYPE]=[RESOURCE_NAME]

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を構成します。
  2. 次の情報を含む .json ファイルを作成します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    {
        "constraint": "[CONSTRAINT_NAME]",
      }
  3. cURL を使用して、JSON API を POST リクエストで呼び出します。[VALUES_IN_BRACKETS] は適切な値に置き換えます。

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -H "Content-Type: application/json" \
    "https://cloudresourcemanager.googleapis.com/v1/[RESOURCE_TYPE]/[RESOURCE_ID]:clearOrgPolicy"

組織ポリシーを使用する際の考慮事項

  • 組織リソースを含むどのリソースにもプロジェクト レベル以上で制約を適用できます。

  • 制約 retentionPolicySecondsbucketPolicyOnly は、リソース内に新しいバケットを作成する場合だけでなく、リソース内の既存バケットに関連するパラメータを追加または更新する場合にも強制されます。

  • バケットに関連するパラメータが設定されている場合を除き、既存のバケットに制約 retentionPolicySecondsbucketPolicyOnly がさかのぼって適用されることはありません。

  • リソースに既存の HMAC キーがある場合、disableServiceAccountHmacKeyCreation 制約を有効にすると、それらのキーは引き続き存在します。

  • 保持ポリシーについては、異なるリソースレベルで複数の制約を設定すると、これらの制約は階層的に適用されます。このため、上位層のポリシーも考慮されるように、inheritFromParent フィールドを true に設定することをおすすめします。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。