我目前有一个Web应用程序,我们称之为“WebApp-A”。
WebApp-A实现了AspNetSqlMembershipProvider和AspNetSqlRoleProvider。
我现在想要创建第二个Web应用程序,让我们称之为“SubApp-B”并将其嵌套在WebApp-A中:
Web应用程序-A / SubApp-B
我希望SubApp-B实现相同的AspNetSqlMembershipProvider和AspNetSqlRoleProvider。
我希望在SubApp-B下创建的用户能够登录WebApp-A,但是在WebApp-A下创建的用户无法登录SubApp-B。我还希望能够将WebApp-A中的角色分配给SubApp-B用户。
根据我的理解,我可以使用与多个Web应用程序相同的AspNetSqlMembershipProvider,并使用相应web.config中的applicationName =“”来区分用户。这种方法会满足我的上述要求吗?
我是否应该将SubApp-B嵌套为WebApp-A中的Web应用程序。或者,我应该只使用带角色的WebApp-A来创建可以访问/ SubFolder区域的用户吗?
答案 0 :(得分:1)
我希望在SubApp-B下创建的用户能够登录 WebApp-A,但在WebApp-A下创建的用户无法登录 SubApp-B。我还希望能够从WebApp-A分配角色 到SubApp-B用户。
如果用户是在 SubApp-B 下创建的,则为用户分配一个特殊角色(假设为 SubAppBRole )。
当用户访问 SubApp-B 时,请检查以确保用户位于 SubAppBRole 。
换句话说,在 WebApp-A 下创建的用户不在 SubAppBRole 中,他们将无法前往 SubApp-B < /强>
据我了解,我可以使用相同的AspNetSqlMembershipProvider 使用多个Web应用程序并区分用户 applicationName =“”在相应的web.config中。会这样吗? 方法满足我的上述要求?
没有。您无法在不同的 ApplicaitionName 中设置 WebApp-A 和 SubApp-B 。如果您希望 WebApp-A 用户能够登录 SubApp-B ,则用户需要位于相同的 ApplicaitionName 中。
我是否应该将SubApp-B嵌套为内部的Web应用程序 Web应用程序-A。或者我应该只使用带有角色的WebApp-A来创建 可以访问/ SubFolder区域的用户?
你可以嵌套两个ASP.Net站点,虽然我个人不喜欢它。有时,如果您尝试SSO,FormAuthentication domain会出现问题。此外,两个web.config文件中的配置设置可能会相互冲突。但是,一旦你正确配置它,它应该没问题。