Назад | Перейти на главную страницу

apache2.2 с mod_auth_kerb SSO: как вернуться в тот же каталог, когда пользователь не может аутентифицироваться

Я реализую внутреннюю CMS (Joomla 2.5) в многодоменной среде, регистрируя их с помощью Kerberos против Windows AD -> SSO. SSO с Kerberos идеально подходит для интегрированных доменов, а также SSO для CMS. Моя проблема: около 10% наших пользователей не находятся в каком-либо домене (в основном о продажах ...), поэтому они не могут пройти аутентификацию с помощью Kerberos против Windows AD. Но мы хотим предоставить доступ к интрасети и этим пользователям, даже если они не могут войти в CMS. мой вопрос: есть ли способ перенаправить этих пользователей в каталог CMS в качестве запасного варианта?

моя конфигурация apache до сих пор:

<VirtualHost *:80>
    ServerAdmin someone@mydomain.com
    ServerName  intranet.company.local

    DocumentRoot /opt/joomla/jupgrade

    <Directory /opt/joomla/jupgrade>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all

        AuthType Kerberos
        AuthName "Intranet Login"
        KrbMethodNegotiate On
        KrbMethodK5Passwd Off
        KrbAuthRealms DOMAIN1 DOMAIN2 DOMAIN3 DOMAIN4 DOMAIN5
        KrbServiceName HTTP
        Krb5KeyTab /etc/apache2/kerberos_myserver_combined.keytab
        require valid-user

        #ErrorDocument 401 /noauth/401.hmtl
    </Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel debug

CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Невозможно присоединить этих пользователей к одному из доменов. Существует проект решения для одного домена, но это займет некоторое время. Ubuntu 12.04 и Apache 2.2 в качестве среды веб-сервера.

Заранее благодарим за любое предложение!

после дополнительного поиска и ошибки trail 'n' я думаю, что лучший совет для решения здесь: https://stackoverflow.com/questions/1726860/apache-authentication-redirect-on-failure-reliably

похоже, что с более высокими версиями apache больше возможностей поймать 401.

Вы можете использовать настраиваемый ответ об ошибке для перенаправления неавторизованных пользователей на другой URL или в другой каталог:

ErrorDocument 401 http://intranet.com/
ErrorDocument 401 /intranet.com/login.html