Есть база на MS SQL SERVER 2005
для работы с ней написано клиентское приложение (C#, .Net 2.0)
с БД посредством этого приложения могут работать две категории юзеров: операторы (они имет право только на добавление инфы в одну из таблиц) и администраторы (имеют права на просмотр/изменение всех таблиц)
Здравствуйте, rxrw, Вы писали:
R>Есть база на MS SQL SERVER 2005 R>для работы с ней написано клиентское приложение (C#, .Net 2.0)
R>с БД посредством этого приложения могут работать две категории юзеров: операторы (они имет право только на добавление инфы в одну из таблиц) и администраторы (имеют права на просмотр/изменение всех таблиц)
R>как в таком случае реализовать схему автризации?
R>спасибо.
Вариантов несколько.
Если двух звенка, то варианты такие
1 — Заводить свои таблички пользователей и их прав, соответсвенно обрабатывать как в базе так и в UI
2 — Коннектится используя виндовс аутентификацию и проставлять права на sp_AddEditRemove для каждого юзера. В UI соответсвенно отрабатывать посылая запросы используя user_id()
По реализации почти равноценно
Если 3х звенка, то первый вариант реализовать на мой взгляд проще.
Здравствуйте, rxrw, Вы писали:
R>Есть база на MS SQL SERVER 2005 R>для работы с ней написано клиентское приложение (C#, .Net 2.0)
R>с БД посредством этого приложения могут работать две категории юзеров: операторы (они имет право только на добавление инфы в одну из таблиц) и администраторы (имеют права на просмотр/изменение всех таблиц)
R>как в таком случае реализовать схему автризации?
R>спасибо.
Создаете группы пользователей (роли), каждой роли назначаете права на определенные объекты БД и затем назначаете эти роли конкретным созданным юзерам. Тогда при авторизации система будет понимать, на что у данного пользователя есть права
Здравствуйте, tarasich, Вы писали:
T>Вариантов несколько.
T>Если двух звенка, то варианты такие T>1 — Заводить свои таблички пользователей и их прав, соответсвенно обрабатывать как в базе так и в UI T>2 — Коннектится используя виндовс аутентификацию и проставлять права на sp_AddEditRemove для каждого юзера. В UI соответсвенно отрабатывать посылая запросы используя user_id()
Ни к чему этот велосипед. Есть стандартные механизмы ролей.
T>Если 3х звенка, то первый вариант реализовать на мой взгляд проще.