0

専門家

ITチームの許可を設定しようとしています。すべてのITスタッフはITグループのメンバーです。問題のデータベースでは、ITスタッフグループはdb_reader、db_readerのメンバーであり、すべてのSP/Funを実行できます。オブジェクトを変更する権限を与えたい特定のユーザー。

CREATE USER [S\Al] FOR LOGIN [S\Al] WITH DEFAULT_SCHEMA=[dbo]

彼をdb_ddlAminロールに追加しました

EXEC sp_addrolemember N'db_ddladmin', N'S\Al'

私たちのデータベース内のすべてのオブジェクトはDBOスキーマに属しています..だから私はユーザーにdboスキーマの変更権限を与えています

GRANT ALTER ON SCHEMA::[dbo] TO [S\Al]

しかし、このユーザーがspを変更したり、テーブルを削除したりしようとすると、

プロシージャ'XX'が存在しないか、権限がないため、変更できません。テーブル'XX'が存在しないか、権限がないため、削除できません。

このユーザーは新しいテーブルを作成できますが、新しく作成されたテーブルを削除しようとすると、アクセス許可エラーが発生します。

このユーザーは、グループがdb_ownerまたはdb_ddladminロールのいずれかのメンバーである他の4つのグループのメンバーです。

私は何を間違っているのですか、どうすればこれを解決できますか?

ありがとう

VT

4

1 に答える 1

0

ロールのメンバーは、db_ddladminストアド プロシージャを変更できる必要があります。

正しいデータベースのロールにユーザーを追加したことを確認してください。

use YourDatabase;
EXEC sp_addrolemember N'db_ddladmin', N'S\Al'

明示的な がなければ、彼をデータベースのロールuseのメンバーにした可能性があります!masterdb_dlladmin

于 2012-10-03T10:38:43.560 に答える