Amazon S3 データをプロファイリングする

このページでは、Amazon S3 の Sensitive Data Protection 検出を構成する方法について説明します。

検出サービスの詳細については、データ プロファイルをご覧ください。

この機能は、Enterprise ティアで Security Command Center を有効にしたお客様のみご利用いただけます。

始める前に

  1. Security Command Center で、Amazon Web Services(AWS)のコネクタを作成します。[Sensitive Data Protection 検出の権限を付与する] チェックボックスをオフにしないでください。Sensitive Data Protection は、Amazon S3 データをプロファイリングするためにこれらの権限を必要とします。

    [機密データの保護の検出に権限を付与する] が選択されていないコネクタがすでにある場合は、既存の AWS コネクタに機密データ検出の権限を付与するをご覧ください。

  2. 組織レベルでデータ プロファイルを構成するために必要な IAM 権限があることを確認します。

    組織管理者(roles/resourcemanager.organizationAdmin)またはセキュリティ管理者(roles/iam.securityAdmin)のロールを付与されていなくても、スキャン構成を作成できます。ただし、スキャン構成を作成した後、これらのいずれかのロールを持つユーザーが、サービス エージェントにデータ プロファイリングのアクセス権を付与する必要があります。

  3. global リージョンまたは検出スキャン構成と生成されたすべてのデータ プロファイルを保存するリージョンに検査テンプレートがあることを確認します。

    このタスクでは、global リージョンでのみ検査テンプレートを自動的に作成します。組織のポリシーで global リージョンに検査テンプレートを作成できない場合は、このタスクを実行する前に、検出スキャン構成を保存するリージョンに検査テンプレートを作成する必要があります。

  4. 特定のイベント(機密データの保護が新しいバケットをプロファイリングする場合など)が発生したときに Pub/Sub 通知をトピックに送信するには、このタスクを実行する前に Pub/Sub トピックを作成します。

データ プロファイルを生成するには、サービス エージェント コンテナとその中の Service エージェントが必要です。こちらのタスクにより、これらは自動的に作成できます。

スキャン構成を作成する

  1. [スキャン構成の作成] ページに移動します。

    [スキャン構成の作成] に移動

  2. 組織に移動します。ツールバーで、プロジェクト セレクタをクリックして組織を選択します。

以降のセクションでは、[スキャン構成の作成] ページの手順について詳しく説明します。各セクションの最後で、[続行] をクリックします。

検出タイプの選択

[Amazon S3] を選択します。

スコープの選択

次のいずれかを行います。

  • AWS コネクタがアクセスできるすべての S3 データをスキャンするには、[コネクタ経由で利用可能なすべての AWS アカウントをスキャンする] を選択します。
  • 単一の AWS アカウントの S3 データをスキャンするには、[選択したアカウントをスキャン] を選択します。次に、AWS アカウント ID を入力します。
  • 単一の S3 バケットをスキャンするには、[Scan one bucket] を選択します。バケットを含む AWS アカウントの ID とバケット名を入力します。

スケジュールを管理

デフォルトのプロファイリング頻度がニーズを満たしている場合は、[スキャン構成の作成] ページのこのセクションをスキップできます。

このセクションは、次の理由で構成します。

  • すべてのデータまたはデータの特定のサブセットのプロファイリング頻度を細かく調整する。
  • プロファイリングしないバケットを指定します。
  • プロファイリングを 2 回以上行わないバケットを指定します。

プロファイリングの頻度を詳細に調整するには、次の手順を行います。

  1. [スケジュールを追加] をクリックします。

  2. [フィルタ] セクションで、スケジュールのスコープに含まれるバケットを指定する 1 つ以上のフィルタを定義します。

    次のうち少なくとも 1 つを指定します。

    • アカウント ID または 1 つ以上のアカウント ID を指定する正規表現
    • バケット名または 1 つ以上のバケットを指定する正規表現

    正規表現は RE2 構文に基づく必要があります。

    たとえば、アカウント内のすべてのバケットをフィルタに含めるには、[アカウント ID] フィールドにアカウント ID を入力します。

    フィルタをさらに追加するには、[フィルタを追加] をクリックして前述の手順を繰り返します。

  3. [頻度] をクリックします。

  4. [頻度] セクションで、選択したバケットをプロファイリングするかどうかを指定します。プロファイリングする場合はその頻度も指定します。

    • バケットをプロファイリングしない場合は、[このデータをプロファイリングする] をオフにします。

    • バケットを 1 回以上プロファイリングする場合は、[このデータをプロファイリングする] をオンのままにします。

      データを再プロファイリングするかどうかと、再プロファイリング オペレーションをトリガーするイベントを指定します。詳細については、データ プロファイル生成の頻度をご覧ください。

      1. [On a schedule] の場合、バケットを再プロファイリングする頻度を指定します。バケットは、変更が加えられたかどうかにかかわらず、再プロファイリングされます。
      2. [検査テンプレートの変更] で、関連する検査テンプレートが更新されたときにデータを再プロファイリングするか、再プロファイリングする場合は、その頻度も指定します。

        検査テンプレートの変更は、次のいずれかが発生すると検出されます。

        • スキャン構成で検査テンプレートの名前が変更されている。
        • 検査テンプレートの updateTime が変更されます。

  5. 省略可: [条件] をクリックします。

    [条件] セクションで、Sensitive Data Protection でプロファイリングを行う前に、フィルタで定義されたバケットが満たす必要がある条件を指定します。

    必要に応じて、以下を設定します。

    • 最小条件: バケットが一定の年齢に達するまでプロファイリングを遅らせる場合は、このオプションをオンにします。次に、最小時間を入力します。

    • オブジェクトのストレージ クラスの条件: デフォルトでは、機密データの保護はバケット内のすべてのオブジェクトをスキャンします。特定の属性を持つオブジェクトのみをスキャンする場合は、その属性を選択します。

    条件の例

    次のような構成があるとします。

    • 最小条件

      • 最小期間: 24 時間
    • オブジェクトのストレージ クラスの条件

      • S3 Standard オブジェクト ストレージ クラスのオブジェクトをスキャンします。
      • S3 Glacier Instant Retrieval ストレージ クラスのオブジェクトをスキャンします

    この場合、機密データの保護では、24 時間以上経過したバケットのみが考慮されます。これらのバケット内で、Sensitive Data Protection は Amazon S3 Standard または Amazon S3 Glacier の即時取得ストレージクラスにあるオブジェクトのみをプロファイリングします。

  6. [完了] をクリックします。

  7. さらにスケジュールを追加する場合は、[スケジュールを追加] をクリックして前の手順を繰り返します。

  8. スケジュールの優先度を指定するには、 上矢印と 下矢印を使用して並べ替えます。

    スケジュールの順序は、スケジュール間の競合を解決する方法を示します。バケットが 2 つの異なるスケジュールのフィルタと一致する場合、スケジュール リストでより上位のスケジュールがそのバケットのプロファイリング頻度を決定します。

    リストの最後のスケジュールには、常に [デフォルトのスケジュール] というラベルが付加されます。このデフォルト スケジュールは、作成したスケジュールのいずれとも一致しない、選択したスコープ内のバケットに対応します。このデフォルト スケジュールは、システムのデフォルト プロファイリング頻度に沿って実行されます。

  9. デフォルトのスケジュールを調整する場合は、[ スケジュールを編集] をクリックして、必要に応じて設定を調整します。

検査テンプレートを選択する

検査構成の指定方法に応じて、次のいずれかのオプションを選択します。どのオプションを選択しても、データが保存されているリージョンで Sensitive Data Protection がデータをスキャンします。つまり、データが送信元のリージョンから離れることはありません。

オプション 1: 検査テンプレートを作成する

global リージョンに新しい検査テンプレートを作成する場合は、このオプションを選択します。

  1. [新しい検査テンプレートを作成] をクリックします。
  2. 省略可: infoType のデフォルトの選択を変更するには、[infoType を管理] をクリックします。

    組み込みとカスタムの infoType を管理する方法について詳しくは、Google Cloud コンソールを使用して infoType を管理するをご覧ください。

    続行するには、少なくとも 1 つの infoType が選択されている必要があります。

  3. 省略可: ルールセットを追加して信頼度のしきい値を設定し、検査テンプレートをさらに構成します。詳細については、検出の構成をご覧ください。

機密データの保護でスキャン構成を作成するときに、この新しい検査テンプレートが global リージョンに保存されます。

オプション 2: 既存の検査テンプレートを使用する

使用したい既存の検査テンプレートがある場合は、このオプションを選択します。

  1. [既存の検査テンプレートを選択] をクリックします。
  2. 使用する検査テンプレートの完全なリソース名を入力します。[リージョン] フィールドには、検査テンプレートが保存されているリージョンの名前が自動入力されます。

    入力する検査テンプレートは、この検出スキャン構成と生成されたすべてのデータ プロファイルを保存するリージョンと同じリージョンに存在する必要があります。

    データ所在地を考慮するため、機密データの保護は、そのテンプレートが保存されているリージョン外の検査テンプレートを使用しません。

    検査テンプレートの完全なリソース名を確認する手順は次のとおりです。

    1. 検査テンプレート リストに移動します。このページは別のタブで開きます。

      検査テンプレートに移動

    2. 使用する検査テンプレートを含むプロジェクトに切り替えます。
    3. [テンプレート] タブで、使用するテンプレートのテンプレート ID をクリックします。
    4. 開いたページで、テンプレートの完全なリソース名をコピーします。完全なリソース名の形式は次のとおりです。
      projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
    5. [スキャン構成の作成] ページの [テンプレート名] フィールドに、テンプレートの完全なリソース名を貼り付けます。

アクションの追加

次のセクションでは、データ プロファイルを生成した後に機密データの保護で行うアクションを指定します。

他の Google Cloud サービスでのアクションの構成に対する課金については、データ プロファイルのエクスポートの料金をご覧ください。

Google Security Operations に公開する

データ プロファイルから収集された指標によって、セキュリティ オペレーションにコンテキストが追加されます。コンテキストが追加されることで、最も重要なセキュリティ問題の特定に役立ちます。

たとえば、特定のサービス エージェントを調査する場合は、サービス エージェントがアクセスしたリソースと、それらのリソースに機密性の高いデータが含まれているかどうかを特定できます。

データ プロファイルを Security Command Center Enterprise の Google Security Operations コンポーネントに送信するには、[Chronicle にパブリッシュ] をオンにします。

Security Command Center に公開する

データ プロファイルの検出結果は、Security Command Center で脆弱性と脅威の検出結果の優先度付けと対応計画の策定を行う際にコンテキストを提供します。

データ プロファイルの結果を Security Command Center に送信するには、[Security Command Center に公開] オプションがオンになっていることを確認します。

詳細については、Security Command Center にデータ プロファイルを公開するをご覧ください。

データ プロファイルのコピーを BigQuery に保存する

[データ プロファイルのコピーを BigQuery に保存する] を有効にすると、生成された全プロファイルの保存済みコピーまたは履歴を保持できます。これは、監査レポートの作成やデータ プロファイルの可視化に役立ちます。この情報は他のシステムに読み込むこともできます。

また、このオプションを使用することで、データが存在するリージョンに関係なく、すべてのデータ プロファイルを 1 つのビューに表示できます。このオプションをオフにしても、Google Cloud コンソールでデータ プロファイルを表示できます。ただし、Google Cloud コンソールで一度に 1 つのリージョンを選択すると、選択したリージョンのデータ プロファイルのみが表示されます。

データ プロファイルのコピーを BigQuery テーブルにエクスポートするには、次の手順を行います。

  1. [データ プロファイルのコピーを BigQuery に保存する] を有効にします。

  2. データ プロファイルを保存する BigQuery テーブルの詳細を入力します。

    • [プロジェクト ID] に、データ プロファイルをエクスポートする既存のプロジェクトの ID を入力します。

    • [データセット ID] に、データ プロファイルをエクスポートするプロジェクト内にある既存のデータセット名を入力します。

    • [テーブル ID] に、データ プロファイルをエクスポートする BigQuery テーブルの名前を入力します。このテーブルを作成していない場合は、指定した名前を使用して、機密データの保護によって自動的に作成されます。

このオプションを有効にした時点から、機密データの保護はプロファイルのエクスポートを開始します。エクスポートを有効にする前に生成されたプロファイルは、BigQuery に保存されません。

Pub/Sub に公開

[Pub/Sub に公開] を有効にすると、プロファイリング結果に基づいて、プログラムによるアクションを実行できます。Pub/Sub 通知を使用して、重大なデータリスクや機密性が高い検出結果を把握し、修正するワークフローを開発できます。

Pub/Sub トピックに通知を送信する手順は次のとおりです。

  1. [Pub/Sub に公開] を有効にします。

    オプションのリストが表示されます:各オプションでは、Sensitive Data Protection によって Pub/Sub に通知を送信するイベントが記述されます。

  2. Pub/Sub 通知をトリガーするように設定するイベントを選択します。

    [プロファイルが更新されるたびに Pub/Sub 通知を送信する] を選択した場合、プロファイルの機密性レベル、データ リスクレベル、検出された infoType、公開アクセス、その他の重要な指標が変更されると、機密データの保護で通知が送信されます。

  3. 選択したイベントごとに、次の手順を行います。

    1. トピックの名前を入力します。名前は次の形式にする必要があります。

      projects/PROJECT_ID/topics/TOPIC_ID
      

      以下を置き換えます。

      • PROJECT_ID: Pub/Sub トピックに関連付けられているプロジェクトの ID。
      • TOPIC_ID: Pub/Sub トピックの ID。
    2. 通知にバケット プロファイル全体を含めるか、プロファイリングされたバケットの完全なリソース名のみを含めるかを指定します。

    3. 機密データの保護で通知が送信されるようにするために、満たす必要がある最小データのリスクと機密性レベルを設定します。

    4. データリスクと機密性条件の一方または両方のみを満たす必要があるかどうかを指定します。たとえば、AND を選択した場合、機密データの保護で通知が送信される前に、データリスクと機密性条件の両方が満たされる必要があります。

サービス エージェント コンテナと課金の管理

このセクションでは、サービス エージェント コンテナとして使用するプロジェクトを指定します。機密データの保護で新しいプロジェクトを自動的に作成することも、既存のプロジェクトを選択することもできます。

新しく作成したサービス エージェントを使用するか、既存のサービス エージェントを使用するかにかかわらず、プロファイリングするデータへの読み取りアクセス権があることを確認してください。

プロジェクトを自動的に作成する

組織でプロジェクトを作成するために必要な権限がない場合は、代わりに既存のプロジェクトを選択するか、必要な権限を取得する必要があります。必要な権限については、組織レベルまたはフォルダレベルでデータ プロファイルを操作するために必要なロールをご覧ください。

サービス エージェント コンテナとして使用するプロジェクトを自動的に作成する手順は次のとおりです。

  1. [サービス エージェント コンテナ] フィールドで、提案されたプロジェクト ID を確認し、必要に応じて編集します。
  2. [作成] をクリックします。
  3. 省略可: デフォルトのプロジェクト名を更新します。
  4. この新しいプロジェクトに関連するすべての課金対象オペレーションに対して課金されるアカウントを選択します(検出に関係のないオペレーションを含む)。

  5. [作成] をクリックします。

機密データの保護によって新しいプロジェクトが作成されます。このプロジェクト内のサービス エージェントは、機密データ保護やその他の API への認証に使用されます。

既存のプロジェクトを選択

既存のプロジェクトをサービス エージェント コンテナとして選択するには、[サービス エージェント コンテナ] フィールドをクリックしてプロジェクトを選択します。

構成を保存するロケーションを設定する

[リソースのロケーション] リストをクリックし、このスキャン構成を保存するリージョンを選択します。後で作成するすべてのスキャン構成も、このロケーションに保存されます。

いずれのスキャン構成の保存先を選択しても、スキャンするデータには影響しません。データは、データが保存されているリージョンと同じリージョンでスキャンされます。詳細については、データ所在地に関する検討事項をご覧ください。

構成を確認して作成する

  1. スキャン構成の作成後にプロファイリングが自動的に開始されないようにするには、[一時停止モードでスキャンを作成する] を選択します。

    この構成は、次のような場合に利用できます。

    • Google Cloud 管理者は、引き続きサービス エージェントにデータ プロファイリングのアクセス権を付与する必要があります。
    • 複数のスキャン構成を作成し、一部の構成で他の構成をオーバーライドする
    • データ プロファイルを BigQuery に保存することを検討しており、サービス エージェントが出力テーブルへの書き込みアクセス権を持っていることを確認する。
    • Pub/Sub 通知を構成し、サービス エージェントに公開アクセス権を付与します。
  2. 設定を確認し、[作成] をクリックします。

    Sensitive Data Protection により検出スキャン構成が作成され、これが検出スキャン構成リストに追加されます。

スキャン構成を表示または管理するには、スキャン構成を管理するをご覧ください。

次のステップ