Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Oracle how-to-audit-backup

1,091 views

Published on

その監査ログきちんと扱えてますか?
統合監査で始める監査ログの活用秘伝技大公開!

Published in: Engineering
  • Be the first to comment

Oracle how-to-audit-backup

  1. 1. その監査ログきちんと扱えてますか? 統合監査で始める監査ログの 活用秘伝技大公開! @mogmet 2016/09/12 JPOUG in 15 minutes #1
  2. 2. About me • twitter: @mogmet • 好物:iOS, php, MySQL, Oracle • 仕事:インフラエンジニア→iOSエンジニア→フリーランスなDBA • ブログとか: http://mogmet.com/ • 作ったアプリたち↓
 ワンナイト人狼 for iPhone STARBUCKSHOLIC 最近12c Platinum移 行試験受けてきました
  3. 3. Oracleの監査方法について
  4. 4. 今までのOracleでの監査
  5. 5. 今までのOracleでの監査 必須監査 特権ユーザ監査 audit_file_dest
  6. 6. 今までのOracleでの監査 標準監査 audit_file_dest SYS.AUD$
  7. 7. 今までのOracleでの監査 FGA監査 SYS.FGA_LOG$
  8. 8. 今までのOracleでの監査 Oracle Database Vault監査 DVSYS. AUDIT_TRAIL$
  9. 9. いろんなところに設定とか 格納場所がちらばりすぎている!!
  10. 10. 12cからのOracleでの監査
  11. 11. 12cからのOracleでの監査 必須監査 特権ユーザ監査 標準監査 FGA監査 Oracle Database Vault監査
  12. 12. 12cからのOracleでの監査 DataPump操作監査 RMAN操作監査 Oracle Label Seurity操作監査 Real Application Security操作監査 etc…
  13. 13. 12cからのOracleでの監査 全て1つにまとめました!
  14. 14. 12cからのOracleでの監査 SYS.UNIFIED_AUDIT_TRAIL に!!!!
  15. 15. 12cからのOracleでの監査 そう、統合監査ならね
  16. 16. How to backup
  17. 17. How to backup audit_file_dest ファイルをそのまま バックアップ
  18. 18. How to backup RMANを用いて DBもしくは表領域単 位でバックアップ DVSYS. AUDIT_TRAIL$ SYS.FGA_LOG$ SYS.AUD$ RMAN SYS. UNIFIED_AUDIT_TRAIL
  19. 19. How to backup expdpで論理的に バックアップ expdp DVSYS. AUDIT_TRAIL$ SYS.FGA_LOG$ SYS.AUD$ SYS. UNIFIED_AUDIT_TRAIL
  20. 20. ではhow to read?
  21. 21. How to read audit_file_dest そのまま 見る!
  22. 22. How to read RMANを用いて DBもしくは表領域単 位でリストア DVSYS. AUDIT_TRAIL$ SYS.FGA_LOG$ SYS.AUD$ RMAN SYS. UNIFIED_AUDIT_TRAIL
  23. 23. How to read impdpで論理的に 戻す impdpDVSYS. AUDIT_TRAIL$ FGA_LOG$ AUD$ UNIFIED_AUDIT_TRAIL
  24. 24. 監査ログを見る シチュエーション
  25. 25. cf:http://oldhatcreative.com/sites/default/files/styles/blog-full-preview/public/blog-featured-images/A_long_time_ago.png?itok=GC0cDPZt
  26. 26. cf: http://amaraawathi.com/files/article_images/746.jpg
  27. 27. cf: http://amaraawathi.com/files/article_images/746.jpg 弊社システムは統合監査を使って 監査を行い、毎日監査ログを バックアップ後パージしている。 そのため、過去一年の監査ログを バックアップから復元して調査 したいな♡ 超宇宙的意訳
  28. 28. cf: http://amaraawathi.com/files/article_images/746.jpg あ、でも、監査ログは本番環境 使ってみてね★ 超宇宙的意訳
  29. 29. RMANを用いた場合
  30. 30. RMANを用いた場合 昔の物理バックアップから戻すって 表領域のPITRでするしかない!?
  31. 31. RMANを用いた場合 そもそも本番環境で そんなリスキーなことしたくない
  32. 32. 結論:RMANで戻す REJECTED
  33. 33. そういえば12cの新機能で
  34. 34. http://docs.oracle.com/cd/E57425_01/121/BRADV/ release_changes.htm#GUID-942161A2- E33E-4AE2-8122-F90DAB15FA58 バックアップの新機能
  35. 35. RMANバックアップからの 表および表パーティションのリカバリ
  36. 36. これなら物理バックアップ でもいけるのでは!? RMANバックアップからの 表および表パーティションのリカバリ
  37. 37. 仕組み RMANバックアップからの 表および表パーティションのリカバリ
  38. 38. 補助インスタンス 本番インスタンス RMANバックアップ リストア expdp x impdpでインポート
  39. 39. 補助インスタンス使うのは なんか負荷高くなりそうで怖くない? RMANバックアップからの 表および表パーティションのリカバリ
  40. 40. やっぱリスキー! RMANバックアップからの 表および表パーティションのリカバリ
  41. 41. 結論:RMANバックアップからの 表および表パーティションのリカバリ REJECTED
  42. 42. 物理バックアップから戻す REJECTED そもそも期間データを 取り出すのに向いていない
  43. 43. impdpを用いた場合
  44. 44. impdpを用いた場合 1年分のダンプのファイル数 すごくない?!
  45. 45. impdpを用いた場合 365回もimpdpを入力するのは
 手間感がある
  46. 46. 結論:impdpで戻す REJECTED
  47. 47. (๑´•.̫ • `๑)
  48. 48. 更に別の方法を考える
  49. 49. 外部表
  50. 50. 外部表 外部ファイルを表として扱える!
  51. 51. 外部表
  52. 52. 外部表 DATAPUMPアクセスドライバ を使うとダンプファイルが読み込める !!!111
  53. 53. 試しにやってみる 外部表
  54. 54. expdpのtablesオプションで指定の表だけを ダンプしたダンプファイルを生成 外部表
  55. 55. expdp system/oracle tables=backaud dumpfile=backaud1.dmp 外部表
  56. 56. expdpで生成した ダンプファイルで外部表を作ってみる 外部表
  57. 57. CREATE TABLE MUKASHI_NO_KANSA ( "AUDIT_TYPE" VARCHAR2(64), "SESSIONID" NUMBER, ... "DIRECT_PATH_NUM_COLUMNS_LOADED" NUMBER ) ORGANIZATION EXTERNAL ( TYPE ORACLE_DATAPUMP DEFAULT DIRECTORY data_pump_dir LOCATION ('backaud1.dmp', 'backaud2.dmp') ); 複数ファイル指定できる!
  58. 58. … ) TYPE ORACLE_DATAPUMP DEFAULT DIRECTORY data_pump_dir LOCATION ('backaud1.dmp', 'backaud2.dmp') 103 ); Table created.
  59. 59. とりあえずできた! ので中身を見てみる 外部表
  60. 60. SQL> select * from MUKASHI_NO_KANSA; ERROR: ORA-29913: error in executing ODCIEXTTABLEOPEN callout ORA-39324: cannot load data from Data Pump dump file "/u01/app/oracle/admin/prod1/ dpdump/backaud1.dmp" no rows selected
  61. 61. expdpのファイルは 使えない! 外部表
  62. 62. 外部表のDATAPUMPアクセスドライバ を用いてて出力してあげる 外部表
  63. 63. CREATE TABLE backup_na_kansa ORGANIZATION EXTERNAL ( TYPE ORACLE_DATAPUMP DEFAULT DIRECTORY data_pump_dir LOCATION ('backaud1.dmp') ) AS SELECT * FROM unified_audit_trail;
  64. 64. data_pump_dirに、backaud1.dmp が出力される 外部表
  65. 65. One more chance 外部表
  66. 66. CREATE TABLE MUKASHI_NO_KANSA ( "AUDIT_TYPE" VARCHAR2(64), "SESSIONID" NUMBER, ... "DIRECT_PATH_NUM_COLUMNS_LOADED" NUMBER ) ORGANIZATION EXTERNAL ( TYPE ORACLE_DATAPUMP DEFAULT DIRECTORY data_pump_dir LOCATION ('backaud1.dmp', 'backaud2.dmp') ); 今度は外部表作成時に出来た ダンプファイルを指定
  67. 67. SQL> select count(*) from MUKASHI_NO_KANSA; COUNT(*) ---------- 240
  68. 68. 複数のバックアップからでも外部 表が出来た!!! 外部表
  69. 69. 結論:外部表を使う ACCEPTED
  70. 70. まとめ
  71. 71. まとめ • 物理バックアップから戻すときは期間のデータ を取り出しづらい • 期間のデータなら論理バックアップのほうが
 扱いやすい • 外部表のDATAPUMPアクセスドライバを使えば ファイル名の指定だけでデータを読み込める
  72. 72. Thank you for listening!

×