ユーザーと権限管理
Oracle 管理で事故を起こしやすいのは権限の与えすぎです。初学者の段階で「誰に何を許可するか」の設計習慣を持つことが重要です。
最小権限の原則
- 開発用、運用用、参照専用ユーザーを分離する
- 必要な権限のみ付与し、不要権限は削除する
- 特権ユーザーは日常業務に使わない
ロール設計
CREATE ROLE app_readonly;
GRANT CREATE SESSION TO app_readonly;
GRANT SELECT ON employees TO app_readonly;
CREATE ROLE app_developer;
GRANT app_readonly TO app_developer;
GRANT INSERT, UPDATE, DELETE ON employees TO app_developer;
GRANT / REVOKE
GRANT app_readonly TO report_user;
REVOKE DELETE ON employees FROM app_developer;
監査の入口
本番環境では、接続失敗や重要テーブルへの DDL 実行を監査対象に設定します。まずは「何を追跡したいか」を運用ルールとして先に定義します。
DBA 権限を一括付与する運用は避けてください。短期的には楽でも、障害調査と監査のコストが増えます。