Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / На кого положиться для авторизации? / 3 сообщений из 3, страница 1 из 1
15.10.2006, 20:36
    #34055851
Аноним
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
На кого положиться для авторизации?
Использую .NET Remoting и некую объектную модель приложения в виде слоя бизнес-логики.

Веб-приложение обязательно работает в домене. В Web.config включена имперсонификация.

Хочу явно проверять принадлежность текущего пользователя к той или иной группе Active Directory, для чего мне нужно как минимум получить имя его учетной записи в формате DOMAIN\user.
Это я могу сделать как минимум тремя способами:
1) WindowsIdentity.GetCurrent().Name
2) HttpContext.Current.User.Identity.Name
3) Через обращение к методу некоего COM+-объекта (COM+ приложение инсталлировано как серверное), в котором я также получаю WindowsIdentity текущего потока и, соответственно, имя учётной записи пользователя, выполнившего веб-запрос.

В том случае, если в свойствах каталога веб-приложения включена опция "Встроенная проверка подлинности Windows" и анонимный доступ отключен , то все три метода возвращают одинаковое значение.

В том случае, если анонимный доступ включен, то:
— первый метод возвращает имя учётной записи IUSR_ИМЯ_КОМПЬЮТЕРА
— второй метод возвращает пустую строку
— третий метод правильно идентифицирует пользователя, выполнившего запрос.

Вопрос: если таки разрешить анонимный доступ, могу ли я с уверенностью полагаться на identity, возвращаемый COM+? Я, честно говоря, не совсем понимаю, почему этот фокус с COM+ при разрешённом анонимном доступе к каталогу вообще работает.
...
Рейтинг: 0 / 0
15.10.2006, 21:37
    #34055884
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
На кого положиться для авторизации?
Использую .NET Remoting и некую объектную модель приложения в виде слоя бизнес-логики.

Веб-приложение обязательно работает в домене. В Web.config включена имперсонификация.

Хочу явно проверять принадлежность текущего пользователя к той или иной группе Active Directory, для чего мне нужно как минимум получить имя его учетной записи в формате DOMAIN\user.
Это я могу сделать как минимум тремя способами:
1) WindowsIdentity.GetCurrent().Name
2) HttpContext.Current.User.Identity.Name
3) Через обращение к методу некоего COM+-объекта (COM+ приложение инсталлировано как серверное), в котором я также получаю WindowsIdentity текущего потока и, соответственно, имя учётной записи пользователя, выполнившего веб-запрос.

В том случае, если в свойствах каталога веб-приложения включена опция "Встроенная проверка подлинности Windows" и анонимный доступ отключен, то все три метода возвращают одинаковое значение.

В том случае, если анонимный доступ включен, то:
— первый метод возвращает имя учётной записи IUSR_ИМЯ_КОМПЬЮТЕРА
— второй метод возвращает пустую строку
— третий метод правильно идентифицирует пользователя, выполнившего запрос.

Вопрос: если таки разрешить анонимный доступ, могу ли я с уверенностью полагаться на identity, возвращаемый COM+? Я, честно говоря, не совсем понимаю, почему этот фокус с COM+ при разрешённом анонимном доступе к каталогу вообще работает.
Думаю, можешь.
Есть многое на свете, друг Гораций, что непонятно нашим мудрецам.
...
Рейтинг: 0 / 0
16.10.2006, 18:28
    #34058264
stump
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
На кого положиться для авторизации?
Здравствуйте, Аноним, Вы писали:

А>Вопрос: если таки разрешить анонимный доступ, могу ли я с уверенностью полагаться на identity, возвращаемый COM+? Я, честно говоря, не совсем понимаю, почему этот фокус с COM+ при разрешённом анонимном доступе к каталогу вообще работает.

А если анонимный доступ включить а windows аутентификацию выключить , что зывает твой COM+?
Мне кажется наиболее надежным Thread.CurrentPrincipal потому что он учитывает текущий режим имперсонации ASP.Net
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / На кого положиться для авторизации? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]