大阪市中央区 システムソフトウェア開発会社

営業時間:平日09:15〜18:15
MENU

ORACLEMASTER 備忘録7(7/10)

著者:伊関星児
公開日:2020/07/24
最終更新日:2020/07/24
カテゴリー:技術情報
タグ:

ORACLEMASTER 備忘録7(6/10)

 

続き

 

データベース操作のための権限付与

データベースへ接続するにはCREATE SESSION権限が必要であるは先述したが、それ以外にも、データベースからデータを取り出したり、データベースに何らかのオブジェクト(表や索引などを作成するには、それぞれの操作を実行するための「権限」が必要である。

そのため、データベース管理者は各ユーザーアカウントに対して、操作に必要な権限を付与する必要がある。

 

データベースにおける権限

権限は、“ユーザーによるデータベース操作を制御するために使用する”権限を付与することで、各ユーザーのデータベースに対する操作を一つ一つ制御できる。

例えば、データベースに接続するためには「CREATE SESSION」システム権限が必要であるし、表を作成するには「CREATE TABLE」システムの権限が必要である。また、表に対してのSELECT文を実行するには、その表に対しての「SELECT」オブジェクト権限が必要である。

 

権限の種類

権限にはシステム権限とオブジェクト権限の2種類がある。

 

・システム権限:

“特定のデータベース操作の実行”を許可するために使用する。例えば、表を作成するためには「CREATE TABLE」システム権限が必要。システム権限は常に管理者が付与する。地祇のようなシステム権限がある。

CREATE SESSION

CREATE TABLE

 

・オブジェクト権限:

“特定のデータベースオブジェクトへのアクセス”を制御するために使用する。例えば、AさんのEMP表に対してSELECT文を実行したい場合は、「SELECT ON A.emp」オブジェクト権限が必要。次のようなオブジェクト権限がある。

SELECT ON スキーマ名.オブジェクト名

INSERT ON スキーマ名.オブジェクト名

 

管理権限

データベースの作成やインスタンスの起動/停止の実行、バックアップ/リカバリといった、特別な管理操作を実行するための権限は、通常のシステム権限とオブジェクト権限では付与できない。この特別な管理権限は「SYSDBA」「SYSOPER」という特別なシステム権限によって付与される。

 

・SYSDBAシステム権限:

すべての権限を持つデータベース管理者用のシステム権限

・SYSOPERシステム権限:

基本的な管理タスクを実行するユーザー用のシステム権限。インスタンスの起動/停止はできるが、データベースの作成やユーザーデータの表示などはできない。

 

また、Oracle Database 12cからは「SYSBACKUP」「SYSDG」および「SYSKM」システム権限を使用できるようになった。Oracle Database 11g以前は、これらの操作を行うためにSYSDBAシステム権限を使用していた。

 

SYSBACKUPシステム権限:バックアップおよびリカバリ操作実行

SYSDGシステム権限:Data Guard操作の実行

SYSKMシステム権限:透過的データ暗号化キーストア操作の実行

    上に戻る