0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

oracle テーブル 権限 備忘録

Posted at

Oracle 19c では、特定の表に対してのみユーザーに SELECT 権限を付与し、不要な権限を与えないように管理できます。以下にその手順をまとめます。

  1. ユーザーの作成

まず、新しいユーザーを作成します。

CREATE USER user_name IDENTIFIED BY password;

  1. 基本的な権限の付与

ユーザーがデータベースに接続できるようにするために、CONNECT 権限を付与します。

GRANT CONNECT TO user_name;

  1. 特定の表に対して SELECT 権限を付与

ユーザーに特定の表に対する SELECT 権限を付与します。

GRANT SELECT ON schema_name.table_name TO user_name;

複数の表に対して権限を付与する場合、それぞれの表に対して個別に実行します。

GRANT SELECT ON schema_name.table_name1 TO user_name;
GRANT SELECT ON schema_name.table_name2 TO user_name;

  1. ロールを使用して権限を管理(オプション)

複数のユーザーに同じ権限を付与したい場合は、ロールを作成し、そのロールに対して権限を付与する方法が便利です。

CREATE ROLE select_role;

GRANT SELECT ON schema_name.table_name1 TO select_role;
GRANT SELECT ON schema_name.table_name2 TO select_role;

GRANT select_role TO user_name;

これにより、権限の管理が簡単になり、複数のユーザーに対して一括で権限を付与できます。

  1. ユーザーやロールの権限を取り消す

ユーザーの権限を取り消す

特定の表に対するユーザーの SELECT 権限を取り消すには、以下のコマンドを使用します。

REVOKE SELECT ON schema_name.table_name FROM user_name;

他の権限(INSERT, UPDATE, DELETE など)も取り消すことができます。

REVOKE INSERT ON schema_name.table_name FROM user_name;
REVOKE UPDATE ON schema_name.table_name FROM user_name;
REVOKE DELETE ON schema_name.table_name FROM user_name;

ロールの権限を取り消す

ロールに対する特定の権限を取り消す場合、以下のようにします。

REVOKE SELECT ON schema_name.table_name FROM select_role;

  1. ユーザーやロールの削除

ユーザーの削除

ユーザーを削除し、そのユーザーが持つオブジェクトも一緒に削除するには、CASCADE オプションを使用します。

DROP USER user_name CASCADE;

オブジェクトを保持したい場合は、手動で処理した後、ユーザーを削除します。

DROP USER user_name;

ロールの削除

不要になったロールは以下のコマンドで削除できます。

DROP ROLE select_role;

  1. ユーザーやロールの権限を変更

GRANT や REVOKE コマンドを使って、ユーザーやロールの権限を随時変更することができます。

ユーザーに UPDATE 権限を付与する場合:

GRANT UPDATE ON schema_name.table_name TO user_name;

ロールから INSERT 権限を取り消す場合:

REVOKE INSERT ON schema_name.table_name FROM select_role;

これらの手順を通じて、ユーザーやロールに対する権限を柔軟に管理し、特定の表へのアクセスのみを許可し、不要な権限を付与しないように制御できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?