零点起飞学SQLSever之SQLServer28安全与权限.pptx
《零点起飞学SQLSever之SQLServer28安全与权限.pptx》由会员分享,可在线阅读,更多相关《零点起飞学SQLSever之SQLServer28安全与权限.pptx(28页珍藏版)》请在装配图网上搜索。
第7章SQLServer2008安全与权限 SQLServer2008为维护数据库系统的安全性提供了完善的管理机制和简单而丰富的操作方法 在实际应用中 用户可以根据系统对安全性的不同需求 采用合适的方式来完成数据库系统安全体系的设计 涉及内容主要包括SQLServer2008的安全性机制以及对登录和用户 权限管理 角色管理和其他安全性的管理 7 1SQLServer2008的安全性机制 SQLServer2008采用分层机制来进行权限管理 即在每一层都有相应的安全性机制 SQLServer2008通过管理这种分层的安全性机制 保证数据库安全使用 SQLServer2008的安全性管理分为操作系统 SQLServer和数据库3个等级 7 1 1操作系统级安全性 在用户使用客户端计算机通过网络实现对SQLServer2008服务器的访问时 首先要获得计算机操作系统的使用权限 操作系统安全性是操作系统管理员或网络管理员的任务 由于SQLServer2008采用了集成WindowsNT网络安全性的机制 所以既提高了操作系统的安全性 又提高了管理数据库系统安全性的灵活性 7 1 2SQLServer级安全性 SQLServer服务器级的安全性是建立在控制服务器登录账户和密码的基础上的 SQLServer2008采用了标准SQLServer登录和集成WindowsNT登录两种方式 无论使用哪种登录方式 用户在登录时提供的登录账户和密码 决定了用户能否获得SQLServer2008的访问权 以及在获得访问权后 用户在访问SQLServer2008进程时可以拥有的权利 7 1 3数据库级安全性 在用户通过SQLServer服务器的安全性检查后 将直接面对不同的数据库入口 这是用户将接受的第三次安全性检验 在建立用户的登录账户信息时 SQLServer2008会提示用户选择默认的数据库 以后用户每次连接上SQLServer2008服务器后 都会自动连接到默认的数据库上 7 2登录SQLServer2008 用于连接到SQLServer2008服务器的账户都称为SQLServer的登录 用户是为特定数据库定义的 要创建用户 必须已经定义了该用户的登录 用户ID同登录类似 但是它的名称不需要与登录相同 7 2 1设置登录的身份模式 如果要登录到一个SQLServer2008服务器的实例 那么在这个实例中必须有一个登录名与之相对应 这个登录名可以是如下两种类型 Windows身份验证 SQLServer身份验证 用户可以在SQLServerManagementStudio工具中设置身份登录模式 7 2 2使用SSMS创建登录 登录属于SQLServer2008服务器级的安全策略 要连接到数据库 首先要存在一个合法的登录 在SQLServerManagementStudio工具中创建一个名为JWGL的登录 采用SQLServer身份验证模式 并默认指向Practice JWGL数据库 7 2 3使用SSMS创建用户 用户是SQLServer2008数据库级的安全策略 在为数据库创建新的用户前 必须存在一个有效的登录 使用SQLServerManagementStudio工具在 Practice JWGL 数据库中 创建一个 JWGL 登录下的 JWGL 1 用户 并且该用户只具有只读权限 7 2 4使用Transact SQL语句创建登录和用户 除了使用SQLServerManagementStudio工具来创建登录和用户外 还可以使用Transact SQL语句来创建登录和用户 1 使用Transact SQL语句来创建登录SQLServer2008提供的用于创建登录的语句是CREATELOGIN 其语法格式如下 CREATELOGINlogin name WITH FROM WINDOWS WITH CERTIFICATEcertname ASYMMETRICKEYasym key name PASSWORD password HASHED MUST CHANGE SID sid DEFAULT DATABASE database DEFAULT LANGUAGE language CHECK EXPIRATION ON OFF CHECK POLICY ON OFF CREDENTIAL credential name DEFAULT DATABASE database DEFAULT LANGUAGE language 2 使用Transact SQL语句来创建用户 SQLServer2008提供的用于创建用户的语句是CREATEUSER 其语法格式如下 CREATEUSERuser name FOR FROM LOGINlogin name CERTIFICATEcert name ASYMMETRICKEYasym key name WITHOUTLOGIN WITHDEFAULT SCHEMA schema name 3 使用Transact SQL语句来创建登录和用户实例 实例7 1 使用Transact SQL语句来实现7 2 2节中创建登录 7 3SQLServer2008权限管理 权限用于控制对数据库对象的访问 以及指定用户对数据库可以执行的操作 用户可以设置服务器和数据库的权限 服务器权限允许数据库管理员执行管理任务 数据库权限用于控制对数据库对象的访问和语句执行 7 3 1设置服务器权限 服务器权限允许数据库管理员执行管理任务 这些权限定义在固定服务器角色 fixedserverroles 中 这些固定服务器角色可以分配给登录者使用 但是不能修改 7 3 2设置数据库对象权限 数据库对象权限是授予用户以允许其访问数据库中对象的一类权限 对象权限对于使用SQL语句访问表或视图是必需的 在SQLServerManagementStudio工具中给用户添加对象权限 7 3 3设置数据库权限 对象权限使用户能够访问存在于数据库中的对象 除了数据库对象权限外 还可以给用户分配数据库权限 SQLServer2008对数据库权限进行了扩充 增加了许多新的权限 这些数据库权限除了授权用户可以创建数据库对象和进行数据库备份外 还增加了一些更改数据库对象的权限 在SQLServerManagementStudio工具中给用户添加数据库权限 7 4SQLServer2008角色管理 角色用来简化将很多权限分配给很多用户这一复杂任务的管理 角色允许用户分组接受同样的数据库权限 而不是单独给每一个用户分配这些权限 用户可以使用系统自带的角色 也可以创建一个代表一组用户使用的角色 然后把这个角色分配给这个工作组的用户 7 4 1使用服务器角色 在SQLServer2008安装时就创建了在服务器级别上应用的大量预定义角色 每个角色对应着相应的管理权限 这些角色和相应的权限如表所示 7 4 1使用服务器角色 通过给登录分配服务器角色 可以使登录用户具有执行管理任务的角色权限 服务器角色的维护比单个权限维护更容易一些 但是固定服务器角色不能修改 在SQLServerManagementStudio工具中 可以为登录分配固定服务器角色 从而使该登录用户获得相应的权限 7 4 2使用数据库角色 在SQLServer2008安装时 数据库级别上也有一些预定义的角色 每个角色对应着相应的权限 这些角色和相应的权限如表所示 7 4 2使用数据库角色 另外 用户也可以使用图形化工具和Transact SQL语句创建新角色 使这一角色拥有某个或者某些权限 创建的角色还可以修改其对应的权限 无论使用哪种方式 用户都需要完成以下任务 创建新的数据库角色 分配权限给新创建的角色 将这个角色授予某个数据库用户 在SQLServerManagementStudio工具中创建新的数据库角色 具体操作过程如下 7 4 3使用应用程序角色 应用程序角色是一个数据库主体 它使应用程序能够用其自身的 类似用户的特权来运行 使用应用程序角色 可以只允许通过特定应用程序连接的用户访问特定数据 7 5SQLServer2008其他安全性管理 SQLServer2008的安全性管理 除了前面介绍的登录 用户和角色机制外 还涉及密码策略 凭据 架构以及密钥与证书等机制 本节将介绍这些安全性机制及其基本管理操作 7 5 1密码策略 在Windows操作系统环境下运行SQLServer2008时 可以使用Windows密码策略机制 SQLServer2008可以将Windows中使用的复杂性策略 过期策略应用于SQLServer2008内部使用的密码 1 密码复杂性策略2 密码过期3 使用密码策略SQLServer2008数据库的密码策略的实施 要求必须先在Windows操作系统的 本地安全设置 中进行配置 然后才能启动 7 5 2使用凭据 在SQLServer2008中 如果需要访问外部的资源 例如文件系统中的文件 注册表或者运行外部应用程序 那么可以为执行这个程序指定一个用户 在SQLServer2008中 可以使用凭据来完成这个工作 凭据是包含连接到SQLServer2008以外的资源时所需的身份验证信息 凭据 的记录 1 凭据的构成2 创建凭据使用SQLServerManagementStudio工具创建一个凭据 pj 3 使用sys credentials目录视图4 创建映射到凭据的登录名 实例7 2 使用Transact SQL语句创建一个映射到pj 凭据 的登录名Login JWGL 7 5 3使用架构 用户与架构分离是SQLServer2008在安全体系中最重要的改进 架构是SQLServer2008数据库新的数据库对象 1 理解架构架构是形成单个命名空间的数据库实体的集合 命名空间是一个集合 其中每个元素的名称都是唯一的 架构是数据库对象的命名空间 每个数据库用户都是与该用户同名架构的所有者 对象的所有者在功能上与包含它的架构所有者相同 SQLServer2008引入架构后 访问数据库对象 如果完全使用限定对象名称 应采用以下模式 完全限定的对象名称包含4部分 server database schema object2 使用SQLServerManagementStudio创建架构使用SQLServerManagementStudio工具创建架构 3 使用CREATESCHEMA语句创建架构 使用CREATESCHEMA语句 在当前数据库中创建架构 具体语法格式如下 CREATESCHEMAschema name clause n schema name AUTHORIZATIONowner name schema nameAUTHORIZATIONowner name table definition view definition grant statementrevoke statement deny statement 7 5 4使用密钥与证书 SQLServer2008提供了完善的加密体系 用户不仅可以对数据库进行访问加密 也可以对数据列进行加密 下面将要介绍SQLServer2008的加密策略及机制 主要包括密码系统架构 密钥的使用和证书的使用 1 SQLServer2008密码系统架构2 使用密钥3 使用证书 7 6小结 数据库的安全与权限是保障数据库安全性的重要机制 读者可以通过SQLServer2008提供的安全机制 登录和用户以及SQLServer2008的权限与角色管理等几个方面来对SQLServer2008进行安全与权限的管理 本章重点在于掌握安全性管理的一些常见操作 下一章将学习如何来监控SQLServer2008状态- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 零点 起飞 SQLSever SQLServer28 安全 权限
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
链接地址:https://www.zhuangpeitu.com/p-5429618.html