web-dev-qa-db-ja.com

行数がオブジェクトエクスプローラーの詳細に表示されるために必要な権限

奇妙なセキュリティ問題が発生しています。 SQL 2016サーバーでSSMS 18.2を使用しているユーザーがいます。それらはdb_datareaderのメンバーですが、オブジェクトエクスプローラーの詳細でRow Count列をプルアップすると、空白になります。行数を表示するためにDBOが必要であることは言うまでもありません。

読み取りアクセス権を持つユーザー: enter image description here

Dboアクセスを持つユーザー: enter image description here

これはバグですか、それとも意図的なものですか?この行数を与えるより低いレベルの権限があるかどうか誰かが知っていますか? sys.partitionsなど、行数を取得する方法は他にもたくさんありますが、ユーザーはOEDウィンドウを使用したいと主張しています。

8
Kenneth Fisher

少し実験を行ったところ、rowcountには「VIEW DATABASE STATE」が必要であることがわかりました。

方法:SSMSが実行し、データ読み取りアクセス許可のみを持つユーザーとして実行したキャプチャされたクエリ。特に1つはエラーをスローします。権限を付与した後、行数が表示されるようになったことを確認しました。

11