第一:用户的配置

  SVN和apache整合的话,用户可以直接使用htpasswd dav_svn.passwd_file_address USERNAME来配置。

  而账户的管理可以用dav_svn.authz来配置

  前面那个passwd文件保存的是用户的基本信息,就不列了。而另外那个dav_svn.authz文件的内容如下:

  

  1. [aliases]
  2. # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
  3. [groups]
  4. sendsrt = root,utt1
  5. sendsdeveloper = ttt12
  6. other = seb3
  7. [/]
  8. @sendsrt = rw
  9. * =
  10. [test:/]
  11. @sendrt = rw
  12. ttt12 =rw
  13. * =
  14. [utt1:/]
  15. @sendsrt = rw
  16. utt1 = rw
  17. * =
  18. [utt1:/testProject]
  19. @sendsdeveloper = rw

  实际上,上面的这个文本已经基本说明了用户权限配置的情况了。[groups]里面表示的是分组信息,每个组=用户

  而下面的[/]表示的是整个SVN的所有库,因为我在apache下面访问的时候的做过别名,所以是http://localhost/svn/

  [test:/]表示的就是test这个库和相对这个库的根目录,实际上代表的是http://localhost/svn/test/

  [utt1:/testProject]其实utt1这个库有地方说的就是这里,http://localhost/svn/utt1/testProject目录,这里控制了sendsdeveloper组成员仅对这个目录具有读写权限。不像http://www.subversion.org.cn/bbs/viewthread.php?tid=520这篇文章的作者的血泪经验,实际上,这样的目录设置是通过了我自己的测试的,这个标志代表的是相对于utt1这个版本库目录下的testProject目录,而那位作者有了问题恐怕是在于他自己签入签出库的时候使文件夹出了问题吧。

  权限上,r,w分别表示读写,下面那个* = 表示除了上面写的之外,都没有任何权限,因为svn的目录权限也是继承的,如果不禁的话,父目录有权限的话,子目录会自动继承。另外,这个 *=在一个库的权限设置里面放在第一行和最后一行是没有区别的。

  另外,还需注意的是,即时在Windows下,设置这个也必须使用/而非/。

最后,如果要配置SVN下的中文支持的话,请参考这一段:

  1. 对中文目录的支持
  2. ----------------
  3. 上午上班的时候,Morson 来到 Michael 的桌子前面,说道:“你是否可以将我们的北京办、上海办目录,改成用中文的,看着那些拼音我觉得很难受?” Michael 心想,还好这两天刚了解了一些与 unicode 编码相关的知识,于是微笑地回答:“当然可以,你明天下午就可以看到中文目录名称了。”
  4. 1. 使用 svn mv 指令,将原来的一些目录改名并 commit 入代码库,改名后的目录结构如下::
  5. arm
  6. ├─工作日志
  7. │ ├─总部人员
  8. │ ├─北京办
  9. │ └─上海办
  10. ├─公司公共文件参考目录
  11. └─临时文件存放处
  12. 2. 修改代码库的 authz.conf 文件,将相应目录逐一改名
  13. 3. UTF-8 格式的 authz.conf 文件,以及 BOM
  14. 将配置文件转换成 UTF-8 格式之后,Subversion 就能够正确识别中文字符了。但是这里需要注意一点,即必须保证 UTF-8 文件不包含 BOM 。BOM 是 Byte Order Mark 的缩写,指 UNICODE 文件头部用于指明高低字节排列顺序的几个字符,通常是 ``FF FE`` ,而将之用 UTF-8 编码之后,就是 ``EF BB BF`` 。由于 UTF-8 文件本身不存在字节序问题,所以对 UTF-16 等编码方式有重大意义的 BOM,对于 UTF-8 来说,只有一个作用——表明这个文件是 UTF-8 格式。由于 BOM 会给文本处理带来很多难题,所以现在很多软件都要求使用不带 BOM 的 UTF-8 文件,特别是一些处理文本的软件,如 <a href="http://lib.csdn.net/base/php" class='replace_word' title="PHP知识库" target='_blank' style='color:#df3434; font-weight:bold;'>PHP</a>、 UNIX 脚本文件等,svn 也是如此。
  15. 目前常用的一些文本编辑工具中,MS Windows 自带的“记事本”里面,“另存为”菜单保存出来的 UTF-8 格式文件,会自动带上 BOM 。新版本 UltraEdit 提供了选项,允许用户选择是否需要 BOM,而老版本的不会添加 BOM。请各位查看一下自己常用的编辑器的说明文件,看看它是否支持这个功能。
  16. 对于已经存在 BOM 的 UTF-8 文件,比如说就是微软“记事本”弄出来的,我们可以利用 UltraEdit 来将 BOM 去掉。方法是,首先利用“UTF-8 TO ASCII”菜单将文件转换成本地编码,通常是GB2312码,然后再使用“ASCII TO UTF-8(UNICODE Editing)”来转换到 UTF-8 即可。当然,这么操作之前,你肯定得先保证,你的 UltraEdit 保存出来的 UTF-8 文件的确是不带 BOM 的。

SVN的服务器端用户权限配置的更多相关文章

  1. jenkins用户权限配置错误,导致登录时提示:没有Overall/read权限

    jenkins用户权限配置错误,导致登录时提示:没有Overall/read权限 由于初次接触jenkins,于是在搭建好jenkins以后,想要对用户进行管理,于是乎开始在系统管理->conf ...

  2. SVN+Apache域用户认证配置方法_Windows(转,重新排版,部分内容更新优化)

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  3. Linux下SVN部署/安全及权限配置,实现web同步更新

    转自:http://www.cnblogs.com/me115/archive/2013/04/07/3002058.html 本文包含以下内容: SVN服务器安装 SVN权限管理 SVN使用SASL ...

  4. tomcat manager 的用户权限配置,及环境变量CATALINA_HOME的错位问题

    因为tomcat的manager是管理其他项目的发布.删除等操作的管理项目,所以需要为其设置登陆用户和密码,以及用户相应的访问权限,配置如下: tomcat-users.xml需要添加如下内容: &l ...

  5. Rabbitmq用户权限配置

    由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq(该 ...

  6. SVN的搭建(权限配置篇)

    如要转载,请注明出处! 两个问题: 如何维护多个目录或者仓库 目录权限如何设置 ============================================================ ...

  7. jenkins用户权限配置 Role-based Authorization Strategy

    插件简介 插件名称 Role-based Authorization Strategy 插件介绍 Role Strategy Plugin插件可以对构建的项目进行授权管理,让不同的用户管理不同的项目, ...

  8. MySQL数据库下用户及用户权限配置

    问题:使用某大腿写的远程工具管理Mysql数据库时发现所有数据能正常显示,但是无法进行删除.修改等操作. 思路:可以远程读取到数据库里的信息,说明当前主机可以远程连接数据库.却无法进行删除.修改这些操 ...

  9. Ubuntu14下安装svn仓库,以及权限配置

    sudo apt-get update 接下来安装svn apt-get install subversionapt-get install libapache2-svn 检查svn是否安装成功了: ...

随机推荐

  1. PHP抓取及分析网页的方法详解

    本文实例讲述了PHP抓取及分析网页的方法.分享给大家供大家参考,具体如下: 抓取和分析一个文件是非常简单的事.这个教程将通过一个例子带领你一步一步地去实现它.让我们开始吧! 首先,我首必须决定我们将抓 ...

  2. shared memory realm does not exist

    有天启动ORACLE,碰到如下问题 提示ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist 解决 ...

  3. 在gitlab上setup CI

    安装gitlab runner docker pull gitlab/gitlab-runner 启动gitlab runner docker run -d --name gitlab-runner ...

  4. RPC 框架通信原理

    RPC是指远程过程调用,也就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函数/方法,由于不在一个内存空间,不能直接调用,需要通过网络来表达调用的语义和传达调用的数据: ...

  5. nullcon HackIM 2016 -- Crypto Question 3

    After entring the luxurious condomium,you get the feel that you are in home of a yester Star. the ex ...

  6. JSP开发模式2_JSP/Servlet/JavaBean(简单注册功能)

    import java.util.regex.Matcher;import java.util.regex.Pattern; public class RegisterBean {    privat ...

  7. SQL Server 导出数据到 PostgreSQL

    乘着倒数据这会儿,把方法记录一下 需求:因为数据迁移,需要将SQL Server 2012中的数据库导入到PostgreSQL 数据库中 思路:创建一个空的数据库,便于导入数据.下载PostgreSQ ...

  8. 安装SQL SERVER开启SA用户登录的方法

    家庭安装SQL SERVER开启SA用户登录的方法:(切记按照网址操作完后,最后一定要在"管理工具"的"服务"里把"SQL SERVER(MSSQL ...

  9. C语言字符串拷贝

    C语言字符串拷贝利用指针操作,要清楚知道指针的指向 代码如下: #include <stdio.h> #include <assert.h> #include <stri ...

  10. linux 如何显示一个文件的某几行(中间几行)

    linux 如何显示一个文件的某几行(中间几行) [一]从第3000行开始,显示1000行.即显示3000~3999行 cat filename | tail -n +3000 | head -n 1 ...