Sql server 如何在SQL Server 2008 R2中检查用户是否具有系统管理员权限
我有一个应用程序,应该只允许访问数据库系统管理员的用户。我可以从c代码中执行什么样的sql脚本或查询,在给定用户名的情况下,可以确定他/她是否具有系统管理员权限 系统规格:sql2008r2db、.net2.0、c#使用Sql server 如何在SQL Server 2008 R2中检查用户是否具有系统管理员权限,sql-server,security,sql-server-2008,Sql Server,Security,Sql Server 2008,我有一个应用程序,应该只允许访问数据库系统管理员的用户。我可以从c代码中执行什么样的sql脚本或查询,在给定用户名的情况下,可以确定他/她是否具有系统管理员权限 系统规格:sql2008r2db、.net2.0、c#使用 如果帐户是处于sysadmin角色的某个组的成员,则此解决方案不会提供正确的结果。DOMAIN\user1是DOMAIN\DBA的成员,DOMAIN\DBA是sysadmin角色,因此DOMAIN\user1是sysadmin。选中SELECT IS_SRVROLEMEMBER
如果帐户是处于sysadmin角色的某个组的成员,则此解决方案不会提供正确的结果。DOMAIN\user1是DOMAIN\DBA的成员,DOMAIN\DBA是sysadmin角色,因此DOMAIN\user1是sysadmin。选中SELECT IS_SRVROLEMEMBER('sysadmin','DOMAIN\user1')将导致NULL。Joe的查询为1,meirs的查询为NULL。
SELECT IS_SRVROLEMEMBER('sysadmin', 'YourLogin')