web-dev-qa-db-ja.com

WindowsドメインログオンによるSVNユーザーの検証

大学のラボ用にSVNサーバー(Windows XPマシン))をセットアップしました。現在、誰でも匿名でリポジトリにアクセスしてコミットできます。

ADドメインの特定のユーザーのみにリポジトリへのアクセスを許可したい。可能であれば、パスワードもドメインのパスワードと同じにする必要があります。

これは可能ですか?

解決済み

Mod_auth_sspiをインストールし、httpd.confを次のように構成しました。

DAV svn SVNPath "R:\ SVN"

AuthName "SVN Server"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIDomain AD
SSPIOfferBasic On
Require valid-user

AuthzSVNAccessFile "r:/svn/svnaccess.conf"

およびsvnaccess.conf内:

[groups]
dev = AD\user1, user1, AD\user2, user2

[/]
@dev = rw
2
rlbond

Apacheを使用している場合は、はい。 mod_auth_sspiがインストールされていることを確認してください。次に、適切な設定でディレクトリを構成します。

<Directory />
    Options FollowSymLinks
    AllowOverride None

    AuthType SSPI
    AuthName "YOURDOMAIN"
    SSPIAuth On
    SSPIAuthoritative Off
    SSPIDomain dc.yourdomain.com
    SSPIOmitDomain Off
    SSPIOfferBasic On
    SSPIUsernameCase lower
    Require group "YOURDOMAIN\AuthorizedGroup" 
</Directory>

Svnpasswdファイルでは、完全なドメイン名でユーザーを指定するだけです。

developers = mydomain\myuser
[/]
@developers = rw

それが少し役立つことを願っています。

6
palehorse

Subversionがどのように提供されるかを明示的に述べていませんが、タグに基づいて、Apacheを想定しています。 Apache 2.2を使用して、ADによる認証でSubversionを提供するのは非常に簡単です。

Apache構成で、適切なAuthパラメーターをリポジトリーのロケーション・ブロックに追加する必要があります。

例(制限された読み取りおよび書き込みアクセス):

<Location /repo>
    DAV svn
    SVNPath /var/svn/repo
    AuthName "Subversion WebDAV"
    AuthType Basic
    AuthLDAPURL "<ldap_url>"
    AuthLDAPBindDN "<ldap_bind_dn>"
    AuthLDAPBindPassword "<password>"
    Require valid-user
</Location>

ADへの接続に使用するApacheのサービスアカウントを設定するには、AD管理者に相談する必要がある場合があります(ADで検索を実行する前にバインドする必要がある場合)。

ユーザーに書き込みの認証を要求しながら匿名の読み取りを許可する場合は、上記のRequire valid-user行を次のように置き換えます。

<LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
</LimitExcept>
1
Shane Meyers

WindowsでSubversionリポジトリをホストするための他の2つのオプションは、SVNIsapiとVisualSVNです。

SVNIsapi はIISプラグインIIS 6.0以降。ADセキュリティはIISによって提供されます。

Visual SVN リポジトリを管理するためのApache、svn、およびGUIツールがバンドルされています。 ADセキュリティはApacheモジュールによって提供され、GUIツールを介して構成されます。

0
Lachlan Roche