OS: Linux OpenSUSE バージョン管理 - Mercurial Apache2
http://my.os.name/ を実行すると、ページが表示されます-したがって、Apacheが実行されています。http://my.os.name:/hg を実行すると、Mercurial ページが表示されるため、http Internet Explorer ページに Mercurial が表示されます。
Mercurial でリポジトリを作成したり、通常の作業を行うことができます。
私が必要なもの。1. 上記の Hg リンクを開くと、Mercurial(Hg) リポジトリ ページのホームページが表示される代わりに、まず自分が自分の会社に属しているかどうかを確認する必要があります。つまり、Windows Active Directory または LDAP サーバーを使用して認証する必要があります。
- ファイルに変更を加えたり、Hg でディレクトリ/リポジトリを作成したりする場合は、その操作を実行するための有効なアクセス権があるかどうかを確認/認証/検証する必要があります。
これを行うにはどうすればよいですか。私は Apache/Mercurial 認証のセットアップが初めてなので、段階的なヘルプが必要です。
これを設定するためのオンライン ヘルプをほぼすべて読みましたが、これまでのところ、Hg リンクを開くと、ユーザー名/パスワード プロンプトのポップアップが表示されるかどうかに到達することができますが、それを使用しない/機能しません。
また、.htpasswd/.htaccess またはダイジェスト ファイルを作成したくありません。私が疑問に思っているのは、Windows Active Directory で、たとえば、Company/Project1_readers、Company/Project1_Contributors、Company/Project1_Repository1_Readers、Company/Project1_Repository2_Contributors 用に作成されたセキュリティ グループがある場合、およびそれらの AD セキュリティ グループ ID で、すべての開発者を追加してから、AD でこれらのグループを使用して、.hg/hgrc ファイルにユーザーを追加する代わりに、開発者にアクセスを許可したいと考えています。(これは、すべてのリポジトリなどでファイルをいじる(ユーザーを追加/削除する)のではなく、通常、TFS(Team Foundation Server)でアクセスを許可/取り消しするために行うことです.
どうすれば上記を行うことができますか?
最善の方法が .htpasswd/.htaccess/.htdigest などのファイルのみを作成することであるかどうかを親切にアドバイスしてください...上記のシナリオを達成するのが間違っている場合。
私の httpd.conf ファイルには別の .conf ファイルが含まれています (含まれています)
=========================================
<Directory /srv/www/hg>
Order deny,allow
Deny from All
AuthType Basic
# #AuthName "Apache Web Site: Login with your AD(Active Directory) credentials"
AuthName "Mercurial Repositories"
#
#
# AuthBasicProvider ldap
# AuthzLDAPAuthoritative off
# #AuthLDAPURL ldap://10.211.16.1:389/OU=TSH,DC=tsh,DC=Mason,DC=com?sAMAccountName
# AuthLDAPURL "ldap://10.211.16.1:389/?samAccountName?sub?(objectClass=user)"
## #ldap://ldap.your-domain.com:389/o=stooges?uid?sub
# AuthLDAPBindDN "cn=xyzserver,OU=Services,OU=Users,OU=Infrastructure,OU=DEN,OU=KSH,DC=Psh,DC=Mason,DC=com"
# #"cn=StoogeAdmin,o=stooges"
# AuthLDAPBindPassword secret1
require valid-user
# require ldap-user
Satisfy any
</Directory>
Jenkinsでabvoe LDAP URLを使用している場合、Jenkinsはログイン中にユーザーを正常に認証していますが、このサーバーの.confファイルにあるときに同じことが機能しないのはなぜですか. apache2 では、上記は httpd.conf ファイルにある必要はありません。インクルードの概念は、file.conf をインクルードさせ、file.conf には上記のコードが含まれています。これは、httpd.conf ファイルに記載されている Apache2 の指示に従っています。
残りの mercurial ファイル hgwebdir.cgi、hgweb.cgi、hgweb.config はすべて良好です (私が読んだオンライン ブログによると)。
必要なモジュールをすべてロードしました (/etc/apache2/sysconfig.d/loadmodule.conf ファイルに表示されます (LDAP 認証に必要なモジュール、つまり mod_ldap、mod_authz_ldap など、ldap と apache に関連するモジュール)。