こんにちは。
ALH開発エンジニアのR.Kです。
以前『Oracle Database SQL 受験レポート』の記事を書きましたが、
今回は、そんなOracle DBにおける権限とロールの話です。
初めに
現場でOracleデータベースを操作している際に「権限がありません」といった文言が表示され、やりたい操作ができないことがしばしばありました。
権限のことは知ってはいましたが、細かなことは調べたことがなかったのでこれを機会に調べてみました。
調べたことをまとめましたので、少しでも参考になれば幸いです。
権限とは
Oracleデータベースでは、ユーザーが*特定の操作を実行する場合にそれぞれの操作に対応した権限が必要になります。
そして権限には大きく分けて、システム権限とオブジェクト権限があり、権限は人に付与することと、人から取り消すことができます。
この権限がないとデータベースにアクセスすることも、表の作成をすることもできませんので注意です。
*特定の操作:データベースに接続する、表を作成する、データを検索するなど
システム権限
システム権限のイメージ
オブジェクト権限
オブジェクト権限とは
・他ユーザーが所有するオブジェクト(表、ビューなど)に対する操作を制御する権限
オブジェクト権限のイメージ
管理権限(特殊なシステム権限)
ロールとは
複数の権限を1つにまとめて取り扱いやすくしたもの(権限のグループ化)
で、ロールは自分で作成することができ、権限の追加・削除ができ、またロールを他ユーザーに付与することができます(※ロールに関するシステム権限が必要)
さらにロールの中に別のロールを付与することもできます。
事前定義済みロール
権限とロールの違い
権限
ロール
参考:ふたつのユーザー
まとめ
・Oracleデータベース上で特定の操作をするには対応する権限が必要
・権限にはシステム権限とオブジェクト権限の2つがある
→権限の数は非常に多いので都度調べてみてください!
・ロールを使用すると、複数の権限をまとめて取り扱うことができる
・デフォルトで管理用のSYS/SYSTEMユーザーが設定されている
→取り扱いに注意!
↓ ↓ ↓ 採用サイトはこちら ↓ ↓ ↓
↓ ↓ ↓ ALHについてはこちら ↓ ↓ ↓
↓ ↓ ↓ もっとALHについて知りたい? ↓ ↓ ↓