头歌-数据库安全性控制

第1关:数据库安全

任务描述

下面为某部门数据库安全策略 订单数据库中包括名为代理商,客户,产品,订单,订货项目等5个数据表。

  1. 数据库维护人员(1人):可对订单数据库进行任何操作。 账号名称:system_dbowner,允许任何ip通过此用户连接数据库,密码为usercode1
  2. 数据录入人员(2人):可对订单数据库中所有表进行插入、删除、更新操作,不能创建与修改表结构及其它授权等操作。 账号名称:datarecorder1, datarecorder2,允许任何ip通过此用户连接数据库,密码为usercode1
  3. 订单管理人员(2人):能对订单数据库中的订单表和项目表进行插入、删除、更新操作,其它表仅能查询。不能创建与修改表结构及其它授权等操作。 账号名称:order_1,order_2,允许任何ip通过此用户连接数据库,密码为usercode1
  4. 客户管理人员(2人):能对订单数据库中的代理商表和客户表进行插入、删除、更新,其它表仅能查询。不能创建与修改表结构及其它授权等操作。 账号名称:customer_1, customer_2,允许任何ip通过此用户连接数据库,密码为usercode1 要求: (1)写sql语句实现。合理分配用户权限。 (2)为了能在educoder平台上正确进行测试,所有新增用户密码统一设置为usercode1

参考代码

/*

1、数据库维护人员(1人):可对订单数据库进行任何操作。

账号名称:system_dbowner,密码为usercode1,允许任何ip通过此用户连接数据库

*/

CREATE USER  system_dbowner IDENTIFIED BY  'usercode1';

grant all on 订单数据库.*  to  system_dbowner;

flush privileges;

/*

2、数据录入人员(2人):可对订单数据库中所有表进行插入、删除、更新操作,

(注意:为了顺利进行删除更新操作,也需要能有查询权限)

不能创建与修改表结构及其它授权等操作。

账号名称:datarecorder1, datarecorder2,密码为usercode1,允许任何ip通过此用户连接数据库

*/

CREATE USER  datarecorder2 IDENTIFIED BY  'usercode1';

grant select,insert,delete,update on 订单数据库.*  to  datarecorder2;

flush privileges;

CREATE USER  datarecorder1 IDENTIFIED BY  'usercode1';

grant select,insert,delete,update on 订单数据库.*  to  datarecorder1;

flush privileges;

/*

3、订单管理人员(2人):能对订单数据库中的订单表和订货项目表进行插入、删除、更新操作,

其它表仅能查询(注意:为了顺利进行删除更新操作,订单表和订货项目表也需要能有查询权限)。

不能创建与修改表结构及其它授权等操作。

账号名称:order_1,order_2,密码为usercode1,允许任何ip通过此用户连接数据库

*/

CREATE USER  order_1 IDENTIFIED BY  'usercode1';

grant select on 订单数据库.*  to  order_1;

grant insert,delete,update on 订单数据库.订货项目 to order_1;

grant insert,delete,update on 订单数据库.订单 to order_1;

flush privileges;

CREATE USER  order_2 IDENTIFIED BY  'usercode1';

grant select on 订单数据库.*  to  order_2;

grant insert,delete,update on 订单数据库.订单 to order_2;

grant insert,delete,update on 订单数据库.订货项目 to order_2;

flush privileges;

/*

4、客户管理人员(2人):能对订单数据库中的代理商表和客户表进行插入、删除、更新,

其它表仅能查询(注意:为了顺利进行删除更新操作,代理商表和客户表也需要能有查询权限)。

不能创建与修改表结构及其它授权等操作。

账号名称:customer_1, customer_2,密码为usercode1,允许任何ip通过此用户连接数据库

*/

CREATE USER  customer_1 IDENTIFIED BY  'usercode1';

grant select on 订单数据库.*  to  customer_1;

grant insert,delete,update on 订单数据库.代理商 to customer_1;

grant insert,delete,update on 订单数据库.客户 to customer_1;

flush privileges;

CREATE USER  customer_2 IDENTIFIED BY  'usercode1';

grant select on 订单数据库.*  to  customer_2;

grant insert,delete,update on 订单数据库.代理商 to customer_2;

grant insert,delete,update on 订单数据库.客户 to customer_2;

flush privileges;

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值