Gif*_*guy 2 sql-server permissions stored-procedures metadata
我已被授予db_datareader访问我们的生产 SQL Server 数据库的denywrite权限,但他们也授予我权限,作为安全预防措施,以确保我绝对不会在调查过程中中断我们的服务。
但是,我发现我看不到我们的存储过程 - 列表显示为空。
我们的生产环境中应该有数百个存储过程,所以我很困惑为什么它们没有出现在对象资源管理器中。
我们的基础架构经理授予我权限,但他对 SQL Server 一无所知,因此管理层要求我协助确定我需要哪些 SQL Server 权限,因为我是开发人员。
所以我需要知道我在这里遗漏了什么 - 我假设db_datareader会让我查看所有内容,包括存储过程和元数据,但显然我错了。:)
诚然,在权限方面,我并不是最了解的。但是,我相信您在这里需要的最低权限是view definition. 如果对您的情况更有意义,您还可以将此权限授予角色。
use MyDB
GO
GRANT VIEW DEFINITION to MyUser
Run Code Online (Sandbox Code Playgroud)
以上将授予view_definition到MyUser了MyDB数据库。
更改为以下内容将授予view definition任何数据库:
use master
GO
GRANT VIEW ANY DEFINITION to MyUser
Run Code Online (Sandbox Code Playgroud)
资料来源:
https://msdn.microsoft.com/en-us/library/ms345443.aspx#Security http://www.mssqltips.com/sqlservertip/1593/granting-view-definition-permission-to-a-user-or -角色在-sql-server/
| 归档时间: |
|
| 查看次数: |
5540 次 |
| 最近记录: |