对于此方案,身份验证票证似乎是开箱即用的。
具体来说,如果用户登录“www.foo.com”下的网站,然后使用“www.bar.com”访问同一网站,他们将无法在bar.com上进行身份验证(即使他们技术上是在相同或不同的App服务器上命中相同的应用程序)。
这有什么问题吗?
使用部分视图和新视图组件呈现变量内容。所有可变内容(如标题图像引用,文本等)都存储在数据库中,IMemoryCached由portalID缓存和更改
考虑到新的MVC 6框架,这是实现这种情况的合理方式吗?
你能想到这个实现的任何问题吗?
答案 0 :(得分:1)
关于身份验证,身份验证票证(基于cookie的身份验证)是按域名进行的,因此当用户只登录Portal B时,您访问门户网站A时没有任何问题。您可以实现,以便可以跨多个子域进行身份验证,但这是一个非默认方案,仅适用于子域,而不适用于完全不同的域。事实上,通过登录您的一个门户并在您的cookie集合中查看身份验证票证来证明这一点。然后转到另一个域/门户并查看您的cookie集合:您的身份验证cookie不会存在(适用于任何cookie)。
我已经多次实现这样的场景没有问题(一个应用程序,许多不同的"站点"有缓存/不同的视图/等等)虽然是表单身份验证,但是主体仍然适用。