SQL Server 2000 创建角色,用户,权限(转)

转载 2013年12月05日 15:03:32
创建角色,用户,权限

/*
--示例说明
        示例在数据库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 表的所有权限
GRANTALLON jobs TO r_test

--授予角色 r_test 对 titles 表的 SELECT 权限

GRANTSELECTON 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 权限
DENYSELECTON 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'
 
 

几个SQL server登陆,登录,用户,角色和组用到的系统存储过程

登录、用户、角色和组是 Microsoft? SQL Server? 2000 安全机制的基础。连接到 SQL Server 的用户必须使用特定的登录标识符 (ID) 标识自己。因此,用户只能查看经授权可以查看的表和视图,并且只能执行经授权可以执行的存储过程和管理功能。这一安全系统基于用来标识用户的 ID。

sp_addlogin

创建新的 SQL Server 登录,使用户得以连接使用 SQL Server 身份验证的 SQL Server 实例

sp_addrole

在当前数据库创建新的 SQL Server角色

--什么是角色???

例如,一个公司可能成立慈善活动委员会,其中包括来自不同部门,来自组织中各种不同级别的职员。这些职员需要访问数据库中特殊的项目表。没有只包括这些职员的现有 Windows NT 4.0 或 Windows 2000 组,而且没有其它理由在 Windows NT 4.0 或 Windows 2000 中创建这样一个组。可以为此项目创建一个自定义 SQL Server 数据库角色 CharityEvent,并将个别的 Windows NT 和 Windows 2000 用户添加到此数据库角色。当应用权限后,数据库角色中的用户便获得对表的访问权限。其它数据库活动的权限不受影响,只有 CharityEvent 用户可以使用该项目表。

 

SQL Server 角色存在于一个数据库中,不能跨多个数据库。

使用数据库角色的好处包括:

1.对于任何用户,都可以随时让多个数据库角色处于活动状态.如果所有用户、组和角色都在当前数据库中,则 SQL Server 角色可以包含 Windows NT 4.0 或 Windows 2000 组和用户,以及 SQL Server用户和其它角色。

2.在同一数据库中,一个用户可属于多个角色。

3.提供了可伸缩模型以便在数据库中设置正确的安全级别。

说明:数据库角色要么在创建角色时由明确指定为所有者的用户所拥有,要么在未指定所有者时为创建角色的用户所拥有。角色的所有者决定可以在角色中添加或删除谁。但是,因为角色不是数据库对象,不能在同一数据库中创建由不同用户所拥有的多个同名角色。

 

sp_addrolemember

将安全帐户作为当前数据库中现有 Microsoft? SQL Server? 数据库角色的成员进行添加。

sp_adduser

为当前数据库中的新用户添加安全帐户。

sp_defaultdb

更改登录的默认数据库

sp_defaultlanguage

 更改登录的默认语言

DE>sp_droploginDE>

 删除 Microsoft? SQL Server? 登录,以阻止使用该登录名访问 SQL Server

sp_grantlogin

使 Microsoft? Windows NT? 用户或组帐户得以使用 Windows 身份验证连接到 Microsoft SQL Server?。

sp_helpuser

报告有关当前数据库中 Microsoft? SQL Server? 用户、Microsoft Windows NT? 用户和数据库角色的信息

sp_password

添加或更改 Microsoft? SQL Server? 登录的密码

sp_revokelogin

从 Microsoft? SQL Server? 中删除用 sp_grantloginsp_denylogin 创建的 Microsoft Windows NT? 用户或组的登录项。

DE>xp_logininfoDE>

报告帐户、帐户类型、帐户的特权级别、帐户的映射登录名和帐户访问 Microsoft? SQL Server? 的权限路径

在SQL Server中创建用户角色及授权(使用SQL语句)

正文 要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权: 获得准许连接 SQL Server 服务器的权利;获得访问特定数据库中数据的权利(select, update...

关于SQL server 2000中的权限和角色

       在上一篇文章中,我没有把权限和角色说的太清楚。因为的当时我也不知道该如何说,这隐含的意思就是我对这两个的关系不是很理解。查了些资料,有些理解,现在记下了。不对的话再改吧。       使...

使用SQL BAK Reader 小工具查看SQL Server备份文件内容(不需要打开SQL Server)

使用SQL BAK Reader 小工具查看SQL Server备份文件内容(不需要打开SQL Server) 有时候我们没有SQL Server或者没有权限连接到SQL...
  • haiross
  • haiross
  • 2014年05月12日 13:44
  • 8483

sql server 创建角色,用户,权限

/*--示例说明         示例在数据库pubs中创建一个拥有表jobs的所有权限、拥有表titles的SELECT权限的角色r_test     随后创建了一个登录l_test,然后在数据...

SQL Server2014创建新用户以及为此用户创建角色或直接授予权限

相信有很多人和我一样在用SQL  Server2014 时会有些许疑惑,但是又由于版本问题网上解决问题的资源较少。因此下面我就为同学们介绍一下我在学习过程中遇到的问题以及解决办法。      一.为...

sql server 安全管理之用户、角色、架构 与 权限

--打开数据库 Use databaseName --创建角色 create role ProgramerRole --用于创建表 存储过程 视图 grantcreatetable,createpro...
  • ahywg
  • ahywg
  • 2011年05月05日 09:05
  • 3924

sql server2005安全管理之用户、角色、架构 与 权限

sql server2005安全管理之用户、角色、架构 与 权限 2008-12-04 16:47 --打开数据库 Use databaseName --创建角色 create...

sql server2005安全管理之用户、角色、架构 与 权限

最后一步,为具体的用户设置具体的访问权限,这个可以参考下面的最简示例: --添加只允许访问指定表的用户: exec sp_addlogin '用户名','密码','默认数据库名' --添...

SQL Server中创建用户角色及授权

要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权: 获得准许连接 SQL Server 服务器的权利;获得访问特定数据库中数据的权利(select, update, ...

在SQL Server中创建用户角色及授权

在SQL Server中创建用户角色及授权 要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权: 获得准许连接 SQL Server 服务器的权利;获得访问特...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server 2000 创建角色,用户,权限(转)
举报原因:
原因补充:

(最多只允许输入30个字)