Приветствую! Возникла проблема - нужно чтобы доступ к сайту имели некоторые пользователи домена (пусть будет DOMAIN\Admin) и некоторые пользователи "извне" (пусть будет test)В файле .htaccess делал нечто подобное:
AuthType SSPI
SSPIAuth OnSSPIOfferSSPI On
SSPIAuthoritative Off
SSPIOfferBasic Off
SSPIBasicPreferred OffAuthType Basic
AuthName "Input Login / Password"
AuthBasicAuthoritative Off
AuthUserFile C:/apache/localhost/cgi-bin/.passwdrequire user DOMAIN\Admin test
перепробовал все возможные сочетания параметров (менял Off на On и наоборот), изменял порядок загрузки модулей в httpd.conf:
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule sspi_auth_module modules/mod_auth_sspi.so
Но работает все равно только что-то одно - или SSPI, или Basic, а одновременно не получается.У кого-нибудь работает реально такой гибрид авторизации? Не обязательно именно с этими модулями, может быть с другими...
не меняйте значения опций наугад - это дурная привычка, почитайте лучше что-нибудь полезное по теме! шутка))) конечно же можно поиграть и в рулетку "on or off" ) ну, а теперь к теме, замечу, что материала на тему sspi модуля просто НЕТ (он конечно есть, но это больше к теме философии)
Для того, чтобы работала базовая аутентификация в дополнение к SSPI, вам придется создать листинг для различных директории, используя<Location /directory1>
AuthType Basic
blah-blah
</Location>
и<Location /directory2>
AuthType SSPI
blah-blah
</Location>
если это вас не устраивает, то можно использовать host-based авторизацию, где можно использовать два типа авторизации на одну директорию с опцией "Satisfy Any"
вот так в одной конторе у меня работает авторизация к svn:::::LoadModule sspi_auth_module modules/mod_auth_sspi.so
LoadModule auth_basic_module modules/mod_auth_basic.so
--------------------------------------<Location /svn/>
DAV svn
SVNListParentPath on
SVNParentPath "G:/svn/reposs"AuthName "SVN Repository VI"
# NT Domain Logins
AuthType SSPI
SSPIAuth On
SSPIAuthoritative Off
SSPIDomain LEGAL
SSPIOfferBasic On
# Htpasswd Logins
AuthType Basic
AuthBasicAuthoritative Off
AuthUserFile "conf/.htpasswd"Require valid-user
Order deny,allow
Allow from all#Allow from 213.5.xx.xxx
#Allow from 172.16.8.
#Satisfy AnyAuthzSVNAccessFile "conf/svnaccess.conf"
</Location>
-------------------------------------
conf/svnaccess.conf[groups]
admin = kamutoherovato, admin
dev = ribka, dablya, vot
clients = vasya, yanevasya
guests = demo, project# Default access rule for ALL repositories
# admin can r/w all
[/]
@admin = rw# Project A
[project-a:/]
@dev = rw
@clients = r
@guests = r# Project B
[project-b:/]
@clients = rw
someid = r# Project C (beta)
[project-c:/]
@clients = r
someid = rтак что - курите, сэр бамбук!
Спасибо! Вариант с разграничениям прав по каталогам с разграничением через IP - работает! По крайней мере, сейчас это у меня единственный рабочий вариант... Хотя конечно не самый удобный (держать два одинаковых каталога)Покопал в сторону Satisfy Any - вот это было бы отлично... Если бы я смог получить имя в домене! Авторизуюсь я нормально, но когда захожу из-под домена - у меня нету имени пользователя, а оно мне нужно...
Вот и очередной вопрос... Могу ли я в .htaccess получить имя пользователя домена, не требуя регистрации?
SetEnv DOMAIN_USER <Вот как здесь получить имя пользователя из домена>
Есть вариант как это сделать?
может я не совсем понял, но!? Вы хотите знать/использовать username подключившегося пользователя устанавливая переменную окружения сервера DOMAIN_USER? для каких целей, если ДА?> Вот и очередной вопрос... Могу ли я в .htaccess получить имя пользователя
> домена, не требуя регистрации?про регистрацию подробней!
> может я не совсем понял, но!? Вы хотите знать/использовать username подключившегося пользователя
> устанавливая переменную окружения сервера DOMAIN_USER? для каких целей, если ДА?
>> Вот и очередной вопрос... Могу ли я в .htaccess получить имя пользователя
>> домена, не требуя регистрации?
> про регистрацию подробней!Подумал - если мы пришли с чужих IP - нужна Basic авторизация
А если со своих - то мы из своего домена... Но тогда нужно имя пользователя. Чтобы использовать его в дальнейшем, в скриптах...
Впрочем я думаю сейчас это небезопасно... буду разрабатывать вариант с разными каталогами, тем более что он работает...