0

WebSVN 2.3.3 および Subversion 1.5.6 を使用して、32 ビットの Win7 デスクトップで Apache サーバー (2.2.21) を実行しています。

問題は次のとおりです。

に移動するとhttp://myservername/websvn、LDAP 認証が強制され、構成ファイルで許可したユーザーのみがアクセスできます。ただし、http://myservername/WebSvnまたは/Websvnまたはに移動した場合/webSVN、LDAP認証は強制されず、構成ファイルで指定されていないユーザーを含め、すべてのユーザーが同じwebsvnページに入ることができます。

では、この問題を解決するにはどうすればよいですか?

更新: これが私の websvn.conf ファイルです。セキュリティ上の理由から、ここの投稿に合うように変更しました。この特定のファイルは、ファイルの末尾近くにhttpd.conf' ' を挿入することによってファイル内で呼び出されます。Include C:/somehwere/websvn.conf

<Location /websvn/> 
    #Redirect any requests to this page to the listing.php
    FallbackResource listing.php

    AuthLDAPBindDN "acct@xxx.com"
    AuthLDAPBindPassword "password"

    #The LDAP query URL
    AuthLDAPURL "ldap://x.x.x.x.x.x:389/DC=x,DC=x,DC=x,DC=x,DC=x?sAMAccountName?sub?(objectClass=user)" NONE

    AuthType Basic
    AuthName "Websvn"
    AuthBasicProvider ldap
    AuthzLDAPAuthoritative off  

    AuthUserFile /dev/null          
    Require ldap-user user1

</Location>

2013 年 7 月 2 日更新 : の代わりに を使用する必要があるとの連絡を受け、それを実行しました。Apache のドキュメントでは、特に「いつ何を使用するか」の部分で と の違いについて詳しく説明しています。したがって、これを反映するように websvn.conv ファイルを変更しました。

<Directory /websvn> 
        DirectoryIndex listing.php

        Options FollowSymLinks

        Order allow,deny
        Allow from all

        AuthLDAPBindDN "acct@xxx.com"
        AuthLDAPBindPassword "password"

        #The LDAP query URL
        AuthLDAPURL "ldap://x.x.x.x.x.x:389/DC=x,DC=x,DC=x,DC=x,DC=x?sAMAccountName?sub?(objectClass=user)" NONE

        AuthType Basic
        AuthName "Websvn"
        AuthBasicProvider ldap
        AuthzLDAPAuthoritative off  

        Require ldap-user user1 
    </Directory>

ただし、間違った URL (例:/websVn) を使用しても websvn にアクセスでき、さらに認証が開始されません。

また、listing.php ページが表示されません。代わりに、websvn のディレクトリ リストが表示されます。

誰か私が間違っていることを指摘してもらえますか? ありがとうございました。

4

1 に答える 1

0

httpd.conf ファイルのこのコード行を使用して、すべての受信 URL を小文字に変換することで、これを解決しました。

   RewriteEngine On
   RewriteMap  lc int:tolower
   RewriteCond %{REQUEST_URI} [A-Z]
   RewriteRule (.*) ${lc:$1} [R=301,L]

LDAP 認証も機能させるには、websvn 構成ファイルの < Location > バージョンを使用する必要がありました。

ただし、Apache ドキュメントでは大文字と小文字が区別されると主張しているにもかかわらず、< Directory > で大文字と小文字が区別されない理由については、まだ困惑しています。

于 2013-03-12T07:22:33.187 に答える