繁体   English   中英

asp.net MVC多租户:是否有一种方法可以覆盖/影响User.Identity.IsAuthenticated?

[英]asp.net MVC Multi-tenancy: Is there a way to override/influence User.Identity.IsAuthenticated?

我有一个自定义成员资格提供程序,已为asp.net Web窗体应用程序很好地为我们服务,现在在新的asp.net MVC多租户应用程序中使用它。

成员资格提供程序在MVC中和在Webforms中一样,在MVC中运作良好,但是现在希望添加一个附加约束,在此我们可以检查是否针对特定的“租户”对用户进行了身份验证和身份验证。 当前,我们正在基于URL跟踪当前的“ TenantID”,并检测对URL的任何更改,而不仅仅是检查User.Identity.IsAuthenticated,我们在Controller和View基类中有类似的内容。

public bool UserIsAuthenticated
{
    get
    {
        return (User.Identity.IsAuthenticated && LoggedInUserTenantID == CurrentTenantID);
    }
}

我们如何覆盖/替换User.Identity.IsAuthenticated,以便我们可以直接使用它?

关于以上欢迎的任何建议或评论...

我找到了这个答案,看起来可能会有所帮助:

使用ASP.NET MVC设置路由{tenant} / {controller} / {action} / {id}?

会解决这个问题,看看是否能回答我自己的问题...

编辑/更新:

我最终来到了这个解决方案:

User.Identity.IsAuthenticated完全不受影响,所有表单身份验证均按原样使用,其他检查通过Tenant / Subdmain检测完成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM