GitHub: データ保護 API コネクタの設定

Prev Next

この記事は、GitHub コネクタを設定する方法およびアカウントの アプリ&データ API 保護ポリシーでこのコネクタを使用するルールを作成する方法を説明します。

アプリ&データ API 保護ポリシーには、別途 Cato ライセンスが必要です。 詳細については、Catoの担当者または公式リセラーにお問い合わせください。

バイナリファイルはGitHubコネクタではサポートされていません。

概要

GitHubのデータ保護APIコネクタは、リポジトリにプッシュされたコミット内のコンテンツを監視し、DLPコンテントプロファイルで定義された機密データをスキャンします。 コネクタがコミット内の機密データを認識すると、詳細付きのイベントを生成します。 たとえば、APIトークン、SSHキー、データベースクレデンシャルなどのコミットをスキャンできます。

コミットの内容を監視するには、GitHub組織のためのコネクタを作成し、スキャンおよび監視するユーザーとリポジトリを定義する脅威保護およびデータ保護ポリシー内でルールを設定します。

前提条件

  • 組織のGitHubアカウントに対する管理者権限

GitHubのAPIコネクタに必要な権限

データ保護 API が GitHub コミットをスキャンできるようにするために、コネクタは GitHub アカウント内で Cato に次の権限を与えます:

  • コード、メンバー、およびメタデータへの参照アクセス

GitHubコネクタとの作業

このセクションは、GitHubのAPIコネクタを作成して、機密データと脅威をスキャンする方法を説明します。

GitHubコネクタの作成

Cato Management Applicationを使用してGitHubコネクタを作成し、その後、GitHubアカウントにサインインします。 インストールする組織を選択し、コネクタがアクセス可能なリポジトリを選択します。 組織のすべてのリポジトリを選択するか、特定のものを選択できます。

GitHub の各組織に対してコネクタを作成できます。 複数の組織の場合、それぞれに対して別々のコネクタが必要です。

GitHub コネクタは、データ保護ポリシーで定義されたコンテンツをスキャンする データ保護 API エンジンを使用します。

注:

  • 組織に対してコネクタを複数インストールすることはできません。 同じ組織に対して 2 つ目のコネクタをインストールすると、機能に影響が出る可能性があり、組織が監視されなくなる可能性があります。

  • 既存のコネクタのGitHub管理コンソールで設定を変更することは、機能に影響を与える可能性があり、組織が監視されなくなることがあります。

GitHub のコネクタを作成するには:

  1. ナビゲーションメニューから リソース > 統合 を選択し、統合されたAPI タブをクリックします。

  2. 新規 をクリックします。 新規コネクタ パネルが表示されます。

  3. SaaSアプリケーション ドロップダウンで GitHub を選択します。

  4. 機能 セクションで、データおよび脅威保護 を選択します。

  5. コネクタ名 を入力します。

  6. 認証して保存 をクリックします。 GitHubにリダイレクトされます。

  7. GitHub でアプリをインストールする:

    1. GitHubで管理者としてサインインします。 すでにGitHubにサインインしている場合は、管理者としてサインインしていることを確認してください。

    2. コネクタのための組織を選択します。

      GitHub_Select_Org.png

    3. 必要に応じて組織にサインインします。

    4. コネクタがアクセス権を持つリポジトリを選択し、インストール をクリックします。 組織内のすべてのリポジトリを選択するか、特定のものを選択できます。

      GitHub_Select_repos.png

    5. テナントに対する権限を適用したことが成功したことを表示しています。

      Success_Connector_Permissions.png

    6. GitHubコネクタが作成され、統合されたAPIタブに追加されます。

コネクタステータスの理解

インストールされたSaaSアプリケーションページのステータス列は、あなたのGitHubアカウントとCatoアカウント間の接続状況を示します。 これらはステータスの説明です:

  • 接続済み - あなたのアカウントは接続され、正常に機能しています

  • 接続エラー - GitHubコネクタとの接続や権限の問題。 サポート にチケットをオープンしてください。

  • ユーザ承諾の保留 - GitHubコネクタはConnect設定ページで作成されましたが、GitHubへの認証が成功していません。 認証処理には数秒かかることがあるため、ステータスを受け取った場合はブラウザを更新してください。

GitHubルールのデータ保護ポリシーへの追加

このセクションは、GitHubコミットを監視するためのデータ保護ポリシーの使い方を説明します。 ユーザーがリポジトリにコミットをプッシュすると、データ保護エンジンはそのコミット内に含まれる新しいコンテンツをスキャンし、コンテントプロファイルで定義された機密データを検出します。 以前にリポジトリにプッシュされたコンテンツはスキャンされず、新しいコミットに異なる新規コンテンツのみが対象です。

GitHubルール設定の理解

このセクションは、GitHubコミットをスキャンするためのデータ保護ルールの設定を定義する方法を説明します。 各ルールは以下の設定で定義できます:

  • ユーザー - 監視するGitHubユーザーを定義します。 すべてを選択するか、特定のユーザーを定義します。

  • オブジェクト - スキャンするGitHubリポジトリを定義します。 すべてを選択するか、特定のリポジトリを定義します。

    • スキャン可能なリポジトリには、コネクタがアクセス権を持つものが含まれています。これはコネクタが作成されたときに定義されます。 上記の GitHubコネクタの作成 を参照してください。

  • ファイル属性 - ファイル名 や ファイルタイプ に基づき、スキャンからファイルを除外します。 定義された属性を満たすファイルは、機密コンテンツのスキャン対象にはなりません。

  • コンテンツプロファイル - DLPコンテントプロファイルがDLPコンテンツ検査を定義します

    セキュリティ > DLPプロファイル > DLPプロファイル > コンテンツプロファイルでコンテンツプロファイルを作成または編集できます

  • アクション - ルールが一致した際にイベントを生成するか通知を送信したいかどうか選択します

GitHubルールの設定

データ保護ページを使用して、データ保護ポリシーにSaaSアプリケーションルールを追加します。

Slack_Data_Protection_Rule.png

GitHub アプリのための新しいデータ保護ルールを作成するには:

  1. ナビゲーションパネルから セキュリティ > アプリ&データ API 保護 を選択し、データ保護 を選択または展開します。

  2. 新規 をクリックします。 新規ルール パネルが表示されます。

  3. アプリケーションコネクタ でGitHubアプリを選択します。

  4. 一般 セクションでルールの設定を入力します。

  5. ユーザーで、監視している GitHub ユーザーを定義します:

    • すべて - 組織のすべてのGitHubユーザーを監視します(デフォルト値)

    • GitHubユーザー - 監視する特定の組織ユーザーを選択

  6. オブジェクトで、スキャンするGitHubリポジトリを定義します。 デフォルト値は すべて です。

  7. ファイル属性 で、スキャンされるファイルを指定する基準を定義します(デフォルトの設定はすべてのファイルをスキャンすることです)。

  8. コンテンツプロファイルで、このルールのためのDLPコンテントプロファイルを選択します。

    DLPコンテントプロファイルの詳細は DLPコンテントプロファイルの作成 を参照してください。

  9. アクションで モニタを選択します。

  10. (オプション) トラッキングオプションを設定して イベント を生成し、通知を送信します。

    通知についての詳細は、アラート セクションのサブスクリプショングループ、メーリングリスト、アラート統合に関する関連する記事を参照してください。

  11. 保存 をクリックします。 ルールはデータ保護ポリシーに追加されます。

秩序あるデータ保護ルールとの連携

データ保護 API エンジンはデータを順番に検査し、ルールに合致するか確認します。 データがルールに一致しない場合、それは検査されません。 ルールベースの上位にあるルールは優先順位が高く、下位のルールよりも先に適用されます。 各タイプのアプリケーションまたはコネクタは、データに一度だけ適用されます。

ベストプラクティス - ルールベースの効率を最大化するために、各コネクタタイプで特定のユーザーに適用されるルールは、すべてのユーザーに適用されるルールよりも優先順位が高いことをお勧めします。

たとえば、データがルール#2のコネクタに一致した場合、データ保護 API エンジンによって検査されます。 エンジンは同じコネクタのためにルール#3以下を適用し続けません。 ただし、データは異なるコネクタの低優先度ルールに一致する可能性があります。

コネクタへの脅威保護の追加

コネクタに対して、Anti-Malwareおよび次世代Anti-Malwareエンジンを使用してファイルおよび添付ファイルをスキャンする脅威保護ルールを作成できます。 データ保護 API エンジンはコネクタトラフィックをスキャンし、ルール用に設定したアクションおよびトラッキングオプションを適用します:

  • トラフィックの監視(ブロックはすぐにサポートされる予定)

  • イベントを生成します

  • メール通知を送信します

アプリ&データ API 保護ルールを作成すると、セキュリティ > Anti-Malware でアカウントに有効化されている Anti-Malware エンジンが送信されたファイルのマルウェアスキャンを行います。

以下のスクリーンショットは、内部ユーザーまたはゲストが送信するファイルをスキャンするための OneDrive コネクタ用の脅威保護ルールを示しています:

CAS_Threat_Protection.png

ファイルの例外の作成

Cato の データ保護 API エンジンにブロックされたファイルが、安全であるとわかっていてネットワークで許可する必要がある場合があります。 ファイルハッシュポリシーの Anti-Malware 例外は アプリ&データ API 保護にも適用されます。 ファイルをファイルハッシュポリシーに追加する方法の詳細は、マルウェア対策例外の管理を参照してください。

データ保護 API イベントの分析

ホーム > イベント ページはあなたのアカウントのすべての データ保護 API イベントを表示しています。 強力な検索ツールにより、詳細まで掘り下げて知りたいデータを含むイベントを特定できます。

データ保護 API イベントは次のフィールドで識別できます:

  • イベントタイプ - セキュリティ

  • サブタイプ - SaaSセキュリティAPIデータ保護およびSaaSセキュリティAPIアンチマルウェア

イベントページの利用方法についてはこちらを参照してください。

これは SaaS セキュリティ API GitHub コネクタイベントのサンプルです:

GitHub_Event.png

データ保護 API イベント項目の説明

項目名

説明

アプリケーションアクティビティ

プッシュ

コネクタ名

ルールに定義されたコネクタの名前

コネクタタイプ

このコネクタに定義されたSaaSアプリ

DLPプロファイル

このイベントを生成したDLPコンテンツプロファイル

フローのフルパスURL

コミットの差分比較へのリンク

一致したデータの種類

ルールに一致したコンテンツプロファイルのデータタイプ

ルール

データ保護ポリシーにおけるルールの名前

オブジェクト名

プッシュされたコミットのリポジトリ名

オブジェクトタイプ

スキャンされたオブジェクトのタイプ

所有者

コミットをプッシュしたユーザーのメールアドレス

セベリティ

ルールに定義されたセベリティ