linux配置SVN,添加用户,配置用户组的权限

一、xshell登陆服务器

用xshell登陆服务器,cd切换到服务器中svn的项目仓库目录中,然后切换到conf文件中(也可使用xftp),会看到3个文件,分别是

authz、passwd、svnserve.conf


image.png
image.png

二、编辑svnserve.conf文件,进行svn配置(权限不变时无需修改)

首先编辑svnserve.conf主配置文件,主要是对以下几项修改

[general]

anon-access = none    #取消匿名访问

auth-access = write    #授权用户有可写权限

password-db = passwd    #指定用户配置文件,后面会用到

authz-db = authz    #指定权限配置文件,后面会用到

如果后面大家要用到组权限的话,大家看authz-db = authz 前面应该会有 # 号键,记得去掉,这样才能在下面分配组权限的时候,才能起作用。

image.png

三、编辑passwd文件,添加用户

建立svn用户以及密码:

[users]
aaa=aaa123
bbb=bbb123
ccc=ccc123
ddd=ddd123
image.png

四、编辑authz,配置用户组和权限

配置组:

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
 
# [/foo/bar]
# harry = rw
# &joe = r
# * =
 
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
总管理员 = admin
开发组 = qqq,www,eee,rrr
运维组 = ttt,yyy,uuu,iii
测试组 = aaa,bbb,ccc,ddd

配置各个组权限:

[/]                   #[/]表示是svn根目录,标签后的用户拥有根目录权限
@总管理员 = rw         #分配给总管理员用户组根目录的读写权限
@开发组 = rw           #分配给开发组用户组根目录的读写权限
*=                    #没有分配权限的用户没有读写权限
 
[/运维知识库]          #根目录下面有一个[运维知识库]文件夹,
@运维组 = rw           #分配给运维组用户组根目录的读写权限
zzz = rq              #分配读写权限给zzz用户,为单个用户分配权限
 
[/测试知识库]
@测试组 = rw
image.png

五、重启svn

保存修改后的svnserve.conf ,passwd,authz 三个文件

然后用下面的命令重启一下svn

查看svn进程:ps -ef | grep svn 或者 ps aux | grep svn

强制杀死进程:kill -9 进程号

重启svn(/home/svn为自己的目录地址):svnserve -d -r /home/svn

image.png

六、切换SVN用户测试登录

最后看看是不是成功了,可以在本地测试一下,看看账户是否可用,对应的权限是不是已经有了,不是该组的用户应该不能访问没有赋予权限的目录的

  1. 在使用svn更新或提交数据时需要输入用户名和密码,在输入框中可以选择是否记录,以便下次操作无需再次输入用户名和密码;

    svn怎么切换用户
  2. 要切换其他用户名时,需要删除已记录用户的数据,在电脑桌面上右击,依次点击菜单项TortoiseSVN--设置;

    svn怎么切换用户
  3. 在设置界面中,左侧有很多菜单,找到【已保存数据】项;

    svn怎么切换用户
  4. 进入已保存数据的操作界面,点击清除按钮;

    svn怎么切换用户
  5. 在删除选择框中选择svn.simple项目,然后确定;再次更新或提交数据时就需要重新验证用户名和密码了;

    svn怎么切换用户
    svn怎么切换用户
  6. 在已保存数据界面也可以直接点击清除全部按钮,清楚所有已记录的数据;

    svn怎么切换用户
  7. 清除全部已记录数据后,在更新或提交数据时,会有证书失败失败,不用担心,选择永久接受凭证即可,以后再次操作就不会有提示了。

    svn怎么切换用户

拓展:用户组和权限目录是多级目录情况

helloword仓库:

      abc项目

      def项目

              产品部

              开发部

              数据部

      运维知识库

      测试知识库

现在对于def项目中,我不想让产品部的人看到开发部和数据部的目录下面的数据怎么办?可以通过 = 来设置,没有设置权限的人统统不能访问, = 这一句的目的,就是割断权限继承性,使得管理员可以定制某个目录及其子目录的权限,从而完全避开其父目录权限设置的影响

image.png

你可能感兴趣的:(linux配置SVN,添加用户,配置用户组的权限)