Как я могу реализовать ролевую иерархию в asp.net mvc приложение с помощью activedirectorymembershipprovider

Вы можете использовать ваше значение formcontrol тумблера, например, когда его значение равно true, тогда вы можете показать / скрыть, как показано ниже form.controls.default_checkbox.value != 1

5
задан hard_life 16 April 2009 в 14:11
поделиться

2 ответа

AD поддерживает концепцию, согласно которой группа является членом другой группы?

Итак, у вас может быть следующее:

Пользователи: Анна, Боб, Чарли, Дуглас, Эллиот, Фред и Джордж.

Роли: Normal, Editor, Admin

Затем в определении каждой группы как:

Admin есть следующие члены: Джордж

Редактор имеет следующих членов: "Admin", Douglas, Elliot

Normal имеет следующих членов: "Editor", "Admin", Anne, Bob, Charlie

Поэтому вы знаете, что Джордж является членом Normal, Editor и Admin, потому что все члены Admin входят в эти группы, в то время как Дуглас является членом только Editor и Normal, а Anne - просто обычный пользователь, и AD ответит "да, Джордж - обычный пользователь", если вы его спросите.

КАК: Не существует (насколько я знаю) официального, поддерживаемого MS ActiveDirectory RoleProvider, который бы заполнял RolesPrinciple правильными ролями AD - есть несколько например, вот этот на CodePlex Что вы определили в качестве поставщика ролей?

Стандартный провайдер ролей ASP.NET не поддерживает иерархии ролей, поэтому вам нужно либо:

  1. поместить пользователя в каждую роль, к которой у него есть доступ, и проверять только интересующую вас роль.
  2. Поместить пользователя в самую мощную роль, к которой у него есть доступ, а затем проверить каждую роль, к которой у него должен быть доступ.
  3. Напишите/найдите провайдера ролей, который поддерживает иерархии - просто возвращая true, если пользователь находится в роли более высокого порядка.
3
ответ дан 15 December 2019 в 01:10
поделиться

Active Directory действительно не имеет понятия иерархии с точки зрения членства. Пользователь является членом одной, нескольких, многих групп - но только это. Он член группы "Администратор" - да или нет. Он также может быть членом GRoup A, Gropu B, Group F и Group M, но реальной поисковой иерархии не существует.

Я думаю, в некотором смысле, способность просто объединять любое количество групповых членов, вероятно, даже более гибкая и надежная, чем иерархия, на мой взгляд.

Марк

1
ответ дан 15 December 2019 в 01:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: