ストアドプロシージャをSELECT
データベースからのみに制限することは可能です。
正しく実行するデータのみを選択するストアドプロシージャと、、、操作を含むストアドプロシージャでUPDATE
、権限が不十分であることを示すエラーを返す必要があります。CREATE
DELETE
Sybase12.5を使用しています
ストアドプロシージャをSELECT
データベースからのみに制限することは可能です。
正しく実行するデータのみを選択するストアドプロシージャと、、、操作を含むストアドプロシージャでUPDATE
、権限が不十分であることを示すエラーを返す必要があります。CREATE
DELETE
Sybase12.5を使用しています
I think you're looking at the problem the wrong way. Essentially, once you give a user execute permission to a store procedure, they can execute that store procedure no matter what it does.
I think what you want to do is assign a "read-only" client role to your database and grant SELECT permissions as well as the execute permission on only the stored procedures that read data from the database. Add users to that role instead of granting them SELECT access on the database.
異なる手順へのアクションの書き込みと選択を分離します。次に、選択ユーザーが選択手順を実行し、書き込みユーザーが選択手順と書き込み手順を実行できるようにします。このトリックはPostgreSQLで非常にうまく機能します。