Oracleのロール(ROLE)とは

Oracleのロール(ROLE)

Oracleは何をするにしても権限が必要です。権限がないとテーブルも作れない、データも登録できません。

しかし、この権限、非常に数が多く管理が大変です。そこでこの権限をセットにする機能があります。

権限の詰め合わせセット、それが「ロール」です。

例えば、「INSERT権限」「UPDATE権限」「DELETE権限」を1つのロールにまとめておけば、これから先の権限の管理が楽になります。

ロールの作成

ではロールを作成してみましょう。ロールの作成は「CREATE ROLL」で行います。

-- ROLE1を作成する 
CREATE ROLE ROLE1;

これで「ROLE1」というロールができました。

ロールに権限付与

でもロールはまだ空っぽの状態です。このロールに権限を付与します。

-- ROLE1にTABLE_Aに対するINSERT,UPDATE,DELETE権限を付与する 
GRANT INSERT,UPDATE,DELETE ON TABLE_A TO ROLE1;

これでロール「ROLE1」に3つのオブジェクト権限(「INSERT権限」「UPDATE権限」「DELETE権限」)を付与できました。

ユーザーにロールを付与

次にこのロールをユーザーに付与します。

-- ROLE1をSATOUに付与する  
GRANT ROLE1 TO SATOU;

これで「SATOU」ユーザーに「ROLE1」ロールを付与しました。「ROLE1」ロールは3つの権限があるので、「SATOU」ユーザーはこの3つの権限を付与されました。

ロールの使い方

「INSERT権限」「UPDATE権限」「DELETE権限」を1つずつ権限付与するのは大変ですが、ロールにまとめておけば、ロールの付与だけで済みます。

とても便利なのがロールです。

このように最初に権限詰め合わせセットであるロールを作っておけば、あとはこのロール権限を付与していけば、権限を1つ1つ付与しなくて済みます。

権限の管理は煩雑なので、ロールを上手に使いこなしてOracleの管理をシンプルにしていきましょう。

Oracleのロールのまとめ

  • Oracleの権限の管理は非常にたいへん
  • ロールは権限の詰め合わせセット
  • ロールに権限をまとめ、このロールを付与すれば権限管理が簡単になる

以上、Oracleのロール(ROLE)のまとめでした。

 

コメント