oracle database technology night ~集え!オラクルの力(チカ...

44
Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | Oracle Database Technology Night 集え!オラクルの力(チカラ) Oracle Database 18c テクノロジーシリーズ 3 Cluster Health Advisor Security の機能強化」 DB Security 日本オラクル株式会社 ソリューション・エンジニアリング統括 クラウド・プラットフォーム本部 福田 知彦

Upload: others

Post on 08-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Oracle Database Technology Night ~ 集え!オラクルの力(チカラ) ~

Oracle Database 18c テクノロジーシリーズ 3「Cluster Health Advisor と Security の機能強化」~ DB Security ~

日本オラクル株式会社ソリューション・エンジニアリング統括クラウド・プラットフォーム本部福田知彦

Page 2: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

•以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。

文中の社名、商品名等は各社の商標または登録商標である場合があります。

Page 3: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

アジェンダ

3

Oracle Databaseの変更点

Advanced Securityの変更点

Database Vaultの変更点

1

2

3

Page 4: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Oracle Databaseの変更点

1. スキーマ限定アカウント

2. Active Directory Serviceとの連携

3. 統合監査証跡のSYSLOG、Windowsイベントビューアーへの出力

4. Data Pumpを利用した統合監査証跡のエクスポート/インポート

4

1

Page 5: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

1.スキーマ限定アカウント

• オブジェクトを所有するだけのログインできないアカウント

• オブジェクト所有者はオブジェクト自体の削除など強い権限を持つため、利用時に接続ユーザーとして利用すべきではない

• ログインできないのはロックをと同じだが、ログイン試行時の戻るエラーが違う–スキーマ限定アカウント:

ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。

–ロックされたユーザー:ORA-28000: アカウントがロックされています。

5

Page 6: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

•利用方法SQL> create user app1 no authentication;または

SQL> alter user app1 no authentication;

•確認方法SQL> select username, account_status, authentication_type, password_versions2 from dba_users where username like 'APP%';

USERNAME ACCOUNT_STATUS AUTHENTICATION_TYPE PASSWORD_VERSIONS-------- -------------- ------------------- -----------------APP1 OPEN NONEAPP2 OPEN PASSWORD 11G 12C

6

Page 7: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

2. Active Directoryとの連携

• Active Directory(AD)にデータベースへの認証を移譲

• 3つの認証方式をサポート–パスワード認証

– Kerberos認証

– PKI(証明書)認証

7

$ sqlplus "18ctest¥user1"/Welcome1@orclpdb

SQL*Plus: Release 18.0.0.0.0 Production on Thu Jun 21 15:07:30 2018Version 18.1.0.0.0

Copyright (c) 1982, 2017, Oracle. All rights reserved.

Last Successful login time: Wed Jun 20 2018 13:25:56 +09:00

Connected to:Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - ProductionVersion 18.1.0.0.0

SQL>

Page 8: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 8

Active Directory

Oracle Database

1. データベースにADの認証情報で接続

2. ローカルユーザーでないことを確認後、ADに認証情報が正しいかを確認

3. 認証情報が正しいことを確認し、ユーザーのDNと所属しているグループのDNを伝播

※ DN: distinguish name、LDAPで利用するフォーマットの識別名

4. 戻ってきたDNに対応するDBユーザー(グローバルユーザー)でデータベースに接続ADのグループに対応するDBロール(グローバルロール)の権限を付与

5. ログイン完了$ sqlplus "18ctest¥user1"/Welcome1@orclpdb

SQL*Plus: Release 18.0.0.0.0 Production on Thu Jun 21 15:07:30 2018Version 18.1.0.0.0

Copyright (c) 1982, 2017, Oracle. All rights reserved.

Last Successful login time: Wed Jun 20 2018 13:25:56 +09:00

Connected to:Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - ProductionVersion 18.1.0.0.0

SQL>

Page 9: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

•用語集–グローバルユーザー• AD上のユーザーやグループにマッピングされる、Oracle Database上に作成されるユーザー

• ADで認証されたユーザーがデータベースにログインするとこのユーザーでログインされる

• グローバルユーザーがADのグループにマッピングされた場合、そのADのグループに所属するユーザーはすべて同じグローバルユーザーとしてデータベースに接続される

–グローバルロール• AD上のグループにマッピングされる、Oracle Database上に作成されるロール

• グローバルロールには、通常のロールと同様にシステム権限、オブジェクト権限、ほかのロールを含める(GRANTする)ことができる

• グローバルロールがマッピングされたADのグループのメンバーがデータベースにログインした場合、グローバルロールに含まれる権限が利用可能となる

• ADで所属しているグループが異なれば、同じグローバルユーザーとしてデータベースにログインしてもことなるグローバルロールが付与され、結果実行できる操作が異なることもある

9

Page 10: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 10

Active Directory

Oracle Database

グローバルユーザー

user1

adshared

グローバルロール

addba

adresourcedba

resource

SELECT ANY TABLE

既存の権限やロール

GRANT

ユーザー

グループ

Users

orclpdb_dba

orclpdb_resource

user1

user2

user3

MEMBER

ADユーザーとグローバルユーザーのマッピング

ADグループとグローバルユーザーのマッピング

ADグループとグローバルロールのマッピング

user1

user2

user3

user1

adshared

adshared

dba

SELECT ANY TABLE

ログインユーザーログインしたスキーマ付与される権限

resource

上記設定でログインした場合のユーザーと権限の関連

Page 11: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

• AD接続の設定1. 連携時の各種操作を実施するユーザーをAD上に作成

2. パスワードフィルターのインストールとADのスキーマ拡張

3. 設定ファイル(dsi.ora)の作成

4. SSL認証用の証明書の取得

5. 接続用キーストア(Wallet)の作成

6. 初期化パラメータの変更

•接続用ユーザーの設定1. AD側の設定

2. DB側の設定

11

「セキュリティガイド」マニュアルの該当項目は、日本語と英語で記載内容が異なります日本語マニュアルの内容には誤りがあるので、詳しい手順は英語マニュアルを参照してください

Page 12: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

AD接続の設定

1. 連携時の各種操作を実施するユーザーをAD上に作成–データベースに接続するユーザーに対する「読み取り(Read)」権限と「lockoutTimeの書き込み(Write Lockout Time)」権限が必要

2. パスワードフィルターのインストールとADのスキーマ拡張– $ORACLE_HOME/binの下にあるopwdintg.exeコマンドをADサーバーにコピーし実行※現在、Windowsを英語環境にしないとコマンドが実行できない不具合があります

BUG 28174817 - EXTENDING AD SCHEMA BY OPWDINTG.EXE REQUIRES OS LANGUAGE SETTING BE ENGLISH

–スキーマの拡張後にADの再起動が必要

12

Page 13: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

3. 設定ファイル(dsi.ora)の作成–作成場所• 非CDB環境及びCDBレベルで適用する場合には、以下の優先順位で検索(ldap.oraと同じ)

1. $LDAP_ADMIN環境変数で指定したディレクトリ

2. $ORACLE_HOME/ldap/adminディレクトリ

3. $TNS_ADMIN環境変数で指定したディレクトリ

4. $ORACLE_HOME/network/adminディレクトリ

• PDB単位で指定する場合には、$ORACLE_BASE/admin/db_unique_name/pdb_guid/wallet

–記載内容• DSI_DIRECTORY_SERVERS:接続するADサーバー名とポートを記載

• DSI_DEFAULT_ADMIN_CONTEXT:ユーザーを検索するベースDNを指定

• DSI_DIRECTORY_SERVER_TYPE: 「AD」を指定

13

DSI_DIRECTORY_SERVERS = (dve.18ctest.local:389:636)DSI_DEFAULT_ADMIN_CONTEXT = "dc=18ctest,dc=local"DSI_DIRECTORY_SERVER_TYPE = AD

※非CDB環境及びCDBレベルで適用する場合には、 ldap.oraも利用可能

Page 14: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

4. SSL認証用の証明書の取得– ADと通信する際にSSL認証をおこなうため、ADの証明書を作成した認証局の証明書

(Active Directoryの認証局のルート証明書)を取得• 今回の環境では、「CN=18ctest-DVE-CA,DC=18ctest,DC=local」というDNの証明書

ADの証明書(今回の環境では「CN=DVE,OU=Domain Controllers,DC=18ctest,DC=local」というDNの証明書)ではないことに注意

14

Page 15: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

5. AD接続用キーストア(Wallet)の作成–作成場所• 非CDB環境及びCDBレベルで適用する場合には、以下の優先順位で検索

1. sqlnet.oraファイルにWALLET_LOCATIONを指定している場合には、その場所

2. $ORACLE_BASE/admin/db_unique_name/wallet

3. $ORACLE_HOME/admin/db_unique_name/wallet

• PDB単位で指定する場合には、$ORACLE_BASE/admin/db_unique_name/pdb_guid/wallet

以降の処理は上記ディレクトリに移動して実施します

–キーストアの作成orapki wallet create -wallet . -auto_login

– AD接続ユーザーの設定mkstore -wrl . -createEntry ORACLE.SECURITY.USERNAME oracle手順1.で作成したADのユーザー情報を指定します

15

Page 16: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

– AD接続ユーザーのDNの設定mkstore -wrl . -createEntry ORACLE.SEUCIRY.DN cn=oracle,cn=Users,dc=18ctest,dc=local

手順1.で作成したADのユーザー情報を指定します

– AD接続ユーザーのパスワードの設定mkstore -wrl . -createEntry ORACLE.SECURITY.PASSWORD※コマンド実行中にパスワードを入力します

–信頼できる証明書のインポートorapki wallet add -wallet . -cert dve-cert.cer -trusted_cert-certには手順4.で取得した証明書のファイルを指定します

16

Page 17: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

–設定の確認orapki wallet display -wallet . mkstore -wrl . -viewEntry ORACLE.SECURITY.USERNAME

17

$ orapki wallet display -wallet .Oracle PKI Tool Release 18.0.0.0.0 - ProductionVersion 18.1.0.0.0Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.

Requested Certificates:User Certificates:Oracle Secret Store entries:ORACLE.SECURITY.DNORACLE.SECURITY.PASSWORDORACLE.SECURITY.USERNAMETrusted Certificates:Subject: CN=18ctest-DVE-CA,DC=18ctest,DC=local

$ mkstore -wrl . -viewEntry ORACLE.SECURITY.USERNAMEOracle Secret Store Tool Release 18.0.0.0.0 - ProductionVersion 18.1.0.0.0Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.

Enter wallet password:ORACLE.SECURITY.USERNAME = oracle

Page 18: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

6. 初期化パラメータの変更– LDAP_DIRECTORY_ACCESS:ディレクトリ接続時の認証方式を指定 (デフォルト値:NONE)AD連携時にはPASSWORDを指定稼働中に変更可能PDBごとに指定可能(マニュアルではできないと誤記載)

alter system set ldap_directory_access='password';

– LDAP_DIRECTORY_SYSAUTH:LDAPで認証されるユーザーにSYSDBA、SYSOPER、SYSASM、SYSBACKUP、SYSDG、SYSKMなどの管理権限が付与されているとき、管理者として接続させるかどうかを指定 (デフォルト値:no)ADで認証するユーザーに管理者として接続を許可する場合はyesに変更変更には再起動(PDBのCLOSE/OPEN)が必要PDBごとに指定可能(マニュアルではできないと誤記載)

alter system set ldap_directory_sysauth='yes' scope=spfile;

18

Page 19: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

接続用ユーザーの設定

1. AD側の設定–Oracle Databaseの認証方式に対応するために以下のグループにユーザーを追加• ORA_VFR_12C:12cのパスワードベリファイア(SHA-512)を保持します

• ORA_VFR_11G: 11gのパスワードベリファイア(SHA-1)を保持します

• ORA_VFR_MD5:WebDAVクライアントのパスワードベリファイア(MD5)を保持します

–パスワードベリファイアを作成するために、ユーザーパスワードを変更(リセット)

19

Page 20: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

2. DB側の設定–グローバルユーザーの作成• ユーザーに紐づくグローバルユーザーの作成例

create user user1 identified globally as 'cn=user1,cn=Users,dc=18ctest,dc=local’;

grant create session to user1;

• グループに紐づくグローバルユーザーの作成例

create user adshared identified globally as 'cn=Users,dc=18ctest,dc=local’;

– (オプション)グローバルロールの作成create role adresource identified globally as 'CN=orclpdb_resource,CN=Users,DC=18ctest,DC=local’;

grant create session to adresource;

grant resource to adresource;

20

Page 21: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

3.統合監査証跡のSYSLOG、Windowsイベントビューアーへの出力

•統合監査証跡(の一部)を、SYSLOGやイベントビューアにも出力

•統合監査証跡表への出力がなくなるわけではない

• UNIFIED_AUDIT_SYSTEMLOG初期化パラメータ– Linux、UNIX:‘facility_clause.priority_clause' (デフォルトは未設定)• facility_clause::={ USER | LOCAL[0 | 1 | 2 | 3 | 4 | 5 | 6 | 7] }

• priority_clause::={NOTICE | INFO | DEBUG | WARNING | ERR | CRIT | ALERT | EMERG }

• 設定例:'USER.INFO'

–Windows: FALSE(デフォルト)、TRUE

21

Page 22: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

•出力例

22

Jun 20 10:59:05 ekam Oracle Unified Audit[29622]: LENGTH: '163' TYPE:"4" DBID:"3323024416" SESID:"1096821448" CLIENTID:"" ENTRYID:"1" STMTID:"1" DBUSER:"SYSTEM" CURUSER:"SYSTEM" ACTION:"100" RETCODE:"1017" SCHEMA:"" OBJNAME:""

Page 23: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

4. Data Pumpを利用した統合監査証跡のエクスポート/インポート

• データベース全体、もしくは一部のData Pumpエクスポート/インポート時に関連する統合監査証跡もダンプファイルに追加

• UNIFIED_AUDIT_TRAILビューをエクスポート/インポートできるわけではない

• コマンド実行例– expdp system full=y directory=dpdir dumpfile=expdp.dmp INCLUDE=AUDIT_TRAILS

23

Page 24: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Advanced Securityの変更点

1. PDBごとのキーストア

2. ユーザー定義マスター鍵

24

2

Page 25: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Advanced Security:透過的データ暗号化 (TDE:Transparent Data Encryption)

• NISTの標準共通鍵暗号方式 AES(28/192/256bit)に対応した強力な暗号アルゴリズムを利用した暗号化を実現します。

• アプリケーションからは透過的にデータの暗号化/復号化を行いますので、既存のアプリケーション(SQL)を改修する必要はありません。

• プロセッサの暗号化アクセラレーション(例:Xeon AES-NI)を併用することが可能です。データベース暗号化による性能劣化を極小化することが可能ですので、結果として投資対効果を高めることが可能となります。

25

ストレージに保存されるデータ(Data at Rest)をアプリケーションから透過的に暗号化

アプリケーション

SELECT name, cardnumberFROM credit;

ヤマダタロウ12345678123456

78

&he%@_0432aG5#g&3f_g0R1

Blg

暗号化

データファイルバックアップダンプファイル

Oracle CloudのDatabase Serviceはすべてのパッケージでこの暗号化機能を利用しています

強力な暗号アルゴリズムを利用して暗号化を行うことが可能です。データベースのみならず、バックアップやダンプファイルなどあらゆる物理ファイルを暗号化することで、機密性の高い情報を保護します。

Page 26: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

1. PDBごとのキーストア

• PDBの独立性、PDB間の分離性を担保するために、各PDBごとにキーストアを保持可能–統一モード• ひとつのキーストアですべてのCDB、PDBのマスター鍵を管理(デフォルト、下位互換)

–分離モード• PDBごとに異なるキーストアを利用

• PDB数が増えても鍵更新のパフォーマンスが落ちない

26

PDB1 PDB2 OEDEV

OEDEV

PDB3PDB1 PDB2 OEDE

VOEDE

VPDB3

統一モード 分離モード

Page 27: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

分離モードの利用のためのパラメータ

• WALLET_ROOT初期化パラメータ– CDBで設定する静的パラメータ

–キーストアを格納するディレクトリツリーのルートを指定

–指定したディレクトリの下のtdeディレクトリに非CDB/CDB用のキーストアを作成

–指定したディレクトリの下のpdb-guid/tdeディレクトリのPDB用のキーストアを作成

–非ASM環境での設定例• WALLET_ROOT=/opt/oracle/admin/orcl/wallet

– ASM/OMF/非CDB環境での設定例• WALLET_ROOT=+disk-group-name/OMF

– ASM/OMF/CDB環境での設定例• WALLET_ROOT=+disk-group-name/db-unique-name

27

Page 28: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

–WALLET_ROOTの変更方法の注意点• pfileを編集してspfileを作成

• ALTER SYSTEM SET~ SCOPE=SPFILEでは変更できない(?)

28

SQL> alter system set wallet_root=/opt/oracle/admin/orcl/wallet scope=spfile;alter system set wallet_root=/opt/oracle/admin/orcl/wallet scope=spfile

*ERROR at line 1:ORA-02095: specified initialization parameter cannot be modified

Page 29: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

• TDE_CONFIGURATION初期化パラメータ–キーストアの場所を指定するCDBおよび各PDBごとに指定する動的パラメータ

–設定方法• TDE_CONFIGURATION="KEYSTORE_CONFIGURATION=keystore_type"

• keystore_typeの値

– FILE: ソフトウェアキーストアを利用

– OKV:Oracle Key Vaultを利用

– HSM:ハードウェアキーストア(HSM:Hardware Security Module)を利用

– FILE|OKV:プライマリとセカンダリ。OKVからソフトウェアキーストアへの逆マイグレーション時に指定

– FILE|HSM:プライマリとセカンダリ。 HSMからソフトウェアキーストアへの逆マイグレーション時に指定

– OKV|FILE:プライマリとセカンダリ。 ソフトウェアキーストアからOKVへのマイグレーション時に指定

– HSM|FILE:プライマリとセカンダリ。ソフトウェアキーストアからHSMへのマイグレーション時に指定

29

Page 30: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

DBCS環境での分離モード利用手順• キーストアを保存するディレクトリの作成と既存のキーストアのコピー– $ mkdir -p /u01/app/oracle/admin/ORCL/wallet/tde

– $ cp /u01/app/oracle/admin/ORCL/tde_wallet/* /u01/app/oracle/admin/ORCL/wallet/tde

• CDBに対して初期化パラメータの設定– SQL> shutdown immediate

– SQL> create pfile from spfile;

– $ vi /u01/app/oracle/product/18.0.0/dbhome_1/dbs/initORCL.ora• wallet_root=/u01/app/oracle/admin/ORCL/wallet

• tde_configuration="keystore_configuration=file"

– SQL> create spfile from pfile;

– SQL> startup

30

Page 31: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 31

• PDBでの初期化パラメータの設定– SQL> alter session set container=pdb1;

– SQL> alter system set tde_configuration="keystore_configuration=file";

• PDB用のキーストアの作成と現在の鍵のコピー– SQL> administer key management isolate keystore identified by Welcome1# from

root keystore force keystore identified by Welcome1# with backup;

•自動ログインキーストアの作成– SQL> administer key management create auto_login keystore from keystore identified

by Welcome1#;

Page 32: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

2.ユーザー定義のマスター鍵

•格納データ暗号化のためのマスター鍵を、ADMINISTER KEYMANAGEMENTコマンドでデータベース内部で生成するのではなく、ユーザーが作成した鍵をマスター鍵として設定することが可能(BYOK:BringYour Own Key)

•鍵作成コマンド– ADMINISTER KEY MANAGEMENT SET KEY ['[mkid:mk | mk]’] USING TAG 'tag名'

IDENTIFIED BY "oracle12c" WITH BACKUP;• 12cまでの鍵作成コマンドに鍵ID(16バイト16進数)および鍵(利用する暗号化アルゴリズムにより32バイト(256bit)もしくは16バイト(128bit)の16進数)を指定する句が追加

• 鍵IDや鍵を省略した場合には12cまでどおり自動作成

32

SQL> administer key management set key '20203040506070801112131415161718:5D432109DF88967A541967062A6F4E460E892318E307F017BA048707B402493C' identified by welcome1 with backup;

Page 33: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Database Vaultの変更点

1. シミュレーションモードの機能拡張

2. Data Pumpを実行する権限(ロール)

3. Database Replay対応

33

3

Page 34: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

Database Vault

• データベースの特権ユーザやDBAロール、SELECT ANY TABLE権限からのアクセスを強制的に制御し、特権ユーザといえども自由なアクセスやコマンドの実行を制限します。

• 特権ロールを細かく分割定義し、付与することで、特権ユーザの職務分掌を実現します。例:DB管理は可能だが、業務データアクセスは不可能

• いかなる経路からのアクセスに対しても、データベース側で一律にデータを保護することが可能です。

• ユーザ、IPアドレスなどのセッション情報、曜日・時間などを組み合わせたルールに基づいてアクセスポリシーの作成が可能です。

34

データベース管理者などの特権ユーザの職務を分掌すると共に、アクセス制御を強化

顧客レルム

表- Customer- Order索引プロシージャ

Database Vaultのポリシー

ユーザ:ユーザA

IP Address: 192.168.1.XXX

Time: 9:00 – 17:00

ユーザA

運用管理者

✔ポリシーに合致するのでアクセス許可

Database Vaultのポリシーによりアクセス不可

DBサーバ

権限:DBAロール

権限:SELECT ANY TABLE権限

DB管理者やその成りすましによる不正閲覧・改竄、監査証跡削除を抑止し、情報漏洩リスクを最小化します。Database Vaultはアプリケーションからは透過的であり、アプリーケーションの改修は必須ではありません。

Page 35: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

1.シミュレーションモードの機能拡張

• Database Vaultで作成したポリシーの確認のために、ポリシー違反を遮断するのではなく、レポートだけしてSQL実行自体は継続するシミュレーションモードに以下の拡張が追加–すべての必須レルム違反の報告• ひとつのSQL文で複数の必須レルム違反があった場合、以前は最初のレルム違反しか報告しませんでしたが、すべてのレルム違反を報告するように変更

–すべてのコールスタック情報の報告• SQL内で呼び出されたスタックで違反があった場合、コールスタック情報を保持するようになったため、違反を起こしたもとのSQL文を特定可能

35

Page 36: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

2. Data Pumpを実行する権限(ロール)

•以前のリリースではユーザーにしかできなかったData Pumpを実行する権限が、18cではロールにも付与可能

• Data Pumpを実行する権限の管理がより柔軟に

36

Page 37: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

3. Database Replay対応

• Oracle Database Vault環境でDatabase Replayの利用が可能に– Data Pumpの利用と同じように専用の権限をPL/SQLパッケージで付与• DBMS_MACADM.AUTHORIZE_DBCAPTURE

• DBMS_MACADM.AUTHORIZE_DBREPLAY

–専用データディクショナリビューから付与状況を確認• DBA_DV_DBCAPTURE_AUTH

• DBA_DV_DBREPLAY_AUTH

37

※権限が付与できるのはユーザーだけでロールに対して付与はできません

Page 38: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

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

今さら?今こそ!データベースセキュリティ

http://www.atmarkit.co.jp/ait/series/6445/

データベースセキュリティナビ

https://blogs.oracle.com/sec/

38

参考情報

Page 39: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 39

テック・ナイトアーカイブ資料と お役立ち情報

各回テック・ナイトセッション資料ダウンロードサイト

oracle technight技術コラム津島博士の

パフォーマンス講座

技術コラムしばちょう先生の

試して納得!DBAへの道

もしもみなみんがDBをクラウドで動かしてみたら

Page 40: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 40

Page 41: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 41

〜 みなさまの投稿をお待ちしております 〜

#OracleTechNight

Twitter

Page 42: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 42

Oracle Digitalは、オラクル製品の導入をご検討いただく際の総合窓口。

電話とインターネットによるダイレクトなコニュニケーションで、どんなお問い合わせにもすばやく対応します。もちろん、無償。どんなことでも、ご相談ください。

Page 43: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle

Copyright © 2018, Oracle and/or its affiliates. All rights reserved. | 43

Page 44: Oracle Database Technology Night ~集え!オラクルの力(チカ …otndnld.oracle.co.jp/ondemand/technight/21-2_Security_DL... · 2018-11-14 · OracleとJavaは、Oracle