设为首页 加入收藏

TOP

SqlServer服务器角色和数据库角色相关操作(二)
2015-11-21 01:49:54 来源: 作者: 【 】 浏览:1
Tags:SqlServer 服务器 角色 数据库 相关 操作
- 删除角色 DROP ROLE NewRole -- 当前 数据库角色 与 用户 关系 SELECT u.name as UserName,u.type_desc,u.default_schema_name,g.name as DBRole FROM sys.database_principals u inner join sys.database_role_members m on u.principal_id = m.member_principal_id inner join sys.database_principals g on g.principal_id = m.role_principal_id ORDER BY UserName,DBRole --对于数据库级别权限控制更改:某数据库――>安全性――角色――>数据库角色――>右键角色――>可自行添加成员

/*------------------------------------------------------------------------------------
								【数据库级别-应用程序角色】
------------------------------------------------------------------------------------*/

应用程序角色是一个数据库主体,只能通过其他数据库中为 guest 授予的权限来访问这些数据库
其他数据库中的应用程序角色将无法访问任何已禁用 guest 的数据库
可以只允许通过特定应用程序连接的用户访问特定数据
与数据库角色不同的是,应用程序角色默认情况下不包含任何成员,而且是非活动的
启用应用程序角色需要密码
应用程序角色无法访问服务器级元数据,若允许访问,需开启跟踪标志4616( DBCC TRACEON(4616,-1))


--	创建应用程序角色
CREATE APPLICATION ROLE [MyAppRole] WITH DEFAULT_SCHEMA = [dbo], PASSWORD = N'AppRole'


--	更改应用程序角色的名称、密码或默认架构
ALTER APPLICATION ROLE [MyAppRole] 
	WITH NAME = [AppRole],
	PASSWORD = 'AppRole',
	DEFAULT_SCHEMA = [dbo]


--	激活与当前数据库中的应用程序角色关联的权限(不能在其他存储过程或用户定义事务中执行)
DECLARE @cookie varbinary(8000)
EXEC sp_setapprole 
  @rolename = 'AppRole'
, @password = 'AppRole'
--, @password = { encrypt N'AppRole' }	--ODBC encrypt 函数加密
, @encrypt = 'none'						--'none'|'odbc':是否模糊加密处理
, @fCreateCookie = true					-- true|false :是否创建 cookie
, @cookie = @cookie OUTPUT				--获取应用程序角色之前安全上下文
SELECT @cookie	--记住cookie


--	查看当前登录用户(发现为 [AppRole])
SELECT CURRENT_USER,USER_NAME()


--	停用应用程序角色并恢复到前一个安全上下文(cookie 为sp_setapprole创建的)
EXEC sp_unsetapprole @cookie = 0x5E76DB4EF3E20388C5CBDE4FEB63DC409BAAD344D11919EF23AF18743A8B40BBEB3F972E3D84C5F7FBE2C1A853934EBC0100


--	删除应用程序角色
DROP APPLICATION ROLE [AppRole]


--	查看用程序角色
SELECT * FROM sys.sysusers WHERE isapprole = 1


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MSSQL 查询统计某状态出现的次数.. 下一篇SQLServer2008中添加用户角色以及..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: