SQL2000からSQL2008に移行したばかりで、sp_OACreateを使用するストアドプロシージャで実行権限の問題が発生し始めました。
システムの残りの部分は、セットアップされてデータベースに追加されたdbログインで正常に動作します。
私はもう試した:
USE master
GO
GRANT EXEC ON sp_OACreate TO [dbuser]
GO
しかし、これは次のエラーで失敗します。
メッセージ15151、レベル16、状態1、行1ユーザー'dbuser'が存在しないか、権限がないため、ユーザー'dbuser'が見つかりません。
私は完全な権限でsaとしてサーバーにログインしています。同様のSQLステートメントを実行して、サーバーの役割にアクセス許可を適用できますが、ログイン/ユーザーは適用できません。
特定のユーザー/ログインに変更を適用するにはどうすればよいですか?
パブリックロールに権限を適用すると、問題が解決します。ただし、これはセキュリティの問題のようで、ライブサーバーには適用したくありません。