Subversion : Set Access Permission2023/07/21 |
Set Access Permission on SVN repositories. It requires [svnserve] is running. |
|
[1] | For example, Set Access Permission to [/var/svn/repos/project] repository. |
[root@dlp ~]#
vi /var/svn/repos/project/conf/svnserve.conf # line 9 : add (prohibit anonymous access) [general]
anon-access = none
# line 28 : uncomment password-db = passwd # line 37 : uncomment authz-db = authz
[root@dlp ~]#
vi /var/svn/repos/project/conf/passwd # set username and password for this repository [users]
debian = password
bookworm = password ubuntu = password
[root@dlp ~]#
vi /var/svn/repos/project/conf/authz # set groups and users [groups]
developer = debian,bookworm
# allow read/write on SVN document-root for developer group [/] @developer = rw # allow read on [trunk] folder for ubuntu user [/trunk] ubuntu = r |
[2] | Verify settings to access via SVN to the repository from any remote Hosts. |
debian@node01:~$ svn --username debian list svn://dlp.srv.world/repos/project Authentication realm: <svn://dlp.srv.world:3690> 02ae3c99-e1bc-42d3-9bc3-12f89593ff32 Password for 'debian': ******** # password you set on [1] ----------------------------------------------------------------------- ATTENTION! Your password for authentication realm: <svn://dlp.srv.world:3690> 02ae3c99-e1bc-42d3-9bc3-12f89593ff32 can only be stored to disk unencrypted! You are advised to configure your system so that Subversion can store passwords encrypted, if possible. See the documentation for details. You can avoid future appearances of this warning by setting the value of the 'store-plaintext-passwords' option to either 'yes' or 'no' in '/home/debian/.subversion/servers'. ----------------------------------------------------------------------- Store password unencrypted (yes/no)? no branches/ tags/ trunk/
debian@node01:~$
debian@node01:~$ echo 'store-plaintext-passwords = no' >> ~/.subversion/servers
mkdir work3 debian@node01:~$ cd work3 debian@node01:~/work3$ svn --username debian co svn://dlp.srv.world/repos/project Authentication realm: <svn://dlp.srv.world:3690> 02ae3c99-e1bc-42d3-9bc3-12f89593ff32 Password for 'debian': ******** A project/branches A project/tags A project/trunk Checked out revision 3.
debian@node01:~/work3$
cd project/trunk
# after creating or editing any files under the repository, # try to [commit] with [debian] user debian@node01:~/work3/project/trunk$ echo "index.html" > index.html debian@node01:~/work3/project/trunk$ svn add index.html debian@node01:~/work3/project/trunk$ svn --username ubuntu ci index.html -m "add new index.html 2023072101"
Authentication realm: <svn://dlp.srv.world:3690> 02ae3c99-e1bc-42d3-9bc3-12f89593ff32
Password for 'debian': ********
svn: E170001: Commit failed (details follow):
svn: E170001: Authorization failed
# denied normally as settings
# [commit] with [bookworm] user debian@node01:~/work3/project/trunk$ svn --username bookworm ci index.html -m "add new index.html 2023072101"
Authentication realm: <svn://dlp.srv.world:3690> 02ae3c99-e1bc-42d3-9bc3-12f89593ff32
Password for 'jammy': ********
Adding index.html
Transmitting file data .done
Committing transaction...
Committed revision 4.
# done normally as settings
debian@node01:~/work3/project/trunk$ svn update debian@node01:~/work3/project/trunk$ svn list index.html test.txt testfile.txt |
Sponsored Link |