Configure the MySQL account associate to the domain user via MySQL Windows Authentication Plugin
在此记录如何将之前一次做第三发软件在配置的过程。 将AD user通过代理映射到mysql 用户。
在Mysql官网有这样一段话:
The server-side Windows authentication plugin is included only in commercial distributions. It is not included in MySQL community distributions. The client-side plugin is included in all distributions, including community distributions. The Windows authentication plugin should work on Windows 2000 Professional and up. It requires MySQL Server 5.5.16 or newer.
这个只在商业版上有这种Windows authentication plugin
On the server side:
1. Install the Windows Authentication Plugin:
Method 1). Put these lines in my.ini(C:\Program Files\MySQL\MySQL Server5.5) file:
[mysqld]
plugin-load=authentication_windows.dll
Then restart MySQL service.
Method 2). Launch MySQL server as root user and run the following commands:
mysql>install plugin authentication_windows_server soname 'authentication_windows.dll';
mysql>show plugins;
Installed the Windows Authentication Plugin successfully if you see the following information.
2. Using the Windows Authentication Plugin to create user map to domain groups or users:
1). Create the proxy MySQL account "win_proxy" for Windows users(xxx.test\\administrator, xxx.test\\dzuser2) to connect to, and configure this account so that users and groups map to the appropriate MySQL accounts("mysql_admin", "mysql_user"):
c:\>mysql --user=root --password=password
mysql>create user win_proxy identified with authentication_windows as 'xxx.test\\administrator=mysql_admin, xxx.test\\dzuser2=mysql_user';
2). For proxying to work, the proxied accounts must exist, so create them and grant some privileges to them:
mysql>create user mysql_admin identified by 'password';
mysql>create user mysql_user identified by 'password';
mysql>grant all privileges on *.* to 'mysql_admin'@'%'; all privileges on MySQL instance
mysql>grant all privileges on mysql.* to 'mysql_user'@'%';privileges on mysql database
3). Grant the PROXY privilege for each of the proxied accounts to the proxy account:
mysql>grant proxy on mysql_admin to win_proxy;
mysql>grant proxy on mysql_user to win_proxy;
Now the Windows users "xxx.test\\administrator" can connect to the MySQL server as "win_proxy" and when authenticated have the privileges of the account "mysql_admin".
"xxx.test\\dzuser2" can connect to the MySQL server as "win_proxy" and when authenticated have the privileges of the account "mysql_user"
Check the configuration whether take effect on the client side:
1. Logon the OS as user "xxx.test\\administrator":
c:\>mysql -u win_proxy -h10.100.xx.xx (the MySQL server IP)
mysql> select user(),current_user(),@@proxy_user;
+----------------------+----------------+-----------------+
| user() | current_user() | @@proxy_user |
+----------------------+----------------+-----------------+
| win_proxy@xxx | mysql_admin@% | 'win_proxy'@'%' |
+----------------------+----------------+-----------------+
1 row in set (0.02 sec)
Domain user "xxx.test\\administrator" map to the MySQL account "mysql_admin" successfully.
2. Logon the OS as user "xxx.test\\dzuser2":
c:\>mysql -u win_proxy -h10.100.60.38 (the MySQL server IP)
mysql> select user(),current_user(),@@proxy_user;
+----------------------+----------------+-----------------+
| user() | current_user() | @@proxy_user |
+----------------------+----------------+-----------------+
| win_proxy@xxx | mysql_user@% | 'win_proxy'@'%' |
+----------------------+----------------+-----------------+
1 row in set (0.02 sec)
Domain user "xxx.test\\dzuser2" map to the MySQL account "mysql_user" successfully.
Configure the MySQL account associate to the domain user via MySQL Windows Authentication Plugin的更多相关文章
- 连接mysql客户端报错: java.sql.SQLException: Unable to load authentication plugin 'caching_sha2_password'
报这个错可能是因为用了低版本的的客户端.驱动连接高版本的mysql服务器. 解决方式有三种:升级客户端版本.修改服务端认证方式和适应服务端认证方式. 我是通过升级客户端版本解决,参考一下链接: Upg ...
- mysql的TABLE_SCHEMA的sql和information_schema表, MySQL管理一些基础SQL语句, Changes in MySQL 5.7.2
3.查看库表的最后mysql修改时间, 如果第一次新建的表可能还没有update_time,所以这里用了ifnull,当update_time为null时用create_time替代 select T ...
- Navicat连接MySQL,出现2059 - authentication plugin 'caching_sha2_password'的解决方案
昨天当我把MySQL的安装程序下载并安装好,然后又下载了另外一个工具来使用它,该工具的名称是Navicat Premium,当我通过该工具连接MySQL Workbench的时候,无法连接,提示“20 ...
- configure: error: Cannot find libmysqlclient under /usr Note that the MySQL client library is not bundled anymore! 报错解决
错误说明 今天在centos 6.3 64位版本上安装PHP5.4.3时在./configure 步骤的时候出现了下面错误configure: error: Cannot find libmysqlc ...
- mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记
mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...
- MySQL数据库的优化(上)单机MySQL数据库的优化
MySQL数据库的优化(上)单机MySQL数据库的优化 2011-03-08 08:49 抚琴煮酒 51CTO 字号:T | T 公司网站访问量越来越大,导致MySQL的压力越来越大,让我们自然想到的 ...
- 【MySQL】源码编译安装和配置MySql 5.5.32(单实例)
[需求描述] 在CentOS环境中,通过编译源码的方式,安装并且配置“单实例”的MySQL5.5.32数据库. MySQL的安装目录为:/application/mysql-5.5.32 MySQL数 ...
- redis作为mysql的缓存服务器(读写分离,通过mysql触发器实现数据同步)
一.redis简介Redis是一个key-value存储系统.和Memcached类似,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录 ...
- Using a Microsoft Account to Logon and Resulting Internet Communication in Windows 8
Using a Microsoft Account to Logon and Resulting Internet Communication in Windows 8 此主题尚未评级 - 评价此主题 ...
随机推荐
- Dynamics CRM 检测访问CRM延迟及带宽的工具
直接在浏览器中访问如下地址"http://CRMHOST/organization/tools/diagnostics/diag.aspx"(这里的CRMHOST和organiza ...
- 02基于注解开发SpringMVC项目(jar包,异步,request,参数传递,多选的接收,Model传参,map传参,model传参,ajax,重定向,时间日期转换)
1 所需jar包 项目结构如下: 2 web.xml配置文件的内容如下: <?xmlversion="1.0"encoding="UTF-8"?&g ...
- Android初级教程理论知识(第八章网络编程一)
网络图片查看器 确定图片的网址 发送http请求 URL url = new URL(address); //获取连接对象,并没有建立连接 HttpURLConnection conn = (Http ...
- (NO.00005)iOS实现炸弹人游戏(六):游戏数据的初始化(三)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 现在我们来看看实际初始化地图的randomCreateMap方法 ...
- Spring事务管理与数据库隔离级别的关系(Spring+mysql)
之前写过一篇文章<数据库隔离级别(mysql+Spring)与性能分析 >,里面很多问题写的不是很专业,也不是很有逻辑性,现在重新整理一下,希望对大家有帮助. 这部分通过两天时间反复的 ...
- Android进阶(七)数据存储
Android 数据存储 1访问资源文件 直接将文件保存在设备的内部存储. 默认情况下,保存到内部存储的文件为私有的,其他应用程序不能访问它们,当用户卸载应用程序时,所保存的文件也一并删除. 1.1 ...
- ACM算法竞赛:抄课文
题目如下: 比如现在要写一句话 Hello world 输入: n (n > 0) 比如输入的n为10,就将Hello world打印十 #include <stdio.h> #in ...
- 【一天一道LeetCode】#67. Add Binary
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given t ...
- Android中显示gif动态图片
在android中显示一个静态图片比如png jpg等等都很方便,但是如果要显示一个gif 动态图片就需要进行一些处理. 本文是采用自定义view 然后进行重新onDraw方法来实现 首先自定义Vie ...
- 学习tornado:模板
第一次接触tornado的template,是在做oastub的时候,因为一位同学在handler里面硬编码了html代码,我决定引入template机制来降低逻辑与页面的耦合. 简介 tornado ...