ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

8、Mycat 安全设置--mycat

2020-02-20 11:56:36  阅读:257  来源: 互联网

标签:xml 标签 privileges mycat Mycat user 设置 权限


1 权限配置

1、 user 标签权限控制 目前 Mycat 对于中间件的连接控制并没有做太复杂的控制,目前只做了中间件逻辑库级别的读 写权限控制。是通过 server.xml 的 user 标签进行配置。
#server.xml配置文件user部分
<user name="mycat">
 <property name="password">123456</property>
 <property name="schemas">TESTDB</property>
</user>
<user name="user">
 <property name="password">user</property>
 <property name="schemas">TESTDB</property>
 <property name="readOnly">true</property>
</user>

 

 

 

 

2、 privileges 标签权限控制 在 user 标签下的 privileges 标签可以对逻辑库(schema)、表(table)进行精细化的 DML 权限控制。

 

privileges 标签下的 check 属性,如为 true 开启权限检查,为 false 不开启,默认为 false。

 

由于 Mycat 一个用户的 schemas 属性可配置多个逻辑库(schema) ,所以 privileges 的下级 节点 schema 节点同样可配置多个,对多库多表进行细粒度的 DML 权限控制

 

#server.xml配置文件privileges部分
#配置orders表没有增删改查权限
<user name="mycat">
   <property name="password">123456</property>
   <property name="schemas">TESTDB</property>
   <!-- 表级 DML 权限设置 -->
  <privileges check="true">
    <schema name="TESTDB" dml="1111" >
      <table name="orders" dml="0000"></table>
      <!--<table name="tb02" dml="1111"></table>-->
    </schema>
  </privileges>
</user>

 

 

2 SQL 拦截

firewall 标签用来定义防火墙; firewall 下 whitehost 标签用来定义 IP 白名单 , blacklist 用来定义SQL 黑名单。

 

1、 白名单 可以通过设置白名单,实现某主机某用户可以访问 Mycat,而其他主机用户禁止访问。
#server.xml配置文件firewall标签
#配置只有192.168.140.128主机可以通过mycat用户访问
<firewall>
   <whitehost>
     <host host="192.168.140.128" user="mycat"/>
   </whitehost>
</firewall>

 

 

 

2、 黑名单 可以通过设置黑名单,实现 Mycat 对具体 SQL 操作的拦截,如增删改查等操作的拦截。
#server.xml配置文件firewall标签
#配置禁止mycat用户进行删除操作
<firewall>
     <whitehost>
       <host host="192.168.140.128" user="mycat"/>
     </whitehost>
     <blacklist check="true">
       <property name="deleteAllow">false</property>
     </blacklist>
</firewall>

 

 

标签:xml,标签,privileges,mycat,Mycat,user,设置,权限
来源: https://www.cnblogs.com/Mrchengs/p/12307133.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有