sql2008
怎样设置一个有密码的新用户,并只对他的转述数据库有权限.
怎样设置一个有密码的新用户,并只对他的转述数据库有权限.
解决方案 »
- 帮我认识触发器中INSERTED表的概念
- 两个表的表结构设计是一样的,一个字段作为主键,通过什么方式可以查找出两个表中存在的不同的记录,并把主键显示出来?
- Sql2000 的服务管理器的 【SQL Server】 启动不了,各位大侠快来帮忙!!!
- 有没有人帮我详细的说一下几种join关系
- 自己定义的数据库不能发现 急。。。。。
- 一個簡單的問題,如何往一個表中批量加入數據????
- 如果存储过程存在则删除怎么写?
- 求救:nvarchar(或varchar)字段的值中含有n个换行,如何在取一批记录(多个字段)时将换行去掉并返回?真的急!急急!急急!急!(tcyun)
- 求救interbase
- 问?急?
- asp如何连接sql2005
- 菜鸟问个关于SQL连接的问题
USE [master]
GO
CREATE LOGIN [xn] WITH PASSWORD=N'sa', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
EXEC master..sp_addsrvrolemember @loginame = N'xn', @rolename = N'sysadmin'
GO
USE [xn]
GO
CREATE USER [xn] FOR LOGIN [xn]
GO
创建角色,用户,权限/*--示例说明
示例在数据库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'
-- 创建登陆帐户
use master
go
create login usr with password='p@ssw0rd';
go-- 在 db 数据库下创建登陆帐户对应的用户帐户
use db
go
create user usr for login usr;
go
-- 将用户帐户加入 db_owner 数据库角色
exec sp_addrolemember 'db_owner','usr';
go
http://blog.csdn.net/xys_777/archive/2010/07/03/5710355.aspx