質問

Apacheで実行されているSubversionサーバーがあります。 Apache ConfigurationでLDAPを使用してユーザーを認証し、SVN Authorizationsを使用して特定のリポジトリへのユーザーアクセスを制限します。これは完全に機能します。

アパッチ

DAV svn
SVNParentPath /srv/svn
SVNListParentPath Off
SVNPathAuthz Off
AuthType Basic
AuthName "Subversion Repository"
AuthBasicProvider ldap
AuthLDAPBindDN        # private stuff
AuthLDAPBindPassword  # private stuff
AuthLDAPURL           # private stuff
Require valid-user
AuthzSVNAccessFile /etc/apache2/dav_svn.authz

転覆

[groups]
soft = me, and, all, other, developpers

1つのマシンから匿名アクセスを追加します

今、私はリポジトリへの匿名のアクセスが必要なセットアップ(Rietveld、コードレビュー用)を設定したいサービスを持っています。これはWebサービスであるため、アクセスは常に同じサーバーから行われます。したがって、このマシンからすべてのアクセスを許可するようにApache構成を追加しました。これは、すべてのユーザーへの読み取りアクセスを許可する認証ファイルに追加の行を追加するまで機能しませんでした。

アパッチ

<Limit GET PROPFIND OPTIONS REPORT>
  Order allow,deny
  Allow from # private IP address
  Satisfy Any
</Limit>

転覆

[Software:/]
@soft = rw
* = r                    # <-- This is the added line

たとえば、特定のIPから承認を追加する前に、すべてのユーザーが認証されたため、名前がありました。これで、一部のアクセスはユーザー名なしで行われます!私はそれを見つけました - Apacheログファイルのユーザー名、しかし行 - = r 動作しません、そうでもありません anonymous = r. 。 SVN許可の全員への読み取りアクセスを許可しないでください。これどうやってするの?

役に立ちましたか?

解決

これをauthzファイルに入れてみてください:

[Software:/]
@soft = rw
$anonymous=r
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top