VPC Service Controls で Compliance Manager を使用する

VPC Service Controls サービス境界内で Compliance Manager を有効にする場合は、下り(外向き)ルールと上り(内向き)ルールを構成する必要があります。

次のサンプル上り(内向き)ルールと下り(外向き)ルールは、ビジネス要件に合わせて調整できます。

制限事項については、サポートされているプロダクトと制限事項をご覧ください。

始める前に

  1. 組織レベルで VPC Service Controls を構成するために必要なロールがあることを確認します。

  2. 組織またはフォルダに存在するリソースへのアクセスを確保するには、組織レベルでコンプライアンス マネージャー管理者(roles/cloudsecuritycompliance.admin)ロールを付与します。

  3. 次のことを確認してください。

    • Cloud Security Compliance サービス エージェントのメールアドレス(service-org-ORGANIZATION_ID@gcp-sa-csc-hpsa.iam.gserviceaccount.com)。

    • コンプライアンス マネージャー ユーザーのメールアドレス。コンプライアンス マネージャーのユーザーは、コンプライアンス マネージャーを管理し、監査などのアクティビティを実行するユーザーです。

  4. Cloud Security Compliance サービス エージェントに、監査を完了するために必要な権限が境界内に付与されていることを確認します。詳細については、コンプライアンス マネージャーで環境を監査するをご覧ください。

上り(内向き)ルールと下り(外向き)ルールを追加する

  1. 次の上り(内向き)ルールを追加します。

    - ingressFrom:
      identities:
      - user: USER_EMAIL_ADDRESS
      sources:
          - accessLevel: "*"
      ingressTo:
        operations:
          - serviceName: securitycenter.googleapis.com
            methodSelectors:
              - method: "*"
        resources: "*"
    

    USER_EMAIL_ADDRESS は、コンプライアンス マネージャー ユーザーのメールアドレスに置き換えます。

  2. 次の上り(内向き)ルールを追加して、コンプライアンス マネージャーが Google Cloud 組織のリソースをモニタリングして監査できるようにします。

    - ingressFrom:
      identities:
      - user: USER_EMAIL_ADDRESS
      sources:
          - accessLevel: "*"
      ingressTo:
        operations:
          - serviceName: cloudsecuritycompliance.googleapis.com
            methodSelectors:
              - method: "*"
        resources: "*"
    

    USER_EMAIL_ADDRESS は、コンプライアンス マネージャー ユーザーのメールアドレスに置き換えます。

  3. プロジェクトの監査を実行するように、次の上り(内向き)ルールを構成します。

    - ingressFrom:
      identities:
      - serviceAccount: COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS
      - user: USER_EMAIL_ADDRESS
      sources:
          - accessLevel: "*"
      ingressTo:
        operations:
          - serviceName: cloudasset.googleapis.com
            methodSelectors:
              - method: "*"
        resources: "*"
    

    次のように置き換えます。

    • USER_EMAIL_ADDRESS: コンプライアンス マネージャー ユーザーのメールアドレス。

    • COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS: Cloud Security Compliance サービス エージェントのメールアドレス。

  4. フォルダの監査を実行するように次の上り(内向き)ルールを構成します。

    - ingressFrom:
      identities:
      - serviceAccount: COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS
      - user: USER_EMAIL_ADDRESS
      sources:
          - accessLevel: "*"
      ingressTo:
        operations:
            - serviceName: "*"
        resources: "*"
    

    次のように置き換えます。

    • USER_EMAIL_ADDRESS: コンプライアンス マネージャー ユーザーのメールアドレス。

    • COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS: Cloud Security Compliance サービス エージェントのメールアドレス。

    フォルダ内のプロジェクトのすべてのリソースの監査を許可するには、広範なアクセス権が必要です。

  5. 登録された Cloud Storage バケットが境界内にある場合に監査を実行するように、次の上り(内向き)ルールを構成します。

    - ingressFrom:
      identities:
      - serviceAccount: COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS
      - user: USER_EMAIL_ADDRESS
      sources:
          - accessLevel: "*"
      ingressTo:
        operations:
            - serviceName: storage.googleapis.com
              methodSelectors:
                - method: google.storage.buckets.getIamPolicy
                - method: google.storage.buckets.testIamPermissions
                - method: google.storage.objects.getIamPolicy
                - method: google.storage.buckets.setIamPolicy
                - method: google.storage.objects.setIamPolicy
                - method: google.storage.objects.create
                - method: google.storage.objects.get
      resources: "*"
    

    次のように置き換えます。

    • USER_EMAIL_ADDRESS: コンプライアンス マネージャー ユーザーのメールアドレス。

    • COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS: Cloud Security Compliance サービス エージェントのメールアドレス。

  6. 登録された Cloud Storage バケットが境界の内側にある場合に監査を実行するように、次の下り(外向き)ルールを構成します。

    - egressFrom:
      identities:
        - serviceAccount: COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS
          - user: USER_EMAIL_ADDRESS
        sources:
          - accessLevel: "*"
      egressTo:
        operations:
            - serviceName: storage.googleapis.com
              methodSelectors:
                - method: google.storage.buckets.getIamPolicy
                - method: google.storage.buckets.testIamPermissions
                - method: google.storage.objects.getIamPolicy
                - method: google.storage.buckets.setIamPolicy
                - method: google.storage.objects.setIamPolicy
                - method: google.storage.objects.create
                - method: google.storage.objects.get
        resources: "*"
    

    次のように置き換えます。

    • USER_EMAIL_ADDRESS: コンプライアンス マネージャー ユーザーのメールアドレス。

    • COMPLIANCE_MANAGER_SA_EMAIL_ADDRESS: Cloud Security Compliance サービス エージェントのメールアドレス。

次のステップ