Oracleのスキーマレベルの権限の欠如をどのように処理しますか?オラクルのセキュリティアーキテクチャは、オブジェクトレベルの権限のみを必要とするアプリケーションに適しています。また、制限をほとんど必要としないDBAにも適しています。ただし、フロントエンドアプリケーションと複数のスキーマのPL / SQLを使用して開発を行うプログラマにとって、アーキテクチャには大きなギャップがあるようです。以下に、私のオプションとその欠点をいくつか示します。
各プログラマーが独自のスキーマで開発を行うようにします。DBAは、それらを必要とするプログラマーにオブジェクトレベルの特権を付与します。パッケージ開発はすべてDBAが行う必要があります。主な欠点は、プログラマーがデータベースのパフォーマンスを損なうために、少しバケットのようにデータベースを使用することです。プログラマーにデータベースで開発してほしいのですが、この方法では大いに落胆します。
各プログラマーに開発に必要な12個程度のスキーマのユーザー名/パスワードを与えます。これらのアプリケーションスキーマにプロシージャ、テーブルなどを作成するためのアクセス許可を与えます。このアプローチの欠点のいくつかは、複数のログイン自分自身としてログインすることはほとんどありません。クロススキーマ開発も困難です。
プログラマーが開発に必要な各スキーマのプロキシ認証特権を付与します。これにより、プロキシ権限以外の権限を付与する必要なく、ユーザーは自分自身としてログインしたままになります。欠点には、プロキシするスキーマごとに個別の接続を維持する必要があるプログラマーが含まれます。接続を絶えず変更する必要があるため、クロススキーマ開発はより面倒です。また、認証に合格したパブリックデータベースリンクを使用するパッケージは、プロキシ接続内でコンパイルされません。
各プログラマにDBA特権を付与します。–ここでの欠点はセキュリティです。スキーマプログラマーをスキーマから締め出すことはできず、プログラマーは他のプログラマー(DBA)になりすますことができます。
各プログラマーにSELECT / INSERT / CREATE / etcを付与するオプションがないようです。開発を行うために必要なスキーマに対する権限。自分でログインして、1つの接続を使用して作業を行います。アクセスできるスキーマ内の新しいオブジェクトはすぐに使用できます。
何か不足していますか?PL / SQL開発を行うアプリケーションプログラマをどのように扱いますか?