Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Oracle RDBMS 監査レコード

JSA の ORACLE RDBMS 監査レコードは、Oracle データベースからログを収集します。

次の表に、Oracle RDBMS 監査レコードの DSM の仕様を示します。

表 1: Oracle RDBMS 監査レコードの DSM 仕様

仕様

メーカー

Oracle

DSM 名

Oracle RDBMS 監査レコード

RPM ファイル名

DSM-OracleDbAudit-noarch.rpmJSA_version-build_number

サポートされるバージョン

9i、10g、11g、12c(統合監査を含む)

プロトコル

JDBC、Syslog

イベント形式

名前と値のペア

記録されたイベントタイプ

監査レコード

自動的に検出されましたか?

いいえ

アイデンティティを含む?

はい

カスタム プロパティが含まれていますか?

いいえ

詳細

Oracle Web サイト

Oracle RDBMS 監査レコードと JSA を統合するには、以下のステップを実行します。

  1. 自動更新が有効になっていない場合は、 Juniper Downloads から次の RPM の最新バージョンをダウンロードして JSA コンソールにインストールします。

    • プロトコル JDBC RPM

    • DSMCommon RPM

    • Oracle RDBMS監査レコードDSM RPM

  2. Oracle RDBMS 監査レコード デバイスを構成して、監査ログを書き込みます。

  3. JSA がログ ソースを自動的に検出しない場合は、JSA コンソールに Oracle RDBMS 監査レコード ログ ソースを追加します。次の表に、Oracle RDBMS 監査レコードから監査イベントを収集するために特定の値を必要とするパラメーターを示します。

    表 2:Oracle RDBMS 監査レコード Syslog ログ ソース パラメーター

    パラメーター

    ログ ソース タイプ

    Oracle RDBMS 監査レコード

    プロトコル構成

    Syslog

    ログ ソース識別子

    ログ ソースの一意の識別子を入力します。

    表 3: Oracle RDBMS 監査レコード JDBC ログ・ソース・パラメーター

    パラメーター

    ログ ソース タイプ

    Oracle RDBMS 監査レコード

    プロトコル構成

    JDBC

    ログ ソース識別子

    ログ ソースの名前を入力します。この名前にはスペースを含めることはできません。また、JDBC プロトコルを使用するように構成されているログ・ソース・タイプのすべてのログ・ソースで固有でなければなりません。

    ログ ソースが静的 IP アドレスまたはホスト名を持つ単一のアプライアンスからイベントを収集する場合は、アプライアンスの IP アドレスまたはホスト名を Log Source Identifier 値の全部または一部として使用します。たとえば、192.168.1.1 または JDBC192.168.1.1 などです。ログ ソースが静的 IP アドレスまたはホスト名を持つ 1 つのアプライアンスからイベントを収集しない場合は、 ログ ソース識別子 の値に任意の一意の名前を使用できます。例えば、JDBC1、JDBC2 などです。

    データベース タイプ

    Oracle

    データベース名

    監査ログを収集するデータベースの名前。

    IP またはホスト名

    Oracle データベースの IP またはホスト名。

    ポート

    JDBC ポートを入力します。JDBC ポートは、リモート・データベース上で構成されているリスナー・ポートと一致する必要があります。データベースは受信 TCP 接続を許可する必要があります。有効な範囲は 1 ~ 65535 です。

    デフォルトは次のとおりです。

    • MSDE - 1433

    • Postgres - 5432

    • MySQL - 3306

    • Sybase - 1521

    • Oracle - 1521

    • 9088

    • DB2 - 50000

    MSDE データベース タイプでデータベース インスタンスを使用する場合は、[Port] フィールドを空白のままにする必要があります。

    データベースに接続するためのユーザー アカウント。ユーザーには 、AUDIT_ADMIN または AUDIT_VIEWER 権限が必要です。

    パスワード

    データベースへの接続に必要なパスワード。

    事前定義されたクエリ

    ログ ソースの定義済みデータベース クエリを選択します。ログ ソース タイプで事前定義されたクエリが使用できない場合、管理者は [なし] オプションを選択できます。

    表名

    イベント レコードを含むテーブルまたはビューの名前。テーブル名には、ドル記号($)、数字記号 (#)、アンダースコア(_)、en ダッシュ(-)、ピリオド(.)の特殊文字を使用できます。

    リストを選択

    イベントに対してテーブルがポーリングされたときに含めるフィールドのリスト。カンマ区切りリストを使用するか、アスタリスク(*)を入力して、テーブルまたはビューからすべてのフィールドを選択できます。コンマ区切りリストが定義されている場合、リストには「 比較フィールド」で定義されているフィールドが含まれている必要があります。

    比較フィールド

    Oracle 9i または Oracle 10g リリース 1 の場合は、と入力します JSA_time

    Oracle 10g リリース 2、Oracle 11g、または Oracle 12c(非統合監査)の場合は、 を入力します extended_timestamp

    Oracle 12c(統合監査)の場合は、 を入力します event_timestamp

    Oracle 暗号化の使用

    Oracle Encryption and Data Integrity settings とも呼ばれます Oracle Advanced Security

    選択されている場合、Oracle JDBC 接続では、サーバーがクライアントと同様の Oracle データ暗号化設定をサポートする必要があります。

  4. JSA が正しく構成されていることを確認します。

    メモ:

    フォーマットの問題が原因で、メッセージ形式をテキストエディターに貼り付け、紙送りまたは改行文字を削除します。

    次の表は、Oracle RDBMS 監査レコードからの正規化されたイベント メッセージの例を示しています。

    表 4:Oracle RDBMS 監査レコードのサンプル・メッセージ

    イベント名

    低レベルのカテゴリー

    サンプル ログ メッセージ

    成功した SELECT

    システム アクションの許可

    OS_USERNAME: "os_username" USERNAME:
    "username" USERHOST: "userhost" TERMINAL:
    "terminal" TIMESTAMP: "2017-04-05 21:04:02.0"
    OWNER: "owner" OBJ_NAME: "PARTIAL_ALERT"
    ACTION: "3" ACTION_NAME: "SELECT" NEW_OWNER:
    "null" NEW_NAME: "null" OBJ_PRIVILEGE: "null"
    SYS_PRIVILEGE: "null" ADMIN_OPTION: "null"
    GRANTEE: "null" AUDIT_OPTION: "null"
    SES_ACTIONS: "null" LOGOFF_TIME: "null"
    LOGOFF_LREAD: "null" LOGOFF_PREAD: "null"
    LOGOFF_LWRITE: "null" LOGOFF_DLOCK: "null"
    COMMENT_TEXT: "null" SESSIONID: "xxxxxx"
    ENTRYID: "2" STATEMENTID: "2" RETURNCODE: "0"
    PRIV_USED: "null" CLIENT_ID: "null"
    ECONTEXT_ID: "null" SESSION_CPU: "null"
    EXTENDED_TIMESTAMP: "2017-04-05
    21:04:02.318133 America/Halifax"
    PROXY_SESSIONID: "null" GLOBAL_UID: "null"
    INSTANCE_NUMBER: "0" OS_PROCESS: "9276"
    TRANSACTIONID: "null" SCN: "3842851"
    SQL_BIND: "null" SQL_TEXT: "null"
    OBJ_EDITION_NAME: "null" DBID: "xxxxxxxxxx"

    監査に失敗しました

    構成の変更に失敗しました

    AUDIT_TYPE: "Standard" SESSIONID:
    "xxxxxxxxxx" PROXY_SESSIONID: "0"
    OS_USERNAME: "os_username" USERHOST:
    "userhost" TERMINAL: "terminal" INSTANCE_ID:
    "1" DBID: "xxxxxxxxxx" AUTHENTICATION_TYPE:
    "(TYPE=(DATABASE));" DBUSERNAME: "dbusername"
    DBPROXY_USERNAME: "null" EXTERNAL_USERID:
    "null" GLOBAL_USERID: "null"
    CLIENT_PROGRAM_NAME: "client_program_name"
    DBLINK_INFO: "null" XS_USER_NAME: "null"
    XS_SESSIONID:
    "000000000000000000000000000000000000000000000
    000000000000000000000" ENTRY_ID: "3"
    STATEMENT_ID: "11" EVENT_TIMESTAMP:
    "2017-04-05 20:44:21.29604" ACTION_NAME:
    "AUDIT" RETURN_CODE: "1031" OS_PROCESS:
    "1749" TRANSACTION_ID: "0000000000000000"
    SCN: "3841187" EXECUTION_ID: "null"
    OBJECT_SCHEMA: "null" OBJECT_NAME: "null"
    SQL_TEXT: "audit all" SQL_BINDS: "null"
    APPLICATION_CONTEXTS: "null"
    CLIENT_IDENTIFIER: "null" NEW_SCHEMA: "null"
    NEW_NAME: "null" OBJECT_EDITION: "null"
    SYSTEM_PRIVILEGE_USED: "null"
    SYSTEM_PRIVILEGE: "null" AUDIT_OPTION:
    "CREATE SESSION" OBJECT_PRIVILEGES: "null"
    ROLE: "null" TARGET_USER: "null"
    EXCLUDED_USER: "null" EXCLUDED_SCHEMA: "null"
    EXCLUDED_OBJECT: "null" ADDITIONAL_INFO:
    "null" UNIFIED_AUDIT_POLICIES: "null"
    FGA_POLICY_NAME: "null"
    XS_INACTIVITY_TIMEOUT: "0" XS_ENTITY_TYPE:
    "null" XS_TARGET_PRINCIPAL_NAME: "null"
    XS_PROXY_USER_NAME: "null"
    XS_DATASEC_POLICY_NAME: "null"
    XS_SCHEMA_NAME: "null"
    XS_CALLBACK_EVENT_TYPE: "null"
    XS_PACKAGE_NAME: "null" XS_PROCEDURE_NAME:
    "null" XS_ENABLED_ROLE: "null" XS_COOKIE:
    "null" XS_NS_NAME: "null" XS_NS_ATTRIBUTE:
    "null" XS_NS_ATTRIBUTE_OLD_VAL: "null"
    XS_NS_ATTRIBUTE_NEW_VAL: "null"
    DV_ACTION_CODE: "0" DV_ACTION_NAME: "null"
    DV_EXTENDED_ACTION_CODE: "0" DV_GRANTEE:
    "null" DV_RETURN_CODE: "0"
    DV_ACTION_OBJECT_NAME: "null"
    DV_RULE_SET_NAME: "null" DV_COMMENT: "null"
    DV_FACTOR_CONTEXT: "null" DV_OBJECT_STATUS:
    "null" OLS_POLICY_NAME: "null" OLS_GRANTEE:
    "null" OLS_MAX_READ_LABEL: "null"
    OLS_MAX_WRITE_LABEL: "null"
    OLS_MIN_WRITE_LABEL: "null"
    OLS_PRIVILEGES_GRANTED: "null"
    OLS_PROGRAM_UNIT_NAME: "null"
    OLS_PRIVILEGES_USED: "null" OLS_STRING_LABEL:
    "null" OLS_LABEL_COMPONENT_TYPE: "null"
    OLS_LABEL_COMPONENT_NAME: "null"
    OLS_PARENT_GROUP_NAME: "null" OLS_OLD_VALUE:
    "null" OLS_NEW_VALUE: "null"
    RMAN_SESSION_RECID: "0" RMAN_SESSION_STAMP:
    "0" RMAN_OPERATION: "null" RMAN_OBJECT_TYPE:
    "null" RMAN_DEVICE_TYPE: "null"
    DP_TEXT_PARAMETERS1: "null"
    DP_BOOLEAN_PARAMETERS1: "null"
    DIRECT_PATH_NUM_COLUMNS_LOADED: "0"

Oracle 12c での統合監査の有効化

Oracle 12c で統合監査を有効にするには、Oracle データベースをシャットダウンし、Oracle リスナー サービスを停止してから、Oracle データベースと Oracle Listener サービスを再起動する必要があります。

次の手順を実行するには、AUDIT_SYSTEMシステム権限またはAUDIT_ADMINロールが必要です。

  1. SQLplus を使用してデータベースに接続して Oracle データベースをシャットダウンし、次のコマンドを入力します。

    shutdown immediate

  2. 以下のコマンドを入力して、Oracle リスナー・サービスを停止します。

    lsnrctl stop

  3. 該当する場合は、次のコマンドを入力してエンタープライズ マネージャーを停止します。

    cd /u01/app/oracle/product/middleware/oms

    export OMS_HOME=/u01/app/oracle/product/middleware/oms

    $OMS_HOME/bin/emctl stop oms

  4. uniaud オプションを使用して Oracle DB を再リンクするには、次のコマンドを入力します。

    cd $ORACLE_HOME/rdbms/lib

    make -f ins_rdbms.mk uniaud_on ioracle

  5. SQLplus を使用してデータベースに接続して Oracle データベースを再起動し、次のコマンドを入力します。

    startup

  6. 次のコマンドを入力して、Oracle リスナー サービスを再起動します。

    lsnrctl start

  7. 該当する場合は、次のコマンドを入力してエンタープライズ マネージャーを再起動します。

    cd /u01/app/oracle/product/middleware/oms

    export OMS_HOME=/u01/app/oracle/product/middleware/oms

    $OMS_HOME/bin/emctl start oms

  8. 統合監査が有効になっていることを確認するには、SQLplus を使用して Oracle データベースに接続し、次のコマンドを入力します。

    select * from v$option where PARAMETER = 'Unified Auditing';

    コマンドが 「TRUE」と等しい VALUE を持つ 1 つの行を返すを確認します。

JSA に監査ログを送信するための Oracle データベース サーバーの構成

JsA に監査ログを送信するように Oracle デバイスを構成します。

  1. Oracle ユーザーとして Oracle ホストにログインします。

  2. 導入環境に対して ORACLE_HOME 、環境変数と ORACLE_SID 環境変数が適切に設定されていることを確認します。

  3. 次のファイルを開きます。

    ${ORACLE_HOME}/dbs/init${ORACLE_SID}.ora

  4. 次のいずれかのオプションを選択します。

    1. データベース監査証跡の場合は、次のコマンドを入力します。

      *.audit_trail='DB'

    2. syslog の場合は、次のコマンドを入力します。

      *.audit_trail='os'

      *.audit_syslog_level='local0.info'

      Oracle ホスト上の syslog デーモンが監査ログを JSA に転送するように構成されていることを確認する必要があります。Red Hat Enterprise を実行するシステムでは、 /etc/syslog.conf ファイルの次の行が転送に影響します。

      local0.info @ qradar.domain.tld

      イベントを受信するJSAのホスト名はどこにありますか qradar.domain.tld 。コマンドを認識するには、syslog 設定をリロードする必要があります。Red Hat Enterprise を実行するシステムで、次の行を入力して syslog 設定をリロードします。

      kill -HUP /var/run/syslogd.pid

  5. ファイルを保存して終了します。

  6. データベースを再起動するには、SQLplus に接続し、sysdba としてログインします。

  7. 次の行を入力してデータベースをシャットダウンします。

    shutdown immediate

  8. 次の行を入力して、データベースを再起動します。

    startup

  9. Oracle v9i または Oracle v10g リリース 1 を使用している場合は、SQLplus を使用して JSA 統合を有効にするビューを作成する必要があります。Oracle 10g リリース 2 以降を使用している場合は、このステップをスキップできます。

    AS SELECT CAST qradar_audit_viewビューを作成(dba_audit_trail.timestamp AS TIMESTAMP)AS qradar_time、dba_audit_trail.*をdba_audit_trailから。

    JDBC プロトコルを使用している場合、JSA 内で JDBC プロトコルを構成するときは、以下の特定のパラメーターを使用します。

    表 5:ログ ソース パラメータの設定

    パラメータ名

    Oracle v9i または 10g リリース 1 の値

    Oracle v10gリリース2およびv11gの値

    表名

    JSA_audit_view

    dba_audit_trail

    リストを選択

    *

    *

    比較フィールド

    JSA_time

    extended_timestamp

    データベース名

    サポートされるすべてのバージョンの Oracle では、 データベース名 は Oracle リスナーで使用される正確なサービス名である必要があります。Oracle ホストで次のコマンドを実行すると、使用可能なサービス名を表示できます。

    lsnrctl ステータス

    メモ:

    JSA が監査ログ テーブルからのイベントのクエリに使用するデータベース ユーザーに、Table Name オブジェクトに対する適切な権限を持っていることを確認します。

  10. JsA が Oracle データベースからイベントを受信するように構成できるようになりました。[ ログ ソース タイプ ] リストから、[ Oracle RDBMS 監査レコード ] オプションを選択します。