Oracleには高度な管理操作を実行するために必要な「管理権限」が用意されています。これは一般的によく知られる「システム権限」や「オブジェクト権限」とは異なるものです。多くの方はこの「システム権限」の中に以下権限も含まれていると思っているのではないでしょうか。実は私も最初はそう思っていました。でも実は違います。その証拠にシステム権限であるなら、DBA_SYS_PRIVSに含まれるはずですがこれらは含まれていません。その代わり以下の管理権限については「V$PWFILE_USERS」で確認する事ができます。(Oracleのマニュアルを読んでいると「SYSDBAシステム権限」と呼称されている部分もあるから紛らわしいですね。上記のような理由があるので、きちんと呼び分けてほしいです)
No. | 管理権限 | 解説 |
1 | SYSDBA | すべての権限を持つデータベース管理者用 |
2 | SYSOPR | SYSOPER権限は、基本的な運用タスクを実行するがユーザー・データを表示する権限は持たないユーザー用です |
3 | SYSASM | ASMストレージ管理権限を区別できるシステム権限です |
4 | SYSBACKUP | SYSBACKUP権限には、データベースのバックアップおよびリカバリに必要なすべての権限が含まれています |
5 | SYSDG | Oracle Data Guardを管理および監視する権限 |
6 | SYSKM | 透過的データ暗号化(TDE)のウォレット操作を管理できます |
select * from V$PWFILE_USERS order by username ;
SQL> set sqlformat ansiconsole
SQL> select * from V$PWFILE_USERS
2 ;
USERNAME SYSDBA SYSOPER SYSASM SYSBACKUP SYSDG SYSKM CON_ID
____________ _________ __________ _________ ____________ ________ ________ _________
SYS TRUE TRUE FALSE FALSE FALSE FALSE 0
SYSDG FALSE FALSE FALSE FALSE TRUE FALSE 0
SYSBACKUP FALSE FALSE FALSE TRUE FALSE FALSE 0
SYSKM FALSE FALSE FALSE FALSE FALSE TRUE 0
SQL>