オペレータ・アクセス・コントロールによるログの管理および検索

コンパートメントで作成され使用中のオペレータ・コントロールのリストを表示できるように、ログを有効にする方法を説明します。また、ケージ内のオペレータ・アクティビティもモニターします。

オペレータ・アクセス・コントロールによるログの有効化とログ・グループの作成

システム上のOracleオペレータ・アクティビティを追跡するために、ログを有効にする方法とログを管理するためのログ・グループの作成方法について学習します。

Oracleオペレータがシステムで実行するアクションを監査するには、Oracleオペレータのアクションをモニターしようとするコンパートメントと特定のサービスの監査ログを作成します。
  1. 左側のナビゲーション・メニューで、「ロギング」「ログ」の順に選択します。
  2. 「サービス・ログの有効化」をクリックします。「リソース・ログの有効化」ウィンドウが開きます。
  3. 「リソースの選択」セクションで、各フィールドに情報を入力します:
    • リソース・コンパートメント: ログを作成するコンパートメントを選択します。
    • サービス: ログを有効にする「オペレータ・アクセス・コントロール・サービス」を選択します。
    • リソース: ログを有効にするオペレータ・コントロールを選択します。
  4. 「ログの構成」セクションで、次のフィールドに情報を入力します:
    • ログ・カテゴリ: 「アクセス・ログ」を選択します。
    • ログ名: 作成するログの名前を指定します。
  5. (オプション)「拡張オプションの表示」をクリックします。
  6. (オプション)「ログの場所」セクションで、次のフィールドに情報を入力します:
    • コンパートメント: 監査ログを作成するコンパートメントとは別のコンパートメントにログ・ファイルを配置する場合は、コンパートメントを選択します。
    • ログ・グループ: ログを追加するログ・グループを選択します。ログ・グループはログの論理コンテナです。ログ・グループを使用して、ポリシーの適用やログのグループの分析など、ログ管理を効率化します。新しいログ・グループを作成する場合は、「新規グループの作成」をクリックし、次のフィールドに情報を入力します:
      • コンパートメント: ログ・グループを配置するコンパートメントを選択します。
      • 名前: ログ・グループの名前を指定します。
      • 説明: ログ・グループの目的の説明を指定します。
    • 「タグ・ネームスペース」フィールドでは、タグ・ネームスペース(コンパートメントのセットに適用される識別テキスト文字列)の追加または既存のタグ・ネームスペースによるコントロールのタグ付けを検討します。
  7. 「ログの保持」セクションで、ログの保持期間を選択します。
  8. 終了し、選択内容を確認したら、「ログの有効化」をクリックします。オペレータ・コントロールに関するログが有効になります。

オペレータ・アクセス・コントロールのログ形式

ロギング・サービスで公開される監査ログに含まれるフィールドについて学習します。

表6-1 監査ログ・フィールド

フィールド 説明

data

Exadata監査ログから取得されたすべてのデータが含まれます。

data.accessRequestId

アクセス・リクエストのOracle Cloud Identifier (OCID)が含まれます。この識別子は、コンソールのアクセス・リクエスト・リスト・ページから取得されます。

data.message

RAW形式の監査ログが含まれます。監査ログの形式は、ausearchコマンドで出力される監査ロギングの形式です。

詳細は、ausearch(8)のマニュアル・ページを参照してください。

data.systemOcid

ログが収集されるExadataシステムのOracle Cloud Identifier (OCID)。

data.timestamp

ログが表すアクションが実行された時点のタイムスタンプ。通常は、協定世界標準時間(UTC)タイムゾーン(TZ)です。

source

ログを発行するサービス。ログのソースは、このサービスのOperatorAccessControlです。

ノート

その他いくつかのフィールドがありますが、主にサービスの明に関するものです。

例6-1 オペレータ・アクセス・コントロールの監査ログ

{
  "logContent": {
    "data": {
      "accessRequestId": "ocid1.opctlaccessrequest.oc1.ap-chuncheon-1.aaaaaaaaqk67mpzb74nsssg4ppwk7cyg46dwoxegtvhopdp7lxbktpymk4kq",
      "message": "type=PROCTITLE msg=audit(09/08/2021 09:01:24.335:34495595) : proctitle=ps -ef \ntype=PATH msg=audit(09/08/2021 09:01:24.335:34495595) : item=1 name=/lib64/ld-linux-x86-64.so.2 inode=2546207 dev=fc:00 mode=file,755 ouid=root ogid=root rdev=00:00 nametype=NORMAL cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 \ntype=PATH msg=audit(09/08/2021 09:01:24.335:34495595) : item=0 name=/usr/bin/ps inode=33619160 dev=fc:00 mode=file,755 ouid=root ogid=root rdev=00:00 nametype=NORMAL cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 \ntype=CWD msg=audit(09/08/2021 09:01:24.335:34495595) : cwd=/home/b9dc42d68f6e4e26a1d843a4c5e70187 \ntype=EXECVE msg=audit(09/08/2021 09:01:24.335:34495595) : argc=2 a0=ps a1=-ef \ntype=SYSCALL msg=audit(09/08/2021 09:01:24.335:34495595) : arch=x86_64 syscall=execve success=yes exit=0 a0=0x1848d50 a1=0x184c360 a2=0x184c040 a3=0x7ffeec95b760 items=2 ppid=94699 pid=95635 auid=b9dc42d68f6e4e26a1d843a4c5e70187 uid=b9dc42d68f6e4e26a1d843a4c5e70187 gid=opctl_facc1 euid=b9dc42d68f6e4e26a1d843a4c5e70187 suid=b9dc42d68f6e4e26a1d843a4c5e70187 fsuid=b9dc42d68f6e4e26a1d843a4c5e70187 egid=opctl_facc1 sgid=opctl_facc1 fsgid=opctl_facc1 tty=pts0 ses=813000 comm=ps exe=/usr/bin/ps key=(null) \n",
      "status": "",
      "systemOcid": "ocid1.exadatainfrastructure.oc1.ap-chuncheon-1.ab4w4ljr46tyytihmindrbshch3jjhrxxpctq4eiaksakp4kqamluuwkzdga",
      "target": "",
      "timestamp": "2021-09-08T09:01:24.000Z"
    },
    "id": "b3b102aa-daee-4861-8e2c-9014faac9de2",
    "oracle": {
      "compartmentid": "ocid1.tenancy.oc1..aaaaaaaazxdmffivtoe32kvio5e2dcgz24re5rqbkis3452yi2e7tc3x2erq",
      "ingestedtime": "2021-09-08T16:02:26.182Z",
      "loggroupid": "ocid1.loggroup.oc1.ap-chuncheon-1.amaaaaaajobtc3ia3iypuri32bhvrgmosztobwi72wgdofkpfdbyfg4yxlrq",
      "logid": "ocid1.log.oc1.ap-chuncheon-1.amaaaaaajobtc3iahnkkwizgpoakdafmrttikohparjl7icmcfjzkechekfq",
      "tenantid": "ocid1.tenancy.oc1..aaaaaaaazxdmffivtoe32kvio5e2dcgz24re5rqbkis3452yi2e7tc3x2erq"
    },
    "source": "OperatorAccessControl",
    "specversion": "1.0",
    "time": "2021-09-08T16:01:52.989Z",
    "type": "com.oraclecloud.opctl.audit"
  },
  "datetime": 1631116912989
}

ログの検索

ログの検索を実行するには、この手順を使用して、検索するログについてフィールド、時間範囲およびテキスト文字列を指定します。

ログは、特定のオペレータ・コントロールに対して有効化されます。したがって、これらがログ検索の最上位レベル・フィルタになります。また、アクセス・リクエストID、オペレータ・アクションが発生したExadataシステム、またはアクションが発生した時刻についてログを検索することもできます。

次の例は、特定のフィールドの検索方法を理解するために役立ちます。

  1. 左側のナビゲーション・メニューで、「ロギング」「ログ」の順に選択します。
  2. ログが格納されるコンパートメントを選択します。

    これにより、有効化されたログのリストが表示されます。

  3. 目的のログをクリックします。ログの詳細ページが表示されます。

    これらのログは、常に1つのオペレータ・コントロールに関連しています。

  4. 特定のログを検索するには、「ログ検索で探索」リンクをクリックします。
  5. ケース1: オペレータ・コントロールocid.opctl.xに関連して、T-startからT-endまでの期間に、特定のアクセス・リクエストocid.opctlaccessrequest.xの承認を使用して実行されたアクションの検索。
    1. 「時間によるフィルタ」フィールドで「カスタム」を選択します。
    2. 「開始日」および「終了日」を選択します。
    3. 「検索」をクリックします。

      選択した後で、一連のログが表示されます。

    4. ここで、たとえば、次の検索基準を「フィールドまたはテキスト検索によるフィルタ」フィールドに追加します。
      data.accessRequestId='ocid.opctlaccessrequest.x'

      これによって、検索基準と一致するログがリスト表示されます。

  6. ケース2: オペレータ・コントロールocid.opctl.xに関連して、T-startからT-endまでの期間のExadataシステムocid.exadata.xに対するアクションの検索。
    1. 「時間によるフィルタ」フィールドで「カスタム」を選択します。
    2. 「検索」をクリックします。

      選択した後で、一連のログが表示されます。

    3. ここで、たとえば、次の検索基準を「フィールドまたはテキスト検索によるフィルタ」フィールドに追加します。
      data.systemOcid ='ocid.exadata.x'

      これによって、検索基準と一致するログがリスト表示されます。

  7. 内容についてログを検索することもできます。「log-content」フィールドを使用します。詳細は、ログの検索を参照してください。
  8. 実行された特定のlinuxコマンドを検索するには、「拡張モード」を使用します。
    1. 前述の例(ケース1またはケース2)を使用して基本の検索を作成してから、拡張モードに切り替えます。
      たとえば、アクションviを使用してすべてのログを検索するには、次の基準を追加します:
      and text_contains(data.message, 'proctitle=vi ', true)
  9. ロギング検索ページで検索を実行するときは、「拡張モードの表示」をクリックして、独自のカスタム・ログ検索問合せを入力できます。
    例:
    search "ocid1.compartment.oc1..x/ocid1.loggroup.oc1.iad.loggroup_x/ocid1.log.oc1.iad.log_x"
     | data.systemOcid='ocid1.exadata.x' and text_contains(data.message, 'proctitle=vi ', true)
     | sort by datetime desc