Oracle DB に読み取り専用ユーザー A を作成しました。(スキーマ X にアクセスできるが、何も変更できない人) 次に、ユーザー A にスキーマ X に対するテーブル作成権限を付与するよう求められます。
ただし、私の知る限り、ユーザー A にcreate any table特権を与えるか、 create table 特権を与えることができます。1 つは自分のスキーマでテーブルを作成するためのもので、もう 1 つはすべてのスキーマでテーブルを作成するためのものですが、これは推奨されません。
そのため、ユーザー A にcreate any table権限を付与し、ユーザー A が X 以外のスキーマでテーブルを作成できないようにするトリガーを作成しました。
ただし、ユーザー A としてトリガーを作成する必要がありましたが、A が所有者であるため、ユーザー A はそのトリガーを簡単に削除できます。ユーザー A が所有者であっても、ユーザー A がトリガーをドロップしないようにする方法はありますか?
私が経験した限りでは、トリガーはすでに自分のものであるため、ユーザー A はトリガーを削除したり、データベーストリガー権限を管理したりする必要はありません。
これに対する回避策はありますか? または、他のスキーマでテーブル作成権限を付与する別の方法を探す必要があります。
前もって感謝します。