SqlServer安全机制
?
SQL SERVER的三层安全模型 A、?? 身份验证 B、?? 数据库用户 C、?? 数据库中数据的权限设置 ? 登录验证 A、?? 分类 SQL SERVER身份验证 Windows 身份验证 B、?? 创建登陆SQL SERVER的用户 通过企业管理器创建 通过查询分析器来创建 exec sp_addlogin ‘用户名’,’用户密码’[,’默认数据库’] exec sp_addlogin ‘Wang’,’12345,’master’ 删除登陆用户 exec sp_dropogin ‘用户名’ exec sp_droplogin ‘Wang’ 查看SQL中的所有登陆用户信息 exec sp_helplogins C、?? 创建Windows用户登陆 1首先创建Windows用户 我的电脑?管理?本地用户和组?新建用户 2在SQL SERVER中登陆授权 ?????????? exec sp_granlogin ‘机器名用户名’ ?????????? exec sp_granlogin ‘PC001STU’ 拒绝登陆 ?????????? exec sp_denylogin ‘机器名用户名’ ?????????? exec sp_denylogin ‘PC001STU’ 删除登陆 ?????????? exec sp_revokelogin ‘机器名用户名’ ?????????? exec sp_revokelogin ‘PC001STU’ ?????????? (拒绝和删除并不能阻止该用户的登陆) ? 现在您就可以使用上面两种方式创建的不同类型的登陆用户来登陆SQL SERVER,但是登陆了SQL SERVER并不等于就能访问SQL SERVER的数据库,因此我们还要为我们的登陆用户创建数据库用户. ? 数据库用户 1、?? 给SQLSERVER用户授权访问数据库 use 数据库 sp_grantddbaccess ‘用户名’ 2、?? 给WindowsNT用户授权访问数据库 use 数据库 sp_grantdbaccess ‘机器名用户名’ 3、?? 查看当前数据库中的所有数据库用户 sp_helpuser 能够使用这个数据库,并不是一定就能访问这个数据库的数据,使用数据库中数据,需要为该用户分配相应的权限。 ? 权限管理 1、?? 权限:操作和使用数据库的权利 2、?? 分类: 对象权限:对数据库中对象(表,视图,存储过程)的访问控制设置 语句权限:设置用户是否能够使用某一个语句(主要指在数据库中创建和删除对象) 3、?? 权限的设置 A、授权: ????? 对象权限 ???????? 授予所有权限:grant all on对象名 to 用户名 ???????? 授予部分权限: grant select,update,insert delete on对象名 to 数据库用户名 ? ????? 语句权限(授予) ???????? 授予所有权限:grant all to用户名 ???????? 授予部分权限: grant create database,create table to 用户名 B、删除 对象权限 ???????? 删除所有权限:revoke all on 对象名 to 用户名 ???????? 删除部分权限:revoke select,insert on 对象名 to 用户名 ? 语句权限 ???????? 删除所有权限:revoke all to 用户名 ???????? 删除部分权限:revoke create database to 用户名 ? C、拒绝 语法规则和上面的两种都一样,使用的关键字deny ? 现在大家就可以利用你自己的用户来管理和操作数据库中的数据了 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |