ノート:

条件に基づいて問題を検出するためのOracle Cloud Guardディテクタ・ルールの構成

イントロダクション

Oracle Cloud Guardは、Oracle Cloud Infrastructure (OCI)コンパートメントであるターゲットをスキャンし、ディテクタ・ポリシーと呼ばれるポリシーで定義されたルールに基づいて問題を検出する無料のクラウド・ネイティブ・サービスです。ルールが満たされると、コンソールから確認できる問題が作成されます。クラウド・ガードは、レスポンダ・ポリシーで定義されたルールを使用して問題に対処します。クラウド・ガードには、すぐに使用できる様々なディテクタ・レシピが付属しています。たとえば、構成ディテクタ・レシピ、アクティビティ・ディテクタ・レシピなどです。ディテクタ・レシピには複数のディテクタ・ルールがあり、これらのルールがトリガーされると、クラウド・ガードによって問題が作成されます。

クラウド・ガード概要画面のイメージ

クラウド・ガードを構成すると、すぐに使用可能なディテクタ・ポリシーに基づいて問題の検出が開始されます。クラウド・ガードによって検出された問題を確認すると、ユース・ケースに基づく誤検出の問題がいくつか見つかる場合があります。たとえば、クラウド・ガードの「インスタンスはパブリックにアクセス可能です」と「インスタンスにはパブリックIPがあります」ディテクタ・ルールは、インターネットからアクセスでき、パブリックIPを持つターゲット(コンパートメント)内のインスタンスを検出します。ただし、デモ/トレーニング・コンピュート・インスタンスにパブリックIPを持ち、インターネットからアクセスできるようにする必要があります。

これを実現するには、クラウド・ガード・ディテクタ・ルールで条件グループを構成し、ほぼすべてのタイプのディテクタ・ルールに対してこれを実行します。

目的

前提条件

タスク1: 条件に基づいて実行する必要があるディテクタ・ルールの識別

ディテクタ・ルール条件グループの構成を開始する前に、作業する必要があるディテクタ・ルールを把握する必要があります。このチュートリアルでは、構成ディテクタ・ルール「インスタンスにパブリックIPアドレスがあります」を使用したことをデモンストレーションします。このディテクタ・ルールはターゲット内のコンピュート・インスタンスをスキャンし、インスタンスにパブリックIPが割り当てられている場合、クラウド・ガードは問題を作成し、対応するレスポンダ・ルールが自動削除されるように設定されている場合には、

クラウド・ガード・インスタンスにパブリックIPアドレス・ディテクタ・ルールがあるイメージ

同様に、ディテクタ・ルールの範囲を設定する必要がある他のディテクタ・ルールを識別できます。たとえば、「バケットはパブリックです」ディテクタ・ルールはバケットがパブリックであるかどうかを検出し、クラウド・ガードはレスポンダ・ルールによる検出時にプライベートにします。ただし、パブリック・ドキュメントをホストするパブリック・バケットがあり、クラウド・ガードでこのバケットの問題を作成する場合があります。

クラウド・ガード・バケットがパブリック・ディテクタ・ルールであるイメージ

クラウド・ガードには、ディテクタ・ルールで問題を検出したときに自動的にトリガーできる(構成可能、デフォルトのオフ)レスポンダがあります。このような場合、クラウド・ガード・レスポンダ・ルールの実行のためにリソースにアクセスできないユーザーによる条件付きアクセスを必要とするディテクタ・ルールについて知ることができます。たとえば、ユーザーが本当の理由のためにコンピュート・インスタンスにパブリックIPを必要とするが、クラウド・ガード・レスポンダ・アクティビティによって、検出時にパブリックIPがインスタンスから削除された場合です。

ノートレシピに条件を追加する場合、ターゲット・レベルでレシピで定義された条件は、その特定のターゲットにスコープ指定され、他のターゲットの他のレシピには影響を与えないことを考慮してください。レシピ・レベルで定義された条件は、レシピがアタッチされているすべてのターゲットに影響します。詳細は、ここを参照してください。

次の表に、レシピで使用可能なサポートされているパラメータの一部を示します。表から、アクティビティ・レシピ・パラメータがアクターにターゲット指定され、構成レシピ・パラメータがリソースにターゲット指定されていることがわかります。

レシピ 条件付きパラメータ
アクティビティ・レシピ リージョン - アクターの送信元のリージョン。
場所(市区町村、都道府県、国) - アクターの場所。
タグ - Actorに適用されます。
IPv6/IPv4 Address - アクターのIPアドレス。
ユーザー名 - アクターのユーザー名。
構成レシピ タグ - リソースに適用されるタグ。
OCID - リソースのOCID。例: コンピュート・インスタンス、DB System、ロード・バランサ、ユーザー、グループ、ポリシー、VNIC、VCNなどのOCID。
バケット・ネームスペース/名前
CIDR/IPv6/IPv4アドレス - 該当する場合、リソースのIP (例- データベース・システムにはパブリックIPアドレス、インスタンスにはパブリックIPアドレスがあります)。

タスク2: ディテクタ・ルールでの条件グループの作成

  1. 「クラウド・ガード」「ターゲット」(ターゲット名)「ターゲット詳細」「ディテクタ・レシピ」「OCI構成ディテクタ・レシピ(Oracle管理)」にナビゲートします。

    ノート: 即時利用可能なディテクタ・レシピをクローニングした場合は、そのレシピにナビゲートします。この例では、ディテクタ・ルール「インスタンスにパブリックIPアドレスがあります」に条件を追加します。

  2. ディテクタ・ルールで、「インスタンス」を検索すると、インスタンス関連のディテクタ・ルールが表示されます

    検索インスタンスにパブリックIPディテクタ・ルールがあるイメージ

  3. 右側の3つのドットをクリックして、ディテクタ・ルールを編集します。条件グループの下:

    • このルールを適用するコンパートメントを例iam-demoで選択します。

    • リストからパラメータ(例: instance OCID)を選択します。

    • クラウド・ガードでパブリックIPを持つインスタンスの1つを検出するため、演算子を選択します(この例では「not in」)。

    • リストからカスタム・リストを選択します。管理対象リストも次のステップで説明します。

    • 除外するパブリックIPを持つ複数のコンピュート・インスタンスがある場合は、別の条件を追加します。

    • インスタンスのOCIDを入力して保存します。

      ノート: パラメータ・リストはディテクタ・ルールに固有です。各ルールには共通のパラメータと、ルールに固有のパラメータがあります。1つの条件グループに複数の条件がある場合は、論理ANDを使用します。

    編集インスタンスにパブリックIPディテクタ・ルールがあるイメージ

  4. 解決した問題を表示します。変更が保存されると、しばらくすると、クラウド・ガードは変更を検出し、問題を解決済としてマークすることで、コンピュート・インスタンスの既存の問題を自動的に解決します。解決済みの問題のリストに表示できます。

    解決されたインスタンスにパブリックIPディテクタ・ルールがあるイメージ

ディテクタ・ルールを編集して、ディテクタ・ルールで1つまたは複数の条件を静的に追加する方法を確認しました。値が異なる同じタイプの複数の条件を追加する必要がある場合オプションの1つは、ディテクタ・ルールの編集を維持することです。ただし、次のステップで表示される管理対象リストを使用することで、より適切な方法があります。

タスク3: ディテクタ・ルールでの管理対象リストの使用

  1. 管理対象リストを作成します。

    ノート: この例では、パブリックIPを使用できるコンピュート・インスタンスがいくつかあります。そのため、「リソースOCID」タイプの「PublicInstances」という管理対象リストを作成し、パブリックIPを持つことができるすべてのコンピュート・インスタンスのOCIDを追加しました。管理対象リストの作成方法に関するこのドキュメントを参照してください。

    作成管理対象リストのイメージ

  2. 値を静的に追加するのではなく、ディテクタ・ルールの管理対象リストを使用します。

    ノート: この例では、「インスタンスにパブリックIPがあります」ディテクタ・ルール変更リストをカスタム・リストから管理対象リストに編集し、リスト名を「PublicInstance」と指定しました。管理対象リストを使用すると、ディテクタ・ルールを編集するのではなく、インスタンスOCIDを1つの場所から簡単に追加/削除できます。

    ディテクタ・ルールでの管理リストの使用のイメージ

次のステップ

クラウド・ガードによって生成された問題を確認し、ディテクタ・ルールに条件を追加できる場所を確認します。これにより、クラウド・ガードはビジネス・ロジックに基づいて問題を生成せず、誤検出を排除できます。

承認

その他の学習リソース

docs.oracle.com/learnで他のラボをご覧いただくか、Oracle Learning YouTubeチャネルでより無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスして、Oracle Learning Explorerになります。

製品ドキュメントについては、Oracle Help Centerを参照してください。