Subversion : アクセス権を設定する2023/07/21 |
[svnserve] を起動している場合の、リポジトリに対するアクセス権の設定です。 |
|
[1] | 例として [/var/svn/repos/project] リポジトリに対するアクセス権を設定します。 |
root@dlp:~#
vi /var/svn/repos/project/conf/svnserve.conf # 9行目 : 匿名アクセスを禁止する場合は追記 [general]
anon-access = none
# 28行目 : コメント解除 password-db = passwd # 37行目 : コメント解除 authz-db = authz
root@dlp:~#
vi /var/svn/repos/project/conf/passwd # ユーザー名とパスワードを設定 [users]
debian = password
bookworm = password ubuntu = password
root@dlp:~#
vi /var/svn/repos/project/conf/authz # グループと所属ユーザーを定義 [groups]
developer = debian,bookworm
# ドキュメントルートに対して [developer] グループに読み書き許可 [/] @developer = rw # [trunk] フォルダに対して [ubuntu] に読み取り許可 [/trunk] ubuntu = r |
[2] | 任意のホストから SVN アクセスして設定を確認します。 |
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': ******** # [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
# 適当にバージョン管理下の任意のファイル作成/編集後に # [debian] ユーザーで [commit] 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
# 設定通り拒否された
# [bookworm] ユーザーで [commit] 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.
# 設定通り [commit] できた
debian@node01:~/work3/project/trunk$ svn update debian@node01:~/work3/project/trunk$ svn list index.html test.txt testfile.txt |
Sponsored Link |
|