Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.12.2013, 21:58
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Всем доброго времени суток. Потребовалось сделать аутентификацию и авторизацию в ASP.Net MVC приложении. Исходные данные: приложение интранет, пользователи сами не могут себя добавить, их заводит админ прямо в БД (пользователи СУБД). Сразу скажу, родной Membership не предлагать, т.к. БД - Oracle, нативный из ODAC - тоже, т.к. БД старой версии. Аутентификацию буду реализовывать с помощью форм, а в контроллере просто пытаться открыть соединение, используя логин/пароль, введенный пользователем. Соединение открылось - все ок, значит такой пользователь в БД заведен (кстати, такой подход нормальный?). Сложнее с авторизацией, пока не пойму как ее делать. Есть мысль добавить 2 таблицы: Roles и UsersRoles (связка), помогите ссылками с нормальным переопределенным провайдером, просто в гугле их море, хотелось бы без граблей и ненужных велосипедов. И вопрос по использованию ролей, если я хочу показывать ссылки пользователю в зависимости от его роли, я должен перед каждым набором ссылок делать switch, перебирать все существующие и роли и в зависимости от роли выводить ссылки? такая логика во View пугает) есть ли способ получше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2013, 11:55
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
МСУ, За ссылки спасибо, посмотрю, а как быть с показом ссылок пользователю в зависимости от его роли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2013, 12:10
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
web.sitemap можно использовать, там у каждого siteMapNode перечисляется роль для доступа Код: xml 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.12.2013, 14:47
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Nicky_NМСУ, За ссылки спасибо, посмотрю, а как быть с показом ссылок пользователю в зависимости от его роли? System.Web.Security.Roles.RoleExists() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.12.2013, 17:12
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
МСУNicky_NМСУ, За ссылки спасибо, посмотрю, а как быть с показом ссылок пользователю в зависимости от его роли? System.Web.Security.Roles.RoleExists() можно поподробнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.12.2013, 20:36
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Nicky_N, гугл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.12.2013, 21:12
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
МСУ, MSDN:Roles.RoleExists Method - Gets a value indicating whether the specified role name already exists in the role data source. какое это отношение имеет к показу пользователю ссылок в зависимости от его роли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.12.2013, 21:16
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Nicky_NМСУ, MSDN:Roles.RoleExists Method - Gets a value indicating whether the specified role name already exists in the role data source. какое это отношение имеет к показу пользователю ссылок в зависимости от его роли? Самое прямое. Если RoleExists(роль) == true, значит нужно пользователю показать ссылку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.12.2013, 21:46
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
МСУ, Gets a value indicating whether the specified role name already exists in the role data source т.е. он проверяет есть ли роль в источнике, а не наличие роли у пользователя? может быть корректнее HttpContext.Current.User.IsInRole("role")? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.12.2013, 10:19
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Да, речь про IsInRole. Тот случай, когда думаешь одно, а пишешь другое - сорри. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.12.2013, 11:53
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Я так понял есть 2 подхода: 1. Для контроллеров и методов использовать атрибуты [Authorize(Roles = "SuperAdmin")] и во View проверять HttpContext.Current.User.IsInRole("role") при показе ссылок пользователю. 2. Код: html 1. 2. 3. 4. имхо, 2 как-то поприятнее выглядит, при измении ролей вся информация в одном месте, если использовать 1 способ - надо пройтись по всем контроллерам и изменить атрибуты + пройтись по всем View и изменить опции показа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.12.2013, 12:16
|
|||
|---|---|---|---|
Custom Role Provider нужен совет |
|||
|
#18+
Nicky_NЯ так понял есть 2 подхода Ну вариант с атрибутом контроллера - это и не вариант вовсе, т.к. пользователю просто будет запрещен доступ. Вариант с анализом ролей - это то, что нужно. И не важно где анализировать и перечислять, в siteMapNode или разором в представлении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=18&tablet=1&tid=1357856]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 351ms |

| 0 / 0 |
