《5.4-安全管理-2.ppt》由会员分享,可在线阅读,更多相关《5.4-安全管理-2.ppt(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、5.4 安全管理用户、角色、权限管理1 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发掌握数据库用户管理方法掌握数据库权限管理方法掌握数据库角色管理方法【本节学习目标】2 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发一、用户管理用户要访问数据库,必须先在DBMS中创建其账号,并成为数据库的用户。此后,用户每次访问数据库,都需要在DBMS进行身份验证,只有合法用户才能进入系统,访问操作数据库对象。3 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发实现用户管理方式:数据库服务器执行SQL语句管理用户通过管理工具GUI操作管理用户1.用户创建SQL语句CREATE USER
2、 WITH option;用户管理在数据库安全管理中,DBMS需要对每个用户进行管理,如用户创建、用户修改、用户删除管理等。4 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发CREATE USER userA WITH LOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT NOREPLICATION CONNECTION LIMIT-1 PASSWORD 123456;例 创建一个新用户,其账号名字为“userA”,密码为“123456”。该用户具有登录权限(Login)和角色继承权限(Inherit)系统权限,但它不是超级用户(Super
3、User),不具有创建数据库权限(CreateDB)、创建角色权限(CreateRole)、数据库复制权限(Replication),此外数据库连接数(Connection Limit)不受限。5 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发用户创建SQL语句执行运行按钮SQL语句结果消息6 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发2.用户修改SQL语句ALTER USER WITH option .;-修改用户的属性ALTER USER RENAME TO;-修改用户的名称ALTER USER SET TO|=value|DEFAULT;-修改用户的参数值 ALTER
4、 USER RESET;-重置用户参数值7 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发例 修改用户“userA”的账号密码为“gres123”。同时也限制该用户的数据库连接数为10。ALTER USER userA CONNECTION LIMIT 10 PASSWORD gres123;8 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发用户修改SQL语句执行运行按钮SQL语句结果消息9 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发3.用户删除SQL语句DROP USER ;例 在数据库中,删除用户“userA”。可以通过执行如下用户删除SQL语句实现用户删除。D
5、ROP USER userA;10 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发用户删除SQL语句执行运行按钮SQL语句结果消息11 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发二、权限管理权限管理基本操作:授予权限收回权限拒绝权限数据库权限管理是指DBA管理员或数据库对象拥有者对其所拥有对象进行权限控制设置。权限类别:数据库系统权限数据库对象访问操作权限数据库对象定义操作权限12 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发1.权限管理SQL语句GRANT ON TO 数据库用户名|用户角色名;REVOKE ON FROM 数据库用户名|用户角色名;DENY O
6、N TO 数据库用户名|用户角色名;2.权限管理实例例 在3.7.1节的工程项目管理系统中,DBA管理员赋予员工用户(userA)对部门表(Department)、员工表(Employee)、项目表(Project)和任务表(Assignment)的读取数据权限。13 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发GRANT SELECT ON Department TO userA;GRANT SELECT ON Employee TO userA;GRANT SELECT ON Project TO userA;GRANT SELECT ON Assignment TO userA
7、;对用户“userA”实现授权SQL程序如下14 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发用户授权SQL语句执行运行按钮SQL语句结果消息15 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发三、角色管理角色管理实现方式:执行SQL语句管理角色通过GUI操作管理角色在DBMS中,为了方便对众多用户及其权限进行管理,通常将一组具有相同权限的用户定义为角色(Role)。角色管理内容:创建角色修改角色删除角色16 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发1.角色管理SQL语句CREATE ROLE WITH option .;-创建角色ALTER ROLE WITH
8、 option .;-修改角色属性ALTER ROLE RENAME TO;-修改角色名称 ALTER ROLE SET TO|=value|DEFAULT;-修改角色参数值ALTER ROLE RESET;-复位角色参数值DROP ROLE ;-删除指定角色17 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发2.角色管理实例例 在工程项目管理系统中,假定需要在ProjectDB数据库内创建经理角色Role_Manager。该角色具有登录权限(Login)和角色继承权限(Inherit)系统权限,但它不是超级用户(SuperUser),不具有创建数据库权限(CreateDB)、创建角色
9、权限(CreateRole)、数据库复制权限(Replication),此外数据库连接数(Connection Limit)不受限。CREATE ROLE Role_Manager WITH LOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT NOREPLICATION CONNECTION LIMIT-1;18 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发角色创建SQL语句执行运行按钮SQL语句结果消息19 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发3.角色权限授予例 在创建好经理角色Role_Manager后,还需要赋予
10、该角色对数据库表Department、Employee、Project、Assignment的插入、修改、删除、查询权限。GRANT SELECT,INSERT,UPDATE,DELETE ON Department TO Role_Manager;GRANT SELECT,INSERT,UPDATE,DELETE ON Employee TO Role_Manager;GRANT SELECT,INSERT,UPDATE,DELETE ON Project TO Role_Manager;GRANT SELECT,INSERT,UPDATE,DELETE ON Assignment TO Role_Manager;20 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发角色授权SQL语句执行运行按钮SQL语句结果消息21 数据库原理及应用电子科技大学-陆鑫数据库系统原理与开发本节学习结束!