• 検索結果がありません。

Oracleデータベース監査:パフォーマンス・ガイドライン

N/A
N/A
Protected

Academic year: 2021

シェア "Oracleデータベース監査:パフォーマンス・ガイドライン"

Copied!
8
0
0

読み込み中.... (全文を見る)

全文

(1)

Oracleホワイト・ペーパー 2010年8月

Oracleデータベース監査:

(2)

はじめに

アプリケーションに対する脅威が複雑化するのに伴い、データベース監査がますます重要になっています。 実際、Oracleデータベース監査の使用は過去10年の間に確実に増えており、今日では多くの組織で必要不 可欠となっています。Independent Oracle User Group(IOUG)を対象に行った調査によると、回答者の 半分以上が何らかのレベルで標準のOracleデータベース監査を使用しているという結果が一貫して得られ ています。 データベース監査は一般に次の目的に使用されます。  監査者に対して内部統制が監視されていることを証明する  監査者に対してデータベース環境の変化に関する報告を行う  不正アクティビティに対する抑止力として機能する  データ侵害やその他の疑わしいアクティビティの調査を補助する  セキュリティ制御を迂回しようとする行為を検出する データベース監査とは、データベース内で発生するアクティビティを監視および記録することです。Oracle データベース監査は、新規リリースのたびに強化され、現在では、個々のセキュリティ要件に合わせて微 調整が可能で、高度にカスタマイズできる監査機能を提供しています。Oracle9i Databaseでは、ファイ ングレイン監査(FGA)機能が導入され、監査ポリシーをアプリケーション表と関連付けることができる ようになりました。Oracle Database 11gでの改良点としては、IPアドレスなどの接続要因に基づく監査 機能、および本番環境サーバー上の監査データに関するストレージおよび管理コストを削減する新しい組 込みの管理機能があります。 セキュリティ・ソリューションに関してもっともよくある質問はおそらく、"パフォーマンス上のオーバー ヘッドはどのくらいあるのか"という点です。これは、特に応答時間と可用性が利益に影響を及ぼすOracle ユーザーからよく寄せられる質問です。セキュリティ制御に関する機能はどれでもそうですが、データ ベース監査の場合もシステム・リソースが追加で必要になります。このホワイト・ペーパーでは、Oracle データベースの監査ポリシーを有効にしたときの、アプリケーションのスループットとCPUの使用状況へ

(3)

データベース監査の概要

Oracle監査は2つの基本的なカテゴリ、すなわち標準監査とファイングレイン監査(FGA)に分けられます。 標準監査では、ユーザー、特権、スキーマ・オブジェクト、文に基づいて監査を実行できます。たとえば、 特定のタイプのSQL文(create、alter、update、deleteなど)に基づいて監査を実行できます。FGAでは、デー タベースへの接続に使用されたIPアドレスやプログラム名などの要因に基づいて、条件に応じて特定のア プリケーション表の列に対するアクセスを監査できます。

Oracle Database 11gより導入されたOracle Database Configuration Assistant(Oracle DBCA)によって、コン プライアンスと内部統制のためにオラクルが推奨する最小限の監査設定を自動的に構成できます。これら の監査設定は、重要なセキュリティ関連のSQL文や特権に関連付けられており、Oracleセキュリティ関連 文書に一覧が掲載されています。Oracle DBCAによって作成されたデータベースは、デフォルトで、以下 の特権とSQL文を監査の対象にします。 表1 - Oracle Database 11gデフォルトの監査設定 ALTER ANY PROCEDURE

CREATE ANY TABLE GRANT ANY OBJECT PRIVILEGE

ALTER ANY TABLE CREATE EXTERNAL JOB GRANT ANY PRIVILEGE ALTER DATABASE CREATE PUBLIC DATABASE

LINK

GRANT ANY ROLE ALTER PROFILE CREATE SESSION PROFILE

ALTER SYSTEM CREATE USER PUBLIC SYNONYM ALTER USER DATABASE LINK ROLE

AUDIT SYSTEM DROP ANY PROCEDURE SYSTEM AUDIT CREATE ANY JOB DROP ANY TABLE SYSTEM GRANT CREATE ANY LIBRARY DROP PROFILE CREATE ANY PROCEDURE DROP USER

Oracleデータベース監査証跡

Oracleデータベースは、データベース表またはオペレーティング・システム・ファイルに対して監査レコー ドを書き込む機能を備えています。監査レコードをオペレーティング・システム・ファイルに書き込むよ う選択した場合は、オペレーティング・システムに対して、テキスト・ベースのファイルまたはXML形 式のファイルに書き込むのか、あるいはSYSLOG(UnixまたはLinuxの場合)またはEvent Viewer(Windows の場合)に直接書き込むのかを指示できます。OracleデータベースOS監査ファイルは、テキスト・ベース (拡張子.aud)またはXML形式(拡張子.xml)で出力できます。

(4)

Oracleデータベース監査証跡の構成

標準監査レコードを指示するデータベース・パラメータ(<sid>init.ora)は次のとおりです。 表2 - Oracleデータベース監査パラメータ パラメータ 説明 audit_trail DB 標準の監査内容をsys.aud$表に書き込む DB, EXTENDED 標準の監査内容をSQLテキストおよびそのSQLで実 行されたバインド変数の内容とともにsys.aud$に書 き込む OS 標準の監査内容をテキスト・ファイルに書き込む XML 標準の監査内容とFGA監査内容をXML形式のファ イルに書き込む XML, EXTENDED 標準の監査内容とFGA監査内容を、SQLテキストお よびバインド変数の内容とともにXML形式のファ イルに書き込む

audit_sys_operations TRUE/FALSE トップレベルのすべてのSYSDBAおよびSYSOPER のアクティビティを監査する。これらの監査レコー ドは、audit_trailパラメータの設定に関係なく、OS ファイルにのみ書き込まれる audit_syslog_level <FACILITY_CLAUSE. PRIORITY_CLAUSE> syslogのレベル情報を指定する

audit_file_dest <OS_DIRECTORY> OSおよびXML形式の監査ファイルを書き込むOS ディレクトリの場所を指定する FGAを使用すると、監査を実施するために必要な個々の条件を定義するポリシーを作成できます。ファイ ングレイン監査を追加および削除するには、DBMS_FGAパッケージを使用します。FGA監査ポリシーを使 用すると、監視対象の特定の操作またはオブジェクトに監査ポリシーを適用できます。FGAを使用すると セッション・コンテキストまたはデータ値に基づいてデータ・アクセスを監視できます。 FGAで提供される項目は次のとおりです。  ブール条件のチェック。指定したブール条件(たとえば、土曜日にアクセスされた表など)が真の場合 に監査が実行される

(5)

監査証跡管理

パフォーマンスとディスク領域を効率的に管理するには監査証跡レコードを適切に管理することが重要 です。DBMS_AUDIT_MGMTパッケージを使用すると、次の機能によって、監査証跡レコードを効率的に管 理できます。  すべての監査証跡タイプに対してクリーンアップ操作を実行します。最新のアーカイブ・タイムスタ ンプ値に基づいて監査証跡を消去します。最新のアーカイブ・タイムスタンプとは、安全にアーカイ ブされた最新の監査レコードのタイムスタンプを指します。  データベースの監査証跡表をSYSTEM表領域から移動します。これにより、SYSTEM表領域の負荷が軽 減され、最適化された表領域を監査レコード専用に使用できるので、データベース全体のパフォーマ ンスが向上します。  オペレーティング・システムとXML監査ファイルを管理します。最大サイズや監査ファイルの作成時 期などのプロパティを定義できます。これにより、OSおよびXML形式の監査ファイルのサイズを制限 できます。 最適なパフォーマンスを実現するため、オラクルでは、データベース表およびOSファイルに書き込むと き、次に示す"監査ベスト・プラクティス"に従うことを推奨しています。  領域管理の最適化 – 監査専用のユーザー定義の表領域(たとえば、AUDSYS)を作成します。監査証 跡表用に事前定義サイズ(1GB)のエクステントを設定しておきます。  負荷分散 - 監査証跡表sys.aud$とsys.fga_log$を、この新しいユーザー定義の表領域に移動します。  OS監査ファイル数の削減 - DBMS_AUDIT_MGMTパッケージを使用して、OS監査ファイルにより大き なファイル・サイズ(100MB)を設定します。

パフォーマンス・テストの結果

監査機能がオンの状態でOracleデータベースが使用するリソースを明示するために、監査レコードの書込 み先(データベース表sys.aud$またはオペレーティング・システム・ファイル)に基づいてテストを実行 しました。この書込み先には、TPC-Cに類似したワークロードによって毎秒約250件の監査レコードが生 成されるようにしました。TPC-Cに類似したワークロードを使用したのは、複雑なアプリケーション環境 における標準的なOLTPデータベース・アクティビティが再現されるからです。このワークロードは、あ らゆる業界に共通する複雑さを有する複数のタイプのトランザクションを同時に実行するものです。

マシン構成

Oracle Database Release 11.2.0.1を次の構成のハードウェアにインストールしました。

 3.40GHz Xeon CPU 4基

 4GBのメモリ

(6)

 OracleデータベースによるOSフラッシュ・コールがXML監査の書込みのたびに起動されるのを抑制し、 ディスクへのフラッシュをオペレーティング・システムに任せる。(9078032)  XML索引ファイルを削除する。(8880803)

監査によるパフォーマンス・オーバーヘッド

実世界のシナリオをシミュレートするため、監査を開始する前にシステム・リソースの50%を使用する標 準のワークロードを作成しました。テストを実行するたびに、次の結果を記録しました。  スループット:監査がオンになった後、トランザクションの実行にかかった時間の増分  CPU使用率の増分:監査がオンになった後、計測されたCPU使用率の増分 標準のデータベース監査では、Oracleデータベースの標準監査コマンドを使用して毎秒約250の監査レコー ドを生成するテストを作成しました。

表3 - Oracle Database 11.2.01標準監査証跡(CPUシステム負荷50%) 監査証跡 設定 スループット時間 の増分 CPU使用率 の増分 OS 1.39% 1.75% XML 1.70% 3.51% XML, Extended 3.70% 5.26% DB 4.57% 8.77% DB, Extended 14.09% 15.79% FGAでは、DBMS_FGAパッケージを使用して毎秒約200の監査レコードを生成するテストを作成しました。 監査ポリシーの条件では、TPCC.ORDL表に対してUPDATEまたはSELECTが実行され、なおかつclient_ identifierの値がNULLのとき監査レコードが作成されるようにしました。 dbms_fga.add_policy ( object_schema => 'TPCC', object_name => 'ORDL', policy_name => 'Config_A', audit_condition => 'SYS_CONTEXT(''USERENV'',''CLIENT_IDENTIFIER'') IS NULL', statement_types => 'UPDATE, SELECT',

(7)

表4 - Oracle Database 11.2.01ファイングレイン跡監査証跡(CPUシステム負荷50%) 監査証跡 設定 スループット時間 の増分 CPU使用率 の増分 XML 3.66% 4.35% XML, Extended 4.62% 9.09% DB 6.60% 11.11% DB, Extended 9.61% 20% この結果から、(キャラクタ・ベースであるかXMLベースであるかに関係なく)監査レコードをOSファ イルに書き込む方法がシステム・リソースへの影響がもっとも尐ないことが分かります。テストでは、毎 秒200件を超える監査レコードを生成しました。一般に、これはほとんどの環境で生成される監査レコー ドの数を上回っています。監査レコードの書込み件数が毎秒200件を下回る場合は、システム・リソース の消費量も尐なくなります。結果はシステムによって異なるため、ユーザー各自の環境でテストする必要 があります。

結論

アプリケーションに対する脅威はますます複雑化しており、データベース監査は、疑わしい行為を検出す るだけでなく、社内統制の証拠を監査者に提示するという点でも重要な役割を果たします。Oracleデータ ベース監査を使用すると、監査証跡の量が非常に多い場合でも、パフォーマンスに対する影響を最小限に 抑えることができます。最適なパフォーマンスを実現するため、オラクルでは、データベース監査レコー ドをオペレーティング・システム(OS)に書き込み、OS監査ファイルにより大きなファイル・サイズを 設定するよう推奨しています。オラクルのセキュリティ関連文書には、コンプライアンスと内部統制のた めに最小限の監査設定を行うベスト・プラクティス推奨事項が記載されています。データベース内の監査 は、多層防御アーキテクチャの一部に組み込む必要があります。

(8)

Oracleデータベース監査:パフォーマンス・ ガイドライン 2010年8月 著者:Tammy Bednar 共著者: Oracle Corporation World Headquarters

Copyright © 2010, Oracle and/or its affiliates.All rights reserved.

本文書は情報提供のみを目的として提供されており、ここに記載される内容は予告なく変更されることがあります。本文書は一 切間違いがないことを保証するものではなく、さらに、口述による明示または法律による黙示を問わず、特定の目的に対する商 品性もしくは適合性についての黙示的な保証を含み、いかなるほかの保証や条件も提供するものではありません。オラクルは本 文書に関するいかなる法的責任も明確に否認し、本文書によって直接的または間接的に確立される契約義務はないものとします。

参照

関連したドキュメント

当監査法人は、我が国において一般に公正妥当と認められる財務報告に係る内部統制の監査の基準に

対象自治体 包括外部監査対象団体(252 条の (6 第 1 項) 所定の監査   について、監査委員の監査に

(2)指摘、注意及び意見 ア 指摘 なし イ 注意 なし ウ 意見.

個別財務諸表において計上した繰延税金資産又は繰延

シーリング材の 部分消滅 内壁に漏水跡なし 内壁に漏水跡あり 内壁に漏水跡なし 内壁に漏水跡あり 内壁の漏水跡が多い.

18 VDRP Voltage output signal proportional to current used for current limit and output voltage droop 19 VDFB Droop Amplifier Voltage Feedback.. 20 CSSUM Inverted Sum of

さらに, 会計監査人が独立の立場を保持し, かつ, 適正な監査を実施してい るかを監視及び検証するとともに,

 11月 4 日の朝、 8