SQL Azure VIEW DATABASE STATE 权限在数据库中被拒绝 'master'

SQL Azure VIEW DATABASE STATE permission denied in database 'master'

当我执行以下查询时:

SELECT * FROM sys.dm_io_virtual_file_stats(NULL, NULL)

我收到错误:

Msg 262, Level 14, State 1, Line 4 VIEW DATABASE STATE permission denied in database 'master'. Msg 297, Level 16, State 1, Line 4 The user does not have permission to perform this action.

但我能够使用(由 SQL Azure 门户)配置的管理员用户执行此查询。

我无法将 master 的 VIEW DATABASE STATE(使用配置的管理员用户)授予我创建的任何用户,我收到以下错误: 授予者没有 GRANT 权限。

关于如何能够执行查询的任何想法

SELECT * FROM sys.dm_io_virtual_file_stats(NULL, NULL)

来自(由 SQL Azure 门户)管理员用户以外的用户?

On SQL Database Premium Tiers 需要数据库中的 VIEW DATABASE STATE 权限。 Master中不能授予权限,但可以在用户数据库中查询视图。 在 SQL 上,数据库标准层和基本层需要 SQL 数据库服务器管理员帐户,因为这些层的多租户有安全要求。

杰克是对的。

在多租户数据库层上,只有服务器管理员可以查询那些限定在服务器范围内的视图(需要 VIEW SERVER STATE 权限),那些限定在数据库范围内的视图可以由拥有 view_database_state 权限的任何人查询.

对于高级数据库,DBO 可以查询作用域为服务器和数据库的 DMV。

在一台服务器的master数据库上,没有人有查看数据库/查看服务器的权限。