/*--示例说明
示例在数据库pubs中创建一个拥有表jobs的所有权限、拥有表titles的SELECT权限的角色r_test
随后创建了一个登录l_test,然后在数据库pubs中为登录l_test创建了用户账户u_test
同时将用户账户u_test添加到角色r_test中,使其通过权限继承获取了与角色r_test一样的权限
最后使用DENY语句拒绝了用户账户u_test对表titles的SELECT权限。
经过这样的处理,使用l_test登录SQL Server实例后,它只具有表jobs的所有权限。
--*/
USE pubs
--创建角色 r_test
EXEC sp_addrole 'r_test'
--授予 r_test 对 jobs 表的所有权限
GRANT ALL ON jobs TO r_test
--授予角色 r_test 对 titles 表的 SELECT 权限
GRANT SELECT ON titles TO r_test
--添加登录 l_test,设置密码为pwd,默认数据库为pubs
EXEC sp_addlogin 'l_test','pwd','pubs'
--为登录 l_test 在数据库 pubs 中添加安全账户 u_test
EXEC sp_grantdbaccess 'l_test','u_test'
--添加 u_test 为角色 r_test 的成员
EXEC sp_addrolemember 'r_test','u_test'
--拒绝安全账户 u_test 对 titles 表的 SELECT 权限
DENY SELECT ON titles TO u_test
/*--完成上述步骤后,用 l_test 登录,可以对jobs表进行所有操作,但无法对titles表查询,虽然角色 r_test 有titles表的select权限,但已经在安全账户中明确拒绝了对titles的select权限,所以l_test无titles表的select权限--*/
--从数据库 pubs 中删除安全账户
EXEC sp_revokedbaccess 'u_test'
--删除登录 l_test
EXEC sp_droplogin 'l_test'
--删除角色 r_test
EXEC sp_droprole 'r_test'
分享到:
相关推荐
创建表空间、创建用户以及授权、查看权限 创建表空间、创建用户以及授权、查看权限
DM数据库创建用户、表空间、给用户授权的sql语句,及导入导出命令语句
DB2创建用户及赋予权限原创晚春 最后发布于2016-08-24 16:20:35 阅读数 26284 收藏展开DB2-创建用户和组,数据库1、增加一个操作系统
在zimbra中批量新建用户,以相同密码和不同密码两种方式创建用户
SQLServer 数据库新建数据库和新建用户,并给此用户该数据库的权限
批量创建用户,使用ECATT批量创建用户,可以带角色或不带角色
创建用户.sql qq:292258449
完整的创建一一个用户并分配其相应的权限,以及如何删除一个非空文件夹的命令
此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。 增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他...
批量按指定属性新建新用户; 批量解锁用户; 批量重置用户密码; 批量禁用/启用用户; 批量删除用户; 批量设置用户属性; 批量查看组属性; 批量添加用户到组; 批量从组中删除用户; 从OU中获取组,联系人和计算机...
Jenkins创建用户并分配不同视图的权限
调用openstack api接口创建用户
该资源提供了sonar webAPI的方式创建用户、删除用户、项目权限赋值等相关脚本实现方式
详解oracle创建用户.doc详解oracle创建用户.doc
Windows Server下通过命令行创建用户和组,有具体练习举例。
aix操作系统环境下创建用户,aix系统与linux系统创建用户不相同,不能统一方法使用,在aix下创建完整的用户
oracle基本命令创建用户,有详细的内容介绍怎么创建用户
本文将介绍的是通过创建一张表,进而实现Oracle创建用户权限的过程。以下这些代码主要也就是为实现Oracle创建用户权限而编写
oracle创建用户以及授权命令,可在toad等工具下执行创建用户以及相应的权限设置。
Oracle10g创建、修改、删除用户和用户表空间.