Sitecore - ограничить роли, которые имеет пользователь - PullRequest
1 голос
/ 04 марта 2011

У нас есть sitecore, интегрированный с нашей рекламой. Наши пользователи имеют два уровня доступа уровня 2 и все остальное, что требует повышенных разрешений. Уровень доступа, предоставляемый пользователю, определяется двумя файлами cookie. Один из них - файл cookie aspxauto, срок действия которого истекает через 30 лет (уровень 2), а другой - срок действия в конце сеанса (все остальное, например, уровень4). Файл cookie уровня 4 содержит список ролей, в которых находится пользователь (этот список является подмножеством списка ролей, в которых пользователь находится в AD).

Мне нужно войти в систему и добавить его в роли на основе доступных файлов cookie.

Я до сих пор создал свой собственный ADRoleProvider, который переопределяет метод GetRolesForUser и возвращает только роли в файлах cookie. Но это не работает, когда я перехожу прямо на защищенную страницу, она впускает меня (потому что пользователь является членом роли в AD - даже если файлы cookie не существуют).

Я не могу удалить все роли, в которых находится пользователь, в AD, а затем добавить пользователя только к ролям, указанным в файле cookie, по очевидным причинам. Есть ли способ заставить Sitecore думать, что пользователь не в роли?

-Victor

1 Ответ

1 голос
/ 05 марта 2011

Вы пытались переопределить метод IsUserInRole?Я думаю, что он также используется, когда Sitecore пытается разрешить права доступа.

...