Subversion : アクセス権を設定する2024/09/13 |
[svnserve] を起動している場合の、リポジトリに対するアクセス権の設定です。 |
|
[1] | 例として [/home/svn/repos/project] リポジトリに対するアクセス権を設定します。 |
root@dlp:~ #
vi /home/svn/repos/project/conf/svnserve.conf # 9行目 : 匿名アクセスを禁止する場合は追記 [general]
anon-access = none
# 28行目 : コメント解除 password-db = passwd # 37行目 : コメント解除 authz-db = authz
root@dlp:~ #
vi /home/svn/repos/project/conf/passwd # ユーザー名とパスワードを設定 [users]
freebsd = password
netbsd = password openbsd = password
root@dlp:~ #
vi /home/svn/repos/project/conf/authz # グループと所属ユーザーを定義 [groups]
developer = freebsd,netbsd
# ドキュメントルートに対して [developer] グループに読み書き許可 [/] @developer = rw # [trunk] フォルダに対して [openbsd] に読み取り許可 [/trunk] openbsd = r |
[2] | 任意のホストから SVN アクセスして設定を確認します。 |
freebsd@node01:~ $ svn --username freebsd list svn://dlp.srv.world/project
Authentication realm: <svn://dlp.srv.world:3690> 3247b0a6-6571-ef11-b1e8-df8f47688296
Password for 'freebsd': ******** # [1] で設定したパスワード
branches/
tags/
trunk/
freebsd@node01:~ $
freebsd@node01:~ $ echo 'store-plaintext-passwords = no' >> ~/.subversion/servers
mkdir work3 freebsd@node01:~ $ cd work3 freebsd@node01:~/work3 $ svn --username freebsd co svn://dlp.srv.world/project Authentication realm: <svn://dlp.srv.world:3690> 3247b0a6-6571-ef11-b1e8-df8f47688296 Password for 'freebsd': ******** A project/branches A project/tags A project/trunk Checked out revision 3.
freebsd@node01:~/work3 $
cd project/trunk
# 適当にバージョン管理下の任意のファイル作成/編集後に # [openbsd] ユーザーで [commit] freebsd@node01:~/work3/project/trunk $ echo "index.html" > index.html freebsd@node01:~/work3/project/trunk $ svn add index.html freebsd@node01:~/work3/project/trunk $ svn --username openbsd ci index.html -m "add new index.html 2024091301"
Authentication realm: <svn://dlp.srv.world:3690> 3247b0a6-6571-ef11-b1e8-df8f47688296
Password for 'openbsd': ********
svn: E170001: Commit failed (details follow):
svn: E170001: Authorization failed
# 設定通り拒否された
# [netbsd] ユーザーで [commit] freebsd@node01:~/work3/project/trunk $ svn --username netbsd ci index.html -m "add new index.html 2024091301"
Authentication realm: <svn://dlp.srv.world:3690> 3247b0a6-6571-ef11-b1e8-df8f47688296
Password for 'netbsd': ********
Adding index.html
Transmitting file data .done
Committing transaction...
Committed revision 4.
# 設定通り [commit] できた
freebsd@node01:~/work3/project/trunk $ svn update freebsd@node01:~/work3/project/trunk $ svn list index.html |
Sponsored Link |