2014-01-30 2 views
0

В настоящее время у меня есть веб-приложение, которое можно назвать «WebApp-A».Как я должен архивировать зоны входа в систему/веб-приложения, используя один и тот же поставщик членства?

WebApp-A реализует AspNetSqlMembershipProvider и AspNetSqlRoleProvider.

Теперь я хочу, чтобы создать второй веб-приложение, позволяет называть его "SubApp-B" и он вложен в WebApp-А, как, например:

WebApp-A/SubApp-B

Я бы как SubApp-B для реализации того же AspNetSqlMembershipProvider и AspNetSqlRoleProvider.

Я хочу, чтобы пользователи, созданные в SubApp-B, могли входить в систему WebApp-A, но пользователи, созданные в WebApp-A, чтобы НЕ иметь возможность входа в SubApp-B. Я также хотел бы иметь возможность назначать роли из WebApp-A пользователям SubApp-B.

Насколько я понимаю, я могу использовать один и тот же AspNetSqlMembershipProvider с несколькими веб-приложениями и различать пользователей, используя applicationName = "" внутри соответствующего web.config. Будет ли этот подход соответствовать моим требованиям?

Должен ли я быть гнездом SubApp-B в качестве веб-приложения внутри WebApp-A. ИЛИ должен ли я просто использовать WebApp-A с ролями для создания пользователей, которые могут получить доступ к области/SubFolder?

ответ

1

Я хотел бы пользователи, созданные под SubApp-B, чтобы иметь возможность войти в WebApp-A, но пользователи, созданные под WebApp-А, чтобы не быть в состоянии войти в SubApp-B. Я также хотел бы иметь возможность назначать роли из WebApp-A пользователям SubApp-B.

Если пользователь создается под SubApp-B, а затем назначить особую роль (скажем SubAppBRole) пользователю.

Когда доступ пользователя SubApp-B, проверьте, чтобы убедиться, что пользователь находится в SubAppBRole.

Другими словами, пользователь создал под WebApp-A не в SubAppBRole, и они не смогут LOING к SubApp-B

В моем понимании смогу используйте тот же AspNetSqlMembershipProvider с несколькими веб-приложениями и различайте пользователей, используя applicationName = "" внутри соответствующего web.config. Будет ли этот подход соответствовать моим требованиям?

Нет, вы не можете установить WebAPP-A и SubApp-B в различных ApplicaitionName. Если вы хотите, чтобы пользователь WebApp-A имел возможность войти в систему до SubApp-B, пользователь должен быть таким же ApplicitionName.

Должен ли я быть гнездом SubApp-B в качестве веб-приложения внутри WebApp-A. ИЛИ должен ли я просто использовать WebApp-A с ролями для создания пользователей, которые могут получить доступ к области/SubFolder?

Вы можете вложить два сайта ASP.Net, хотя мне лично это не нравится. Когда-то FormAuthentication domain дает проблему, если вы попробуете SSO. Кроме того, настройка конфигурации в двух файлах web.config может столкнуться друг с другом. Однако, как только вы его правильно настроите, все должно быть хорошо.

+0

Спасибо за информацию. Я не был уверен в использовании ApplicationName. Однако после тестирования и информации, предоставленной вами, это имеет смысл. :) – Mausimo