svn基于mysql认证_Svn基于mysql做登陆认证
不做权限控制的登陆认证
基础环境
Centos 6
Apache 2.2
Svn 1.6
Mysql 5.1
yum -y install mysql mysql-devel mysql-server httpd mod_auth_mysql subversion mod_dav_svn
* mod_auth_mysql 实现Apache的MySQL认证
* subversion SVN软件包
* mod_dav_svn Subversion与Apache之间的接口,通过它,Apache就可以访问版本库,并且可以让客户端也使用HTTP的扩展协议WebDAV/DeltaV进行访问。
Svn配置
#mkdir -p /data/svn/ *创建测试目录。
#svnadmin create /data/svn/test *在提供的路径上创建一个新的空的版本库,如果提供的目录不存在,它会为你创建。
#授予项目Apache的权限
#chown apache.apache /data/svn/ -R
#chmod 755 /data/svn/ -R
Apache配置
httpd.conf文件配置加载模块
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule mysql_auth_module modules/mod_auth_mysql.so
# 开启DAV模块支持
DAV svn
# 项目的目录
SVNPath /data/svn/test
# 认证名称
AuthName Subversion
# 开启Mysql认证
AuthMYSQLEnable on
# 基本认证
AuthType Basic
# md5加密类型
AuthMySQLPwEncryption md5
# 连接数据库地址
AuthMySQLHost 192.168.9.53
# 连接数据库用户
AuthMySQLUser uct
# 连接数据库密码
AuthMySQLPassword uct
# 连接数据库库名
AuthMySQLDB uct
# 连接数据库表名
AuthMySQLUserTable uct_user
# 连接数据库用户名
AuthMySQLNameField user_ename
# 连接数据库密码
AuthMySQLPasswordField user_pass
# 表示只有认证的用户才能登陆
Require valid-user
重启apache服务:service httpd restart
MySQL配置 --可以使用已有数据库测试
#mysql -uroot -p *登录数据库
1) 创建认证信息的数据库
mysql>create database svn_auth; *创建一个svn_auth数据库。
mysql>use svn_auth; *切换到这个数据库上。
mysql>grant all privileges on *.* to svn@'%'identified by ‘123456’with grant option; *授予svn这个用户访问数据库的权限。
2)创建认证信息的表
mysql> CREATE TABLE users (
-> user_name CHAR(30) NOT NULL,
-> user_passwd CHAR(50) NOT NULL,
-> PRIMARY KEY (user_name) *数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。
-> );
3)创建认证测试账号,密码都是123456
mysql> insert into svn_auth.users values('test100',md5('123456'));
mysql> insert into svn_auth.users values('eeyy01',md5('123456'));
修改/etc/my.cnf文件
#cat /etc/my.cnf(下面是部分内容)
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
skip_grant_tables *启动mysql时不启动grant-tables授权表。
*不然会报[error] [client 172.18.107.176] MySQL ERROR: Access denied for user 'svn'@'localhost' (using password: YES)。这样会导致账号无法通过验证。
# service mysqld restart
停止 mysqld: [确定]
正在启动 mysqld: [确定]
浏览器测试
在浏览器上访问版本库http://IP/resvn
用test100这个用户登录test版本库
Svn客户端测试
使用svn checkout导出版本库地址写浏览器访问的地址,
选择保存目录,点OK导出
新建个文件,提交svn,然后在浏览器查看刚刚提交的文件
svn基于mysql认证_Svn基于mysql做登陆认证相关推荐
- MFI认证是什么意思,什么是MFI认证,要怎么做MFI认证
MFI认证是什么意思,什么是MFI认证,要怎么做MFI认证 "MFI"是一个缩写,全称是:made for iPhone"made for iPod" &quo ...
- svn mysql认证_SVN基于MySQL认证
SVN的简介和工作原理 Subversion(简称svn)是近几年崛起的版本管理软件,是cvs的接班人,目前绝大多数开源软件都使用svn作为代码版本管理软件.Subversion支持linux和win ...
- 什么是FSC认证?为什么要做FSC认证?
什么是FSC认证? FSC即森林管理委员会(TheForestStewardshipCouncil),是由世界自然基金会(WWF)组织发起的一个独立的.非盈利性的非政府组织.它成立于1993年,其宗 ...
- CE认证流程,如何做CE认证
各国认证如何办理 本文由信恒检测技术(深圳)有限公司(简称BTF Test Lab)提供,信恒检测您值得永恒信赖的专业检测机构. CE认证适用范围: CE认证要准备的技术文件: 1.制造商(欧盟授权代 ...
- python 用户认证_Python使用LDAP做用户认证的方法
LDAP(Light Directory Access Portocol)是轻量目录访问协议,基于X.500标准,支持TCP/IP. LDAP目录以树状的层次结构来存储数据.每个目录记录都有标识名(D ...
- .net ad域登录 form认证_golang|给Gitbook做个认证代理
后台管理系统嵌入了Gitbook做帮助中心,需要给Gitbook添加下认证. 思路如下:修改Gitbook发布时的js,给每个URL拼接上用户登录后的Token,Gitbook前面有个代理获取这个To ...
- 通过QI协议发射和接收的无线充需要做CE认证吗?RED指令?
QI协议其实是一个技术协议,和CE认证没有多大的关系.做了QI认证,还是要做CE认证的.具体的指标是RED指令. 关于如何办理QI认证和CE认证,想更多了解+vvv! WPC官网认证产品页面上有更新一 ...
- 通过QI协议发射和接收的无线充需要做CE认证吗?RED指令
QI协议其实是一个技术协议,和CE认证没有多大的关系.做了QI认证,还是要做CE认证的.具体的指标是RED指令. 关于如何办理QI认证和CE认证,欢迎关注Liwei_Chan!!每天学习一分钟,让你紧 ...
- 哪些产品需要做3C认证,费用是多少
哪些产品需要做3C认证,费用是多少 CCC认证作为我国的一项强制性产品认证,和国际通行的做法一样,比如说欧盟的强制认证CE认证,日本的强制认证PSE认证,澳大利亚的强制认证SAA认证等,也都是各国为了 ...
最新文章
- PCL滤波介绍(2)
- 【2020年BNN网络的SOTA—— ReActNet 】以简单的操作得到更高精度的二值神经网络
- Analyzer tool(MAT)分析JVM内存泄露案例
- bootstrap table 表头与内容不对齐问题解决
- Oracle表空间离线在线切换和数据库关闭启动操作图解
- Python基础(三)深浅拷贝、函数、文件处理、三元运算、递归、冒泡排序
- request,response,session,application,out对象的常用调用的函数
- mysql transaction用法,mysql的事务,隔离级别和锁用法实例分析
- 分治策略之最大子数组问题
- ABAP git客户端的简单介绍
- 国际顶会加持,算法大赛等你共探技术新可能
- 双线adsl负载均衡配置过程
- 《数学分析新讲》_张筑生,12.5节:隐函数定理(1)
- Mac 查看jdk版本
- STM32 CANFD 基础知识
- 如何把pdf文件变小一点?
- matlab 超分辨率,matlab超分辨率
- win7桌面图标箭头怎么去掉
- python的reshape(-1)和torch中的torch[-1]都是什么意思
- 【Hive】解析复杂json格式字段