mysql limit to hosts matching_MySQL 用户访问限制 -- Host Match Limit

笔者前几日在做数据库迁移的时候,发现了一个挺有意思的小东西:数据库访问限制(Host Match limit),简单地翻阅了下给官方资料,发现这个东西应用场景其实非常广泛,只是我们采用了其他可能没有原生数据库带的Access Limit 功能好地方式,特此摘记!

MySQL 官方文献传送门 戳👇

The server checks credentials first, then account locking state. A failure for either step causes the server to deny access to you completely. Otherwise, the server accepts the connection, and then enters Stage 2 and waits for requests.

上面那端话摘自文献第一端,大意就是MySQL校验访问者身份会先从访问者的有效认证(credentials)开始,这个有效认证实际上值得就是我们平时赋值一个新的Access User的登入名、密码以及访问时所用的主机名。

OK,上一张我们平时用的最多的可视化界面的图:

31a102d4e85c7b5ac6634590156dbd12.png

图中标识红色的部分也就是我们常用来设置某用户访问权限的地方,其中笔者设置的是localhost,即笔者这个Root用户访问的时候,MySQL会除了将 MySQL.User表里的Username、Password与输入的进行比较外,还会将在表中的Hostname与访问的Hostname进行比较,倘若这三者中又一步失败了,则MySQL都会拒绝访问(Deny access !)

好,那么问题来了,如果我是想把这个用户做成开放性接口使用的用户,那么我该怎么办?其实细心点观察图上的文字提示你就会发现,实际上想开放访问的Hostname,你只需要将红色标识的输入框内的localhost(或者其它)改成 ''(空字符串)或是%即可。因为上述两种符号均表示为此用户登入不做Hostname约束的意思!

摘一段关于赋予用户权限的官方陈述:

The db table grants database-specific privileges. Values in the scope columns of this table can take the following forms:

1. A blank User value matches the anonymous user. A nonblank value matches literally; there are no wildcards in user names.

2. The wildcard characters % and _ can be used in the Host and Db columns. These have the same meaning as for pattern-matching operations performed with the LIKE operator. If you want to use either character literally when granting privileges, you must escape it with a backslash. For example, to include the underscore character (_) as part of a database name, specify it as \_ in the GRANT statement.

3. A '%' or blank Host value means “any host.”

4. A '%' or blank Db value means “any database.”

同时,你也可以为这个用户设置例如一小时内最大连接次数的之类的基本属性:

6be7541844377431288ebf777a8b9115.png

在MySQL.User表中,遇到同名的用户,System会采用第一个匹配成功的用户作为首选项(即它的权限和相关信息都是采用第一个用户了)。

PS : 附上查找User表里用户的常用信息的语句

mysql> select user,host,authentication_string from mysql.user;

以及赋值用户的官方传送门:Grant Table 以及基本赋值命令

GRANT ALL ON db1.* TO 'jeffrey'@'localhost';

GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost';

OK,关于Access Control的初步了解就先记录到这!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字电路中的Multi-bits跨时钟域设计

数字电路中的Multi-bits跨时钟域设计跨时钟域同步设计跨时钟域处理目标Multi-bits的Clock Domin Crossing (CDC) 电路设计1-bit "Guard" 信号同步multi-bits数据其他的Multi-bits跨时钟域同步设计跨时钟域电路的仿真验证跨时钟域同步设计 跨时钟域处理目标 在跨时钟…

ACM公布2017年图灵奖,大卫·帕特森和约翰·轩尼诗获奖

来源:网络大数据刚刚,美国计算机协会(ACM)宣布 John L. Hennessy 和 David A. Patterson 荣获 2017 年图灵奖。目前这两位学者都供职于谷歌,前者是谷歌母公司 Alphabet 的董事会主席,后者任谷歌杰出工程师,致力于研究机…

Java加密与解密的艺术~DES实现

密钥长度与安全性成正比,但Java仅支持56位密钥长度,作为补充,Bouncy Castle 提供64位密钥长度支持。在此基础上配合不同填充方式(如PKCS5Padding,PKCS7Padding),可显著提高加密系统的安全性。 D…

YOLOv8改进 | 主干篇 | 利用SENetV2改进网络结构 (全网首发改进)

一、本文介绍 本文给大家带来的改进机制是SENetV2,其是2023.11月的最新机制(所以大家想要发论文的可以在上面下点功夫),其是一种通过调整卷积网络中的通道关系来提升性能的网络结构。SENet并不是一个独立的网络模型,而是一个可以和现有的任何…

Linux学习路线及网络编程经典书籍

linux学习资源整理:https://zhuanlan.zhihu.com/p/22654634 Linux初学者(学习资料):https://zhuanlan.zhihu.com/p/21723250 知乎 - 你是如何学习 Linux 编程的?:https://www.zhihu.com/question/20730157 如果让你推荐一本 Linux…

在Windows 7解决GAC错误

调试一网站源代码出现下面的错误 错误 1 Could not load file or assembly Microsoft.ReportViewer.WebForms, Version8.0.0.0, Cultureneutral, PublicKeyTokenb03f5f7f11d50a3a or one of its dependencies. The system cannot find the file specified. D:\3layerhotel\WebS…

CVPR 2018 | 腾讯AI Lab入选21篇论文详解

来源:腾讯AI实验室近十年来在国际计算机视觉领域最具影响力、研究内容最全面的顶级学术会议CVPR,近日揭晓2018年收录论文名单,腾讯AI Lab共有21篇论文入选,位居国内企业前列,我们将在下文进行详解,欢迎交流与讨论。去年…

Java加密与解密的艺术~DESede实现

DESede 实现 /*** 2009-10-5*/ package org.zlex.chapter07_2;import java.security.Key;import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.DESedeKeySpec;/*…

推荐!神经进化才是深度学习未来的发展之路!

来源:全球人工智能过去几年时间里,我们有一个完整的团队致力于人工智能研究和实验。该团队专注于开发新的进化计算方法(EC),包括设计人工神经网络架构、构建商业应用程序,以及使用由自然进化激发的方法来解…

linux 命令:ping、fping、gping、hping3、tracert、traceroute

From: Nmap、Netcat、Hping3工具对比:http://www.2cto.com/article/201210/158961.html ​hping3 命令:http://man.linuxde.net/hping3 示例:Testing firewall rules with Hping3 :https://www.docin.com/p-74538211…

Java加密与解密的艺术~数字签名~模型分析

甲方作为消息的发送方,乙方作为消息的接收方。假设甲乙双方在消息传递之前已经指定了要使的数字签名算法(如RSA算法)。为完成签名验证,甲乙双方需要以下操作: 1)、由消息发送方(甲方&#xff09…

excel概率密度函数公式_标准正态分布密度函数公式

展开全部标准正态分布密度函数公式:正态曲线呈钟型62616964757a686964616fe58685e5aeb931333366306532,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。若随机变量X服从一个数学期望为μ、方差为…

2017-2018中国物联网产业全景图谱报告——物联网对产业深度变革已开启

来源:物联网智库丨公众号如果说2016年里物联网的产业生态各种要素已具备,那么2017年就是物联网对于国民经济产业变革的规模效应初显的一年,可以说是物联网对产业变革的元年。在这一过程中,通过二维生态图谱去了解过去一年的进展不…

Java加密与解密的艺术~数字签名~RSA实现

RSA 实现 /*** 2008-6-11*/ package org.zlex.chapter09_1;import java.security.Key; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import …

科技部认定的独角兽名单来了!共164家

来源:中国证券报丨公众号 作者:杨洁今天上午, 科技部火炬中心、中关村管委会、长城战略咨询、中关村银行联合主办“2017中国独角兽企业发展报告”发布会。《2017中国独角兽企业发展报告》显示: 2017年中国独角兽企业共164家新晋62…

《Head First 设计模式》专题上线

立即访问《Head First 设计模式》专题 我们为这本经典图书制作了专题,也想在此了解一下园子里有哪些朋友看过这本书。 --- 博客园团队 2008年12月26日 转载于:https://www.cnblogs.com/bookshop/archive/2008/12/26/1363084.html

Java加密与解密的艺术~数字签名~DSA实现

DSA 实现 /*** 2008-6-13*/ package org.zlex.chapter09_2;import java.security.Key; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.PrivateKey; import java.security.PublicKey; import …

tcpdump - 数据包进行截获的包分析工具

From:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html 30 分钟掌握 tcpdump:http://zhuanlan.51cto.com/art/201701/527498.htm Android tcpdump 下载:https://www.androidtcpdump.com/android-tcpdump/downloads tcpdum…

相持不下的争论:脑波,有用吗?

来源:原理、编译:糖兽在大脑中,存在着我们看不见的脑电活动。这些脑波是由在大脑周围大量存在神经细胞的协调发射而产生的,他们可以从大脑的前部传到后部,从大脑深处传到头皮。这种脑电活动被称为神经元振荡。有意思的…

CVS 客户端使用手册

IRLab 2003年2月10日 什么是CVS CVS(Version Control System.)即版本控制系统。用来记录源文件的历史信息。甚至二进制文件,媒体文件等。 例如,当软件修改时有时会产生Bugs,并且你可能在做这次修改后很长时间不会发现这…