==Oracle Database10g データベースのセキュリティ==
[[Oracle][Oracle Database10g]]
===管理権限の制限===
====必要ないユーザーにDBAロールが付与されていないか確認====
*DBA_ROLE_PRIVSを検索を検索して確認
SQL> > select * from dba_role_privs
2 where granted_role = 'DBA'
3 /
====SYSDBA、SYSOPER 権限をもつユーザを確認====
*V$PWFILE_USERSを検索
SQL> > select * from v$pwfile_users;
USERNAME SYSDBA SYSOPER
*データ・ディクショナリを保護するために、[http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/server.102/B19228-04/initparams.htm#85701 O7_DICTIONARY_ACCESSIBILITY]初期化パラメータは必ずFALSE(デフォルト値)に設定
<<blockquote>>O7_DICTIONARY_ACCESSIBILITYは、SYSTEM権限の制限を制御します。このパラメータにtrueを設定すると、SYSTEM権限によるSYSスキーマ内のオブジェクトへのアクセスが許可されます(Oracle7の動作)。falseに設定すると、すべてのスキーマ内のオブジェクトへのアクセスが許可されるSYSTEM権限では、SYSスキーマ内のオブジェクトへアクセスできなくなります。<</blockquote>>
===PUBLICユーザーの権限管理===
=====試してみる=====
でたらめなパスワードで接続
SQL> > conn exam2/xxxxx@oradb1;
ERROR:
ORA-01017: invalid username/password; logon denied
正しいパスワードで接続
SQL> > conn exam2/abc123@oradb1;
ERROR:
ORA-28000: the account is locked
ロックされている