数据库安全性及用户权限管理 57页PPT文档
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
也可用存储过程创建登录账户:
创建Windows验证登录的语法格式:
sp_grantlogin ‘login’
创建SQL Server验证登录的语法格式:
sp_addlogin ‘login’ [, ‘password’ [, ‘default_database’]]
3、修改登录账户
1)使用SQL Server Management Studio修改登录账 户的属性
默认属于sysadmin角色中的成员,因此具有管理员权限。
系统管理员 (sa)
默认情况下,它指派给固定服务器角色 sysadmin,并不能 进行更改。
2、创建登录账户
1)使用SQL Server Management Studio添加 Windows登录账户
2)使用SQL Server Management Studio添加SQL Server登录账户
项目5:数据库安全性及用户权限管理
任务5-1:SQL Server安全架构 任务5-2:数据库登录的管理 任务5-3:数据库用户的管理 任务5-4:数据库角色的管理 任务5-5:访问权限的管理
任务5-1:SQL Server安全架构
1、SQL Server的安全认证模式
用户想操作SQL Server中某一数据库中的数据, 必须满足以下3个条件:
sp_password ‘old_password’, ‘new_password’, ‘login’
3、查看登录账户
1)使用SQL Server Management Studio查看登录账 户
2)使用系统存储过程sp_helplogins查看登录账户
4、删除登录账户
1)使用SQL Server Management Studio删除登录账 户
通常,登录名sa映射为库中的用户dbo。另外, 由固定服务器角色 sysadmin 的任何成员创建的 任何对象都自动属于dbo。
2)GUEST用户
Guest 用户帐户允许没有用户帐户的登录名访问 数据库。
当登录名没有被映射到一个用户名上时,如果在 数据库中存在Guest用户,登录名将自动映射成 Guest,并获得相应的数据库访问权限。
3)使用CREATE LOGIN语句创建登录账户
CREATE LOGIN login_name { WITH <option_list1> | FROM <sources> }
示 例 : 创 建 一 个 使 Windows 用 户 myComputer\myName 得 以 连接到SQL Server 的登录账户。
2)使用DROP LOGIN 语句删除登录账户 DROP LOGIN login_name
示例:删除登录账户lisi_new。 DROP LOGIN lisi_new
也可用存储过程删除登录账户:
删除Windows验证登录的语法格式:
sp_revokelogin ‘login’
删除SQL Server验证登录的语法格式:
1)Windows身份验证模式
当用户通过Windows用户帐户进行连接时,SQL Server通过回叫Windows 以获得信息,重新验证帐 户名和密码,并在sys.syslogins系统视图中查找该 帐户,以确定该帐户是否有权限登录。在这种方式 下,用户不必提供登录名和密码让SQL server验证。
首先,登录SQL Server服务器时必须通过身份验证; 其次,必须是该数据库的用户或者是某一数据库角色的成
员; 最后,必须有执行该操作的权限。
从上面三个条件可以看出SQL Server数据库的安全性检 查是通过 登录名、用户、权限来完成的。
2、两种身份验证模式
Windows身份验证模式 混合验证模式
2)混合验证模式
混合验证模式使用户能够通过Windows身份验证 或SQL Server身份验证与SQL Server实例连接。在 SQL Server验证模式下,SQL Server在 sys.syslogins系统视图中检测输入的登录名和密码。 如果在sys.syslogins视图中存在该登录名,并且密 码也是匹配的,那么该登录名可以登录到SQL Server;否则,登录失败。在这种方式下,用户必 须提供登录名和密码,让SQL server验证。
示例:将lisi_new 登录账户的密码修改为“abcdef”。 ALTER LOGIN lisi_new WITH PASSWORD='abcdef'
也可用存储过程修改登录账户属性:
拒绝Windows验证登录帐户的语法格式为:
sp_denylogin ‘login’
更改登录帐号密码的语法格式为:
2)使用ALTER LOGIN语句修改登录账户属性
ALTER LOGIN login_name {<status_option> | WITH <set_option> [ ,... ]}
示例:将lisi登录账户名称更改为lisi_new。 ALTER LOGIN lisi WITH NAME=lisi_new
CREATE LOGIN [myComputer\myName] FROM WINDOWS
示例:创建一个SQL Server 登录,登录名为lisi并指定密码 abcd。
CREATE LOGIN lisi WITH PASSWORD = 'abcd' 示例: CREATE LOGIN myLogin WITH PASSWORD = ‘123'
3)设置验证模式
可以使用SQL Server Management Studio来设 置或改变验证模式。
任务5-2:数据库登录的管理
1、系统安装时创建的登录账户
SQL Server 2019安装好之后,系统会自动产生 一些系统内置登录账户。 本地管理员组(BUILT\Administrators)
sp_droplogin ‘login’
任务5-3:数据库用户的管理
ቤተ መጻሕፍቲ ባይዱ
1、默认数据库用户
1)数据库所有者 (DataBase Owner,dbo)
dbo是数据库的所有者,拥有数据库中的所有对 象,每个数据库都有dbo,sysadmin服务器角色 的成员自动映射成dbo,无法删除 dbo 用户,且 此用户始终出现在每个数据库中。