Мне нужно настроить SVN и Trac для моей лаборатории в аспирантуре. У нас есть машина под управлением Windows Server 2003, и я надеялся использовать ее. Одна вещь, которая нам действительно нужна, — это аутентификация путем входа в домен Windows. Школа настроена на одном домене с использованием AD. Я никогда ничего подобного раньше не делал, так что может кто-нибудь рассказать, насколько это сложно/возможно/как это сделать.
Спасибо
решение1
Хотя я не уверен, что это именно то, что вы ищете, я использовал некоторые из автономных инструментов BitNamiавтономные стекидля моей личной работы раньше, и они отлично справляются с грязной работой. У них есть и Subversion, и Trac-модуль, так что все, что вам нужно сделать, это установить оба, а затем изменить файлы конфигурации для обработки аутентификации Windows. Плюс, поскольку стек BitNami использует Apache для обслуживания установки Trac, легко перейти по ссылке, которую дал proy выше.
решение2
решение3
Ссылки уже хорошие (особенно proy), но реальный пример, возможно, поможет.
Вот некоторые части httpd.conf, используемые для сервера Windows (XP) со старым Apache 2.2.11.
<...>
# Dynamic Shared Object (DSO) Support
<..>
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule sspi_auth_module modules/mod_auth_sspi.so
<...>
# provides list of repo with anonymous access
<Location /svn>
DAV svn
SVNParentPath "C:/data/repositories/"
SVNListParentPath on
SVNIndexXSLT "/svnindex.xsl"
SVNAutoversioning on
</Location>
<Location /svn/>
# Checked access for a deeper look
# for single repository configuration (access right, etc), use a more specific entry in 'Location',
# and use 'SVNPath "<path to repository>"' instead of 'SVNParentPath
DAV svn
SVNParentPath "C:/data/repositories/"
SVNListParentPath on
# for web browsing
SVNIndexXSLT "/svnindex.xsl"
SVNAutoversioning on
# --- windows authentication
AuthName "a nice, friendly and informative message"
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
SSPIDomain <YOUR_DOMAIN>
SSPIUsernameCase lower
# let non-IE client authentification (YES)
SSPIOfferBasic On
# comment the next line if you want to keep domain name in userid string passed down to mod_authz_svn
SSPIOmitDomain On
Satisfy Any
Require valid-user
# specific access control policy enforced by mod_authz_svn
AuthzSVNAccessFile "C:/controls/svnaccesspolicy.private"
</Location>
...
# And the config for a series of Trac sites
# No authentication for read only
<Location /bugs>
SetHandler mod_python
# Date and Time localization, with the standard (fast)cgi
SetEnv LC_TIME "fr_CH"
SetEnv PYTHON_EGG_CACHE "C:/cache/egg"
# Date and Time localization, with the modpython
PythonOption TracLocale "French_Switzerland"
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir "C:/data/trac"
PythonOption TracUriRoot /bugs
</Location>
<LocationMatch "/bugs/[^/]+/login">
SetEnv LC_TIME "fr_CH"
SetEnv PYTHON_EGG_CACHE "C:/cache/egg"
AuthName "Another nice and informative message"
AuthType SSPI
# NT Domain auth config
SSPIAuth On
SSPIAuthoritative On
SSPIDomain <YourDomain>
SSPIUsernameCase lower
SSPIOfferBasic On
SSPIOmitDomain On
# following line squishes bug #1168 if IE has troubles editing wiki pages.
SSPIBasicPreferred On
BrowserMatch "MSIE 6\.0; Windows NT 5\." nokeepalive
BrowserMatch "MSIE 7\.0; Windows NT 5\." nokeepalive
# and this one is a tentative to solve some login issue with IE7 (http://trac.edgewall.org/ticket/4560#comment:22)
SSPIOfferSSPI off
SSPIPerRequestAuth On
# Satisfy Any
Require valid-user
</LocationMatch>
<snip>
Как видите, оба сайта могут использовать один и тот же способ запроса DC для проверки.
Обратите внимание, что это была конфигурация для старого сервера (winXp) - возможно, немного устаревшего, и не использующего ssl, который может быть необходим в вашем случае. Кроме того, и trac, и subversion были установлены "вручную" (т.е. не интегрированная среда) - что также хорошо, когда возникают какие-то проблемы (вы будете лучше понимать, куда направлять свои пальцы).
решение4
SVN - использованиеVisualSVNСервер, он максимально прост в использовании на Windows, интегрируется с Active Directory и устанавливается/обновляется за считанные секунды.
Trac - У людей VisualSVN естьруководство по установке Tracработать с ним. Они говорят "не поддерживается", "неофициально" и т. д., но у них все равно есть код и руководство для вас.