/*SQL安全性*/
/*通过企业管理器设置安全性*/
/*注意!部分版本的SQL默认为只允许windows用户登陆,sa的登陆将无效,
解决方法是在企业管理器右击左边控制台目录的服务器图标,选属性/安全性选项卡,
将“仅windows”单选钮改选为“SQL server和windows”即可
*/
--1.控制台/服务器目录/安全性/登录,右击/新建登录
----1)名称下输入登录用户名,身份验证下选择“sql身份验证”,输入密码
---- 选择该用户登陆默认数据库及语言
----2)单击服务器角色,选择该登录在服务器上的权限,各权限意义如下:
------a)system adminstrators
------ 可执行 SQL Server 安装中的任何操作。
------b)security adminstrators
------ 可管理服务器的登录。
------c)server adminstrators
------ 可配置服务器范围的设置
------d)setup adminstrators
------ 可以管理扩展的存储过程
------e)process adminstrators
------ 可以管理运行在 SQL Server 中的进程
------f)disk adminstrators
------ 可以管理磁盘文件
------g)database creators
------ 可以创建和更改数据库
------h)bulk insert adminstrators
------ 可以执行大容量插入操作
----可点击属性查看权限的相关信息
----3)单击数据库访问选项卡,选择该登录可访问的数据库及数据库角色
----数据库角色:
------a)public
------public 角色
------public 角色是一个特殊的数据库角色,每个数据库用户都属于它。public 角色:
------捕获数据库中用户的所有默认权限。
------无法将用户、组或角色指派给它,因为默认情况下它们即属于该角色。
------含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库。
------无法除去。
------b)db_owner
------进行所有数据库角色的活动,以及数据库中的其它维护和配置活动。
------该角色的权限跨越所有其它固定数据库角色。
------c)db_accessadmin
------在数据库中添加或删除 Windows NT 4.0 或 Windows 2000 组和用户以及 SQL Server 用户。
------d)db_datareader
------查看来自数据库中所有用户表的全部数据。
------e)db_datawriter
------添加、更改或删除来自数据库中所有用户表的数据
------f)db_ddladmin
------添加、修改或除去数据库中的对象(运行所有 DDL)
------g)db_securityadmin
------管理 SQL Server 2000 数据库角色的角色和成员,并管理数据库中的语句和对象权限
------h)db_backupoperator
------有备份数据库的权限
------i)db_denydatareader
------拒绝选择数据库数据的权限
------j)db_denydatawriter
------拒绝更改数据库数据的权限
--2.数据库/用户/新建用户
--通过用户名与登录名进行关联
--如果已经将数据库角色设置好,将自动关联与登录名相同的用户名
--若修改用户名应先将该用户删除再进行关联
--若无关联,该登录用户名将会显示dbo
--若该登录的服务器角色为system adminstrators,则user将恒为dbo
--用户与登录为1对1的关联关系
/*通过查询分析器管理安全性*/
/*新建登录*/
exec sp_addlogin 'lecky','123','sales'
--参数1登录名参数2密码参数3默认数据库
/*承担服务器角色*/
sp_addsrvrolemember 'lecky','sysadmin'
--参数1登录名,参数2为固定服务器角色
--注意:此处与企业管理器的服务器角色名称不同,为简写,如下:
----sysadmin在 SQL Server 中进行任何活动。该角色的权限跨越所有其它固定服务器角色。
----serveradmin 配置服务器范围的设置。
----setupadmin 添加和删除链接服务器,并执行某些系统存储过程(如 sp_serveroption)。
----securityadmin 管理服务器登录。
----processadmin 管理在 SQL Server 实例中运行的进程。
----dbcreator 创建和改变数据库。
----diskadmin 管理磁盘文件。
----bulkadmin 执行 BULK INSERT 语句。
/*将已经创建的登录映射为数据库用户,并授予数据库角色*/
exec sp_adduser 'lecky','lecky','public'
--参数1登录名,参数2用户名,参数3数据库角色
/*通过企业管理器设置安全性*/
/*注意!部分版本的SQL默认为只允许windows用户登陆,sa的登陆将无效,
解决方法是在企业管理器右击左边控制台目录的服务器图标,选属性/安全性选项卡,
将“仅windows”单选钮改选为“SQL server和windows”即可
*/
--1.控制台/服务器目录/安全性/登录,右击/新建登录
----1)名称下输入登录用户名,身份验证下选择“sql身份验证”,输入密码
---- 选择该用户登陆默认数据库及语言
----2)单击服务器角色,选择该登录在服务器上的权限,各权限意义如下:
------a)system adminstrators
------ 可执行 SQL Server 安装中的任何操作。
------b)security adminstrators
------ 可管理服务器的登录。
------c)server adminstrators
------ 可配置服务器范围的设置
------d)setup adminstrators
------ 可以管理扩展的存储过程
------e)process adminstrators
------ 可以管理运行在 SQL Server 中的进程
------f)disk adminstrators
------ 可以管理磁盘文件
------g)database creators
------ 可以创建和更改数据库
------h)bulk insert adminstrators
------ 可以执行大容量插入操作
----可点击属性查看权限的相关信息
----3)单击数据库访问选项卡,选择该登录可访问的数据库及数据库角色
----数据库角色:
------a)public
------public 角色
------public 角色是一个特殊的数据库角色,每个数据库用户都属于它。public 角色:
------捕获数据库中用户的所有默认权限。
------无法将用户、组或角色指派给它,因为默认情况下它们即属于该角色。
------含在每个数据库中,包括 master、msdb、tempdb、model 和所有用户数据库。
------无法除去。
------b)db_owner
------进行所有数据库角色的活动,以及数据库中的其它维护和配置活动。
------该角色的权限跨越所有其它固定数据库角色。
------c)db_accessadmin
------在数据库中添加或删除 Windows NT 4.0 或 Windows 2000 组和用户以及 SQL Server 用户。
------d)db_datareader
------查看来自数据库中所有用户表的全部数据。
------e)db_datawriter
------添加、更改或删除来自数据库中所有用户表的数据
------f)db_ddladmin
------添加、修改或除去数据库中的对象(运行所有 DDL)
------g)db_securityadmin
------管理 SQL Server 2000 数据库角色的角色和成员,并管理数据库中的语句和对象权限
------h)db_backupoperator
------有备份数据库的权限
------i)db_denydatareader
------拒绝选择数据库数据的权限
------j)db_denydatawriter
------拒绝更改数据库数据的权限
--2.数据库/用户/新建用户
--通过用户名与登录名进行关联
--如果已经将数据库角色设置好,将自动关联与登录名相同的用户名
--若修改用户名应先将该用户删除再进行关联
--若无关联,该登录用户名将会显示dbo
--若该登录的服务器角色为system adminstrators,则user将恒为dbo
--用户与登录为1对1的关联关系
/*通过查询分析器管理安全性*/
/*新建登录*/
exec sp_addlogin 'lecky','123','sales'
--参数1登录名参数2密码参数3默认数据库
/*承担服务器角色*/
sp_addsrvrolemember 'lecky','sysadmin'
--参数1登录名,参数2为固定服务器角色
--注意:此处与企业管理器的服务器角色名称不同,为简写,如下:
----sysadmin在 SQL Server 中进行任何活动。该角色的权限跨越所有其它固定服务器角色。
----serveradmin 配置服务器范围的设置。
----setupadmin 添加和删除链接服务器,并执行某些系统存储过程(如 sp_serveroption)。
----securityadmin 管理服务器登录。
----processadmin 管理在 SQL Server 实例中运行的进程。
----dbcreator 创建和改变数据库。
----diskadmin 管理磁盘文件。
----bulkadmin 执行 BULK INSERT 语句。
/*将已经创建的登录映射为数据库用户,并授予数据库角色*/
exec sp_adduser 'lecky','lecky','public'
--参数1登录名,参数2用户名,参数3数据库角色