Dの小部屋

忘れやすい私のメモ帳

【Oracle 12Cのお勉強】 管理権限SYS×××

内容

12cで管理権限にSYSBACKUP、SYSDG、SYSKMが追加された。 既存のものを含めてまとめる。 SYSBACKUPは便利そうだ。

管理権限確認

▼ルートコンテナ

SQL> conn / as sysdba
接続されました。

SQL>  select * from v$pwfile_users;
USERNAME  SYSDBA SYSOPER SYSASM SYSBACKUP SYSDG SYSKM  CON_ID
--------- ------ ------- ------ --------- ----- ----- -------
SYS       TRUE   TRUE    FALSE  FALSE     FALSE FALSE       0
SYSDG     FALSE  FALSE   FALSE  FALSE     TRUE  FALSE       1
SYSBACKUP FALSE  FALSE   FALSE  TRUE      FALSE FALSE       1
SYSKM     FALSE  FALSE   FALSE  FALSE     FALSE TRUE        1

PDB

$ sqlplus sys/<password>@PDB1 as sysdba

SQL> select * from v$pwfile_users;
USERNAME                       SYSDB SYSOP SYSAS SYSBA SYSDG SYSKM     CON_ID
------------------------------ ----- ----- ----- ----- ----- ----- ----------
SYS                            TRUE  TRUE  FALSE FALSE FALSE FALSE          0

各権限について

SYSDBA

データベース全体を管理する権限。

SQL> conn / as sysdba
接続されました。

SQL> show user
ユーザーは"SYS"です。

SQL> SELECT * FROM SESSION_PRIVS ORDER BY 1;

PRIVILEGE
----------------------------------------
ADMINISTER ANY SQL TUNING SET
ADMINISTER DATABASE TRIGGER
ADMINISTER KEY MANAGEMENT

・・・(省略)・・・

UPDATE ANY CUBE DIMENSION
UPDATE ANY TABLE
USE ANY SQL TRANSLATION PROFILE

234行が選択されました。

SYSOPER

データベースの起動・停止を行う権限

SQL> conn / as sysoper
接続されました。

SQL> show user
ユーザーは"PUBLIC"です。

SQL> SELECT * FROM SESSION_PRIVS ORDER BY 1;

PRIVILEGE
----------------------------------------
CREATE SESSION
RESTRICTED SESSION
SYSOPER

SYSASM

ASM全体を管理する権限。

SYSACKUP

RMANやSQLを使用したバックアップ・リカバリ操作を実行することができる権限。

SQL> CONN / as sysbackup;
接続されました。

SQL> show user
ユーザーは"SYSBACKUP"です。

SQL> SELECT * FROM SESSION_PRIVS ORDER BY 1;

PRIVILEGE
----------------------------------------
ALTER DATABASE
ALTER SESSION
ALTER SYSTEM
ALTER TABLESPACE
AUDIT ANY
CREATE ANY CLUSTER
CREATE ANY DIRECTORY
CREATE ANY TABLE
DROP TABLESPACE
RESUMABLE
SELECT ANY DICTIONARY
SELECT ANY TRANSACTION
SYSBACKUP
UNLIMITED TABLESPACE

SYSDG

データガードの操作を実行することができる権限。

SQL> CONN / AS SYSDG
接続されました。

SQL> show user
ユーザーは"SYSDG"です。

SQL> SELECT * FROM SESSION_PRIVS ORDER BY 1;

PRIVILEGE
----------------------------------------
ALTER DATABASE
ALTER SESSION
ALTER SYSTEM
SELECT ANY DICTIONARY
SYSDG

SYSKM

暗号鍵を管理するユーザ

SQL> conn / as syskm
接続されました。

SQL> show user
ユーザーは"SYSKM"です。

SQL> SELECT * FROM SESSION_PRIVS ORDER BY 1;

PRIVILEGE
----------------------------------------
ADMINISTER KEY MANAGEMENT
SYSKM