Хорошо,
Я знаю, что делаю что-то не так, но не могу найти лучшего способа. Я разрабатываю веб-сайт, который позволит пользователям создавать свои собственные мини-сайты.
Что-то вроде Нин. Кроме того, у меня есть только 1 базовый логин, и доступ к каждому мини-сайту предоставляется (прямо сейчас) через роли.
Итак, как я делаю это прямо сейчас:
Каждый раз, когда создается новый мини-сайт, скажем, бла, я создаю 2 роли в своем приложении. blah_users и blah_admin
Пользователю, создающему мини-сайт, дается роль — blah_admin, а каждому другому пользователю, желающему присоединиться к этому мини-сайту (или сети), — роль — blah_user.
Любой может просматривать данные с любого веб-сайта. Однако для добавления данных необходимо быть участником этого мини-сайта (должна быть назначена роль blah_user)
Проблема, с которой я сталкиваюсь, заключается в том, что, создавая систему на основе ролей, мне приходится делать множество вещей вручную. Элементы управления Asp.Net 2, которые работают со свойством User.IsAunthenticated, сейчас для меня в основном бесполезны, потому что наряду со свойством IsAuthenticated я также должен проверять, есть ли у пользователя надлежащая роль.
Я предполагаю, что есть лучший способ спроектировать систему, но я не уверен, как это сделать. Любые идеи?
Этот веб-сайт разрабатывается в ASP.Net 2 на IIS 6. Огромное спасибо!