最終更新:2013-04-05 (金) 19:08:48 (4032d)  

Subversion/Apache連携
Top / Subversion / Apache連携

モジュール

httpd.conf

<Location /repos >
        DAV svn
        SVNListParentPath on
        SVNParentPath /var/www/svn
        AuthType Basic
        AuthName "access to repository"
        AuthUserFile /var/www/.htpasswd.svn
        Require valid-user
        AuthzSVNAccessFile /var/www/svn-acl.conf
</Location>

リポジトリのパスの設定

  • SVNParentPath? ディレクティブを使用する場合、新しいリポジトリを作成(svnadmin create)する際に Apache 設定ファイルを変更する必要はありません。単にはじめのリポジトリと同じ場所に、新しいリポジトリを作成してください。これで終わりです!

SSL

  • SSLRequireSSL

リポジトリの一覧の表示

  • SVNListParentPath?をonに(デフォルトoff)

アクセス制御

ベーシック認証を用いたアクセス制御

  • AuthUserFile - 認証に使用するユーザとパスワードの一覧が格納されている、 テキストファイルの名前を設定する
  • 認証を通った人はR/W
    • 単にベーシック認証をかける
  • 認証してない人はリードオンリーで、認証した人だけ書き込み可能に
  • httpd.conf
    Require valid-user
    <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
    </LimitExcept>

AuthzSVNAccessFileを使ったアクセス制御

  • ベーシック認証を通ったユーザに対し、グループを設定したり、リポジトリごとにr/wの権限を設定したりできる。

参考