共通機能

Oracle Cloud Guardのカスタマイズを準備する場合、複数の領域にまたがる共通の機能がいくつかあります。

クラウド・ガードのカスタマイズを開始する前に、次の各項でこれらの機能をプレビューするか、情報が役立つ特定のタスクからのリンクに従うことができます。

レシピの概要

Oracle管理レシピとユーザー管理レシピの違い、ユーザー管理レシピの仕組み、レシピおよびターゲット・レベルで変更できる設定について理解します。

次の3つのセクションは、OCIレスポンダ・レシピについておよびOCIディテクタ・レシピについてにもあります。

Oracle管理レシピとユーザー管理レシピ

この2つのカテゴリのレシピの違いを理解します。

ディテクタとレスポンダの両方について、クラウド・ガードには次に対するOracle管理レシピの豊富なセットが用意されています:

  • OCIアクティビティ・ディテクタ
  • OCI構成ディテクタ
  • OCIインスタンス・セキュリティ・ディテクタ
  • OCI脅威ディテクタ
  • レスポンダ

Oracle管理レシピはそのまま使用できますが、場合によっては環境の特定のニーズを満たすように変更を加える必要があります。特に、一部のルールに関連付けられているリスク・レベルを変更したり、他のルールを完全に無効にしたりできます。これらのタイプの変更を行うには、最初にレシピをクローニングしてユーザー管理コピーを作成してから、そのコピーに変更を加えます。

新しいディテクタ・ルールがOracle管理レシピに追加されると、そのレシピのすべてのユーザー管理(クローン)コピーに、Oracle管理ソースのデフォルト値を使用してルールが自動的に追加されます。その後、レシピのユーザー管理コピーで新しいルールの構成を変更できます。

次の表に、Oracle管理レシピの3つのディテクタ・ルールの例と、ユーザー管理コピーの変更方法を示します。ユーザー管理ルールの変更点は、太字で示しています:

Oracle管理レシピ ユーザー管理レシピ
ルール ステータス リスク・レベル ステータス リスク・レベル
バケットがパブリックです 有効 無効
KMSキーがローテーションされていません 有効 有効
インスタンスにパブリックIPアドレスがあります 有効 クリティカル 有効 クリティカル

同じOracle管理レシピを必要な回数クローニングして、特別な目的のために微調整されたユーザー管理コピーを作成できます。次のような理由により、異なるレシピを用意します:

  • 非本番ワークロードと本番ワークロードの異なる処理。
  • 異なるコンパートメントのリソースに対する別個の操作または通知プロセス。
  • 一部のコンパートメントのリソースに対するリージョナル要件。
  • 構成またはアクティビティに異なるルールを必要とする様々なタイプのリソース。
ユーザー管理(クローン)ディテクタおよびレスポンダの動作

ユーザー管理レシピが、クローニング元のOracle管理レシピとの関連付けをどのように維持しているかを理解します。

  • Oracle管理レシピをクローニングすると、ユーザー管理コピーが作成されます。ユーザー管理コピーは、Oracle管理のオリジナルとまったく同じですが、カスタマイズできます。

    クローン・コピーでの変更(ルール設定の変更など)は、元のディテクタまたはレスポンダ・レシピには影響しません。

  • ユーザー管理レシピのすべてを変更することはできません。個々のルールについて、リスク・レベルを変更したり、ルールを有効または無効にしてそのリスク・レベルを変更したりできます。ルールの削除や新規ルールの追加はできません。
  • ユーザー管理レシピを使用するには、ターゲットに追加する必要があります。ターゲットには、各タイプのレシピ(構成ディテクタ、アクティビティ・ディテクタおよびレスポンダ)を1つのみ追加できます。追加するタイプのレシピがターゲットにすでにある場合は、同じタイプのレシピを追加する前にそのレシピを削除する必要があります。「OCIターゲットおよびそのアタッチされたレシピの編集」を参照してください。
  • クラウド・ガードは、ユーザー管理レシピと元のOracle管理レシピの同期を維持します。元のOracle管理レシピに追加された新しいルールは、クローン・コピーに自動的に追加されます。また、元のOracle管理レシピのルールに加えられた改良は、クローン・コピーの同じルールに自動的に反映されます。
  • ユーザー管理レシピに追加される新しいルールを監視します。追加された新しいルールは、デフォルトで無効になります。新しいルールを詳細に調べて、有効にするかどうかを判断します。これらの更新については、クラウド・ガードのリリース・ノートを定期的に参照してください。
  • ユーザー管理レシピで無効にしたルールのリストをモニターして、有効にする必要があるかどうかを判断します。時間が経過すると、以前に無効にしたいくつかのレシピを使用した方がよいとわかることがあります。これらの更新については、クラウド・ガードのリリース・ノートを定期的に参照してください。
レシピおよびターゲット・レベルでのレシピの変更

Oracle Cloud Guardがレシピ設定を2つのレベルに分離する方法と、Oracle管理またはユーザー管理(クローン)のディテクタおよびレスポンダ・レシピの様々な設定をそれらの2つのレベルで更新する方法を理解します。

クラウド・ガードは、ディテクタおよびレスポンダ・ルールに対して構成できる設定を、レシピ・レベルとターゲット・レベルの2つのグループに分割します。これらのレベルには様々なページからアクセスします。

詳細がわからない場合、Oracle Cloud Guardでのディテクタおよびレスポンダ・レシピの管理が混乱する可能性があります。この項の最後にあるディテクタ・レシピ・リファレンスの項に、「ターゲット」ページまたは各レシピ・ページからアクセスしたときの、すべてのタイプのレシピに関する情報がまとめられています。

ノート

Oracle管理レシピを更新すると、そのレシピからクローニングされているすべてのユーザー管理レシピに更新が自動的に適用されます。レシピの変更時にどのページから開始しても、他のページからレシピにアクセスしたときに変更は維持されています。
  • レシピ・レベルの設定は、戦略的な性質があります。つまり、影響の範囲が最も広く、レシピがアタッチされているすべてのターゲットに影響を与えます。これらの設定を変更するには、最高レベルの権限が必要です。
    • セキュリティ原則: レシピ設定はクラウド・ガードに広範な影響を与えるため、このレベルでの設定変更を許可するユーザーは少なくする必要があります。
    • レシピ・レベルで変更できる設定:
      • ディテクタ:
        • ステータス(ルールの有効化または無効化、ユーザー管理のみ)。
        • リスク・レベル(ユーザー管理のみ)。
        • ラベル。
        • 入力設定(ルールに適用される場合)。
        • 「条件付きグループ」設定
      • 応答者:
        • ステータス(ルールの有効化または無効化、ユーザー管理のみ)。
    • スコープ: レシピ・レベルでディテクタおよびレスポンダ・ルールに対して行われる変更:
      • ステータスの変更(ルールの有効化または無効化):
        • ユーザー管理(クローン)レシピでのみ可能です。
        • ディテクタまたはレスポンダがすでにアタッチされているか、後でアタッチされるすべてのターゲットにグローバルに適用されます。
      • 「条件付きグループ」設定:
        • ディテクタまたはレスポンダ・レシピが後で追加されるすべてのターゲットにデフォルト値を指定します。
        • ターゲットにレシピを追加した後は、そのターゲットからのみ「条件グループ」設定を変更できます。
      • ポリシー・ステートメント(レスポンダ・ルールの場合、ターゲット・レベルのみ):
        • ポリシー・ステートメントの有効化はグローバルであり、レシピ・レベルとターゲット・レベルの両方で、ポリシーを必要とするすべてのレスポンダ・ルールに適用されます。
        • ポリシーを有効にする必要があるのは、テナンシ内で1回のみです。
    • アクセス: 前述のように、レシピ・ページ、「ディテクタ・レシピ」または「レスポンダ・レシピ」からディテクタおよびレスポンダ・ルールにアクセスして、これらの設定を変更します。
  • ターゲット・レベルの設定は、戦術的な性質があります。つまり、これらは単一のターゲットにのみ影響するため、変更するには低レベルの権限で十分である可能性があります。
    • セキュリティ原則: ターゲットは、より狭い範囲に影響する傾向があり、コンパートメントのサブセットにのみ影響を与えるため、このレベルではより多くのユーザーに設定変更を許可できます。
    • ターゲット・レベルで変更できる設定:
      • ディテクタ:
        • 条件グループ(ユーザー管理のみ)。
      • 応答者:
        • ステータス(ルールの有効化または無効化、ユーザー管理のみ)。
        • 「入力設定」: 「修正後通知」を有効または無効にします(ルールに適用される場合)。
        • 「ルール・トリガー」「自動的に実行」「実行前に確認する」を変更します。
        • その他の設定を変更します(たとえば、「必須のポリシー・ステートメント」および「修正通知」の有効化または無効化)。
    • スコープ: ターゲット・レベルでディテクタおよびレスポンダ・ルールに対して行われる変更は、次に適用されます:
      • 一般に、変更は現在のターゲットに適用されます。変更は、ディテクタまたはレスポンダ・レシピがすでにアタッチされているターゲットの設定には影響しません。レシピをターゲットにアタッチした後、そのターゲットの設定をさらに変更するには、同じターゲットから行う必要があります。後でレシピ・レベルで行った変更により、ターゲットにアタッチされているレシピが自動的に更新されます。
      • 必要なポリシーの有効化および修正通知の有効化および無効化(両方ともレスポンダ・レシピの場合のみ)では、変更により、ユーザー管理(クローン)ディテクタまたはレスポンダ・レシピが後で追加されるすべてのターゲットのデフォルト値が提供されます。
    • アクセス: 前述のように、これらの設定を変更するには、「ターゲット」ページからディテクタおよびレスポンダ・ルールにアクセスします。
  • 重要な制限のサマリー - 一部の設定は、レシピまたはターゲット・レベルでのみ、またはOracleまたはユーザー管理レシピでのみ変更できます:
    • ディテクタ:
      • ステータス(ルールの有効化または無効化) - ユーザー管理レシピ内、レシピ・レベルでのみ。
      • リスク・レベル - ユーザー管理レシピ内、レシピ・レベルでのみ。
      • ラベル - ユーザー管理レシピ内、レシピ・レベルでのみ。
    • 対応者:
      • ステータス(ルールの「有効化」または「無効化」) - ユーザー管理レシピ内、レシピ・レベルでのみ。
      • 「入力設定」「修正後通知」を有効または無効にする場合(ルールに適用する場合)、ターゲット・レベルでのみ(Oracle管理レシピとユーザー管理レシピの両方)。
      • ルール・トリガー(「自動的に実行」「...前に確認」の間) - ターゲット・レベルでのみ(Oracle管理とユーザー管理の両方のレスポンダ・レシピの場合)。

次の表は、Oracle管理レシピとユーザー管理レシピの両方について、レシピ・レベルおよびターゲット・レベルで変更できるディテクタおよびレスポンダ・ルール設定をまとめたものです。

変更のタイプ(下)

ディテクタ・レシピの変更元... レスポンダ・レシピの変更元...
Oracle管理 ユーザー管理(クローン) Oracle管理 ユーザー管理(クローン)
レシピ・ページ ターゲット・ページ レシピ・ページ ターゲット・ページ レシピ・ページ ターゲット・ページ レシピ・ページ ターゲット・ページ
ステータス(ルールの「有効化」および「無効化」) いいえ いいえ はい いいえ いいえ いいえ はい いいえ
リスク・レベル いいえ いいえ はい いいえ 該当なし 該当なし 該当なし 該当なし
ラベル いいえ いいえ はい いいえ 該当なし 該当なし 該当なし 該当なし
入力設定 はい いいえ はい いいえ いいえ はい いいえ はい
条件グループ はい はい はい はい いいえ はい いいえ はい
ポリシー・ステートメントの有効化 該当なし 該当なし 該当なし 該当なし いいえ はい いいえ はい
ルール・トリガー(手動または自動実行) 該当なし 該当なし 該当なし 該当なし いいえ はい いいえ はい
修正通知(設定) 該当なし 該当なし 該当なし 該当なし いいえ はい いいえ はい
手順を参照してください: トピック トピック トピック トピック トピック トピック トピック トピック
コンパートメントの継承

コンパートメント階層をターゲットにマップします。ターゲットにアタッチするディテクタ・レシピは、コンパートメント階層内のリソースをモニターします。

コンパートメントの下位に他のコンパートメントがある場合、ディテクタ・レシピのルールは、階層内のすべての下位レベル・コンパートメントに自動的に適用されます。

コンパートメント階層に、異なるレベルのコンパートメントに適用されるディテクタ・レシピがある場合、ルールが競合すると、下位レベルで適用されるディテクタ・レシピのルールによって、上位レベルで適用されるディテクタ・レシピのルールがオーバーライドされます。これは、ディテクタ・レシピが適用されるコンパートメントとその下位にあるすべてのコンパートメントに適用されます。

ディテクタ・ルール・フィールドの継承の詳細

ディテクタ・レシピとそのディテクタ・ルール内のフィールドは、4つのレベルで変更できます。それぞれに独自の制限セットがあります。

ノート

これらの異なるレベルで適用されるディテクタ・レシピ・ルールの優先順位は、コンパートメント階層の優先順位と似ています。ルールが競合すると、常により限定的なレベル(次のリストの数値が大きい方)のルールによって、より包括的なレベル(次のリストの数値が小さい方)のルールがオーバーライドされます。
  1. Oracle: クラウド・ガードで新しいOracle管理レシピを更新または作成する必要がある場合、それらはすべてのテナントで使用できます。
  2. テナント: これらは特定のテナントにのみ適用可能な変更です。
    • これらのフィールドは、Oracle管理レシピのテナント・レベルで変更できます:
      • ラベル(追加のみ可能)
      • 構成(「設定」とも呼ばれる)
      • 条件
    • これらのフィールドは、Oracle管理レシピのテナント・レベルで変更できません:
      • ステータス(有効/無効)
      • リスク・レベル
    • これらのフィールドは、Oracle以外の管理レシピのテナント・レベルで変更できます:
      • ステータス(有効/無効)
      • リスク・レベル
      • ラベル
      • 構成(「設定」とも呼ばれる)
      • 条件
  3. ターゲット: これらは特定のターゲットにのみ適用可能な変更です。
    • これらのフィールドは、Oracle管理レシピとOracle以外の管理レシピの両方のターゲット・レベルで変更できます:
      • 条件
    • これらのフィールドは、Oracle以外の管理レシピのターゲット・レベルで変更できます:
      • ステータス(有効/無効)
      • リスク・レベル
      • ラベル
      • 構成(「設定」とも呼ばれる)
  4. ターゲットのサブコンパートメント: これらは、ターゲットの子孫ツリーから選択されたコンパートメントにのみ適用可能な変更です。
    • これらのフィールドは、Oracle管理レシピとOracle以外の管理レシピの両方のターゲット・レベルで変更できます:
      • 条件
    • これらのフィールドは、Oracle以外の管理レシピのターゲット・レベルで変更できます:
      • ステータス(有効/無効)
      • リスク・レベル
      • ラベル
      • 構成(「設定」とも呼ばれる)

レシピ・ルールでの条件グループの使用

条件グループによって、ディテクタまたはレスポンダ・ルールをアクティブ化するスコープをすばやく設定できます。

ディテクタの条件グループ

条件グループは、指定したパラメータを設定して、ディテクタ・ルールの違反によって実際に問題がトリガーされる状況の範囲を制限します:

  • 構成ディテクタでは、条件グループによって、特定のリソースをモニタリングに含めたり除外したりできます。
  • アクティビティ・ディテクタでは、条件グループによって、アクティビティ・ディテクタを特定のIPスペース、リージョン、ユーザー、グループまたはリソースに制限できます。
  • 条件グループを実装するには、ディテクタ・レシピ・ルールを変更するときに:
    1. 「パラメータ」「演算子」および「カスタム・リスト」または「管理対象リスト」を選択します。
    2. 照合する「値」の1つ以上のエントリを入力します。
    • タグ以外のパラメータに条件を設定するには、次のステップに従います。
      1. 「パラメータ」リストで、「タグ」以外のパラメータを選択します。
      2. 「演算子」「リスト」および「値」を選択します。
      3. 別の条件を追加するには、「別の条件」をクリックします。
        ノート

        複数の条件を指定すると、AND演算子として機能します。ルールは、すべての条件が満たされた場合にのみ適用されます。
    • タグに条件を設定するには、次のステップを実行します。
      1. 「パラメータ」リストで、「タグ」を選択します。
      2. 「演算子」(「次に含まれる」または「次に含まれない」)を選択します。
        • 「次に含まれる」を選択した場合、ルールは、指定したリスト内のタグのいずれかでタグ付けされたアイテムにのみ影響します。
        • 「次に含まれない」を選択した場合、ルールは、指定したリスト内のタグのいずれかでタグ付けされていないアイテムにのみ影響します。
      3. 「タグの選択」をクリックします。
      4. 「タグの選択」ダイアログ・ボックスで、定義済タグまたはフリーフォーム・タグの条件を設定します。
        • 定義済タグの条件を設定するには、「なし」以外の「タグ・ネームスペース」を選択し、「タグ・キー」を選択して、「タグ値」を選択または入力します:
        • フリーフォーム・タグの条件を設定するには、「タグ・ネームスペース」で、「タグ・ネームスペース」「なし」を選択し、「タグ・キー」を入力してから、オプションで「タグ値」を入力します。
        • 必要に応じてタグを追加します。
          ノート

          複数のタグを指定すると、ルールは、すべての条件が満たされた場合にのみ適用されます。
  • カスタム・リストを使用して単一のリソースの条件および入力を一度に追加することも、管理対象リストを使用して複数のリソースおよび入力を一度に追加することもできます。

: 10個のコンピュート・インスタンスがあるとします。2つのインスタンス(Instance1およびInstance2)は、パブリックである必要があるため、「インスタンスにパブリックにアクセス可能です」ルールによってこれらのインスタンスで問題をトリガーしないようにします。カスタム・リストまたは管理対象リストを使用して、これら2つのインスタンスを除外する条件グループを使用できます。

条件グループ・パラメータの有効な値

ディテクタ・レシピとレスポンダ・レシピの両方で、一部のルールに、1つ以上の有効な「値」エントリを入力する必要のある「パラメータ」オプションがあります。次のリストに、各パラメータ・タイプの有効な値を含むソースへのリンクを示します。リンクが使用できない場合は、有効な値を見つける方法の簡単な説明を示します。

カスタム・リストを使用したリソースの除外

照合するアイテムの数が少なく、同じリストを複数回再利用する必要がない場合は、カスタム・リストを使用します。

  1. 「インスタンスにパブリックにアクセス可能です」ルールが有効になっているディテクタ・レシピの詳細ページを開きます。

    ユーザー管理のOCIディテクタ・レシピの編集を参照してください。

  2. ディテクタ・レシピの詳細ページにある「ディテクタ・ルール」で、「インスタンスにパブリックにアクセス可能です」ルールの行を見つけます。
  3. その行の右端で、アクション・メニュー「アクション」メニューのイメージを開き、「編集」を選択します。
  4. 「ディテクタ・ルールの編集」ダイアログ・ボックスの「条件グループ」セクションで:
    1. 「パラメータ」「インスタンスOCID」に設定します。
    2. 「演算子」「次に含まれない」に設定します。
    3. 「リスト」「カスタム・リスト」に設定します。
    4. 「値」に、Instance1のOCIDを入力します。
  5. 条件の追加」をクリックします。
  6. 新しい条件行で:
    1. 「パラメータ」「インスタンスOCID」に設定します。
    2. 「演算子」「次に含まれない」に設定します。
    3. 「リスト」「カスタム・リスト」に設定します。
    4. 「値」に、Instance2のOCIDを入力します。
  7. 保存」をクリックします

    これで、「インスタンスにパブリックにアクセス可能です」ルールによってパブリック構成のすべてのインスタンスがモニターされますが、Instance1Instance2は除外されます。

管理対象リストを使用したリソースの除外

照合するアイテムの数が多く、同じリストを複数回再利用する必要がある場合は、管理対象リストを使用します。

  1. 最初に、Instance1Instance2のOCIDを含むインスタンスOCIDの管理対象リストを作成します。

    管理対象リストの作成を参照してください。

    たとえば、そのリストに「パブリック・コンピュート・インスタンスOCID」という名前を付けます。

  2. 「インスタンスにパブリックにアクセス可能です」ルールが有効になっているディテクタ・レシピの詳細ページを開きます。

    ユーザー管理のOCIディテクタ・レシピの編集を参照してください。

  3. ディテクタ・レシピの詳細ページにある「ディテクタ・ルール」で、「インスタンスにパブリックにアクセス可能です」ルールの行を見つけます。
  4. その行の右端で、アクション・メニュー「アクション」メニューのイメージを開き、「編集」を選択します。
  5. 「ディテクタ・ルールの編集」ダイアログ・ボックスの「条件グループ」セクションで:
    1. 「パラメータ」「インスタンスOCID」に設定します。
    2. 「演算子」「次に含まれない」に設定します。
    3. 「リスト」「管理対象リスト」に設定します。
    4. 「値」で、作成した管理対象リストの名前を選択します(ステップ1の例の場合は「パブリック・コンピュート・インスタンスOCID」)。
  6. 保存」をクリックします

    これで、「インスタンスにパブリックにアクセス可能です」ルールによってパブリック構成のすべてのインスタンスがモニターされますが、Instance1Instance2は除外されます。

    ノート

    将来管理対象リストに追加するコンピュート・インスタンスOCIDも、すべてモニタリングから除外されます。

レシピ・ルールでの管理対象リストおよびカスタム・リストの使用

管理対象リストでは、事前定義されたパラメータのリストを含めたり除外したりして、レシピ・ルールを適用するスコープをすばやく設定できます。カスタム・リストでは、同じ目的でパラメータの短いリストを入力できます。

構成ディテクタへの管理対象リストの適用

: コンピュート・インスタンスにパブリックIPアドレスがある場合に、問題をトリガーします。ただし、パブリックIPアドレスが必要なインスタンスがあるため、それらのインスタンスでは問題をトリガーしないようにします。

  1. パブリックIPアドレスが必要なコンピュート・インスタンスのすべてのリソースOCIDを含む管理対象リストを作成します。

    管理対象リストの作成を参照してください。

  2. この管理対象リストを「インスタンスにパブリックIPがあります」構成ディテクタ・ルールの「条件グループ」エントリとして割り当てます。

    ユーザー管理のOCIディテクタ・レシピの編集を参照してください。

アクティビティ・ディテクタへの管理対象リストの適用

: 特定の疑わしいIPアドレスから開始されたアクティビティによってバケットまたはインスタンスが作成される場合に、問題をトリガーします。

  1. 既知の疑わしいIPアドレスを含む管理対象リストを作成します。

    管理対象リストの作成を参照してください。

  2. この管理対象リストを「疑わしいIPアクティビティ」ディテクタ・ルールの「条件グループ」エントリとして割り当てます。

    ユーザー管理のOCIディテクタ・レシピの編集を参照してください。

または、特定の信頼できるIPアドレスからのみバケットまたはインスタンスを作成する必要があることがわかっている場合は、次を行います:

  • 信頼できるIPアドレスを含む管理対象リストを作成します。
  • 次に、「疑わしいIPアクティビティ」ディテクタ・ルールの「条件グループ」エントリで「次に含まれない」演算子を使用します。