1

我即将加入必须成千上万的其他开发人员的OAuth登录(Facebook登录)到当前使用Forms身份验证的现有ASP.NET网站。ASP.NET多登录“级别” - OAuth和表单

不幸的是,我们无法对已使用OAuth进行身份验证的用户完全访问该网站。

我希望有两个级别的访问用户可用,这取决于他们如何验证自己。如果他们通过OAuth登录,那么他们将有有限的访问权限,如果他们通过表单进行身份验证,那么他们将具有完全访问权限。

在ASP.NET Membership中是否有内置的系统,允许多级别的身份验证?

如果没有,任何人都可以提供任何提示或链接提示,关于如何实现此?

我认为在最基本的层面上,所有需要的是一个全局可访问的bool,它在每个登录的基础上设置,表示用户是否使用OAuth登录。如果我在执行登录时能够设置User.Identity.AuthenticationType,它可能会诀窍。当然,我想避免创造一个全新的自定义会员供应商的痛苦。

回答

0

这不能用角色完成吗?例如,您可以为从应用程序登录表单登录的用户分配一个名为“Native”的角色,并从其他系统登录的人员分配一个名为“Outsiders”的角色。然后,您的页面将使部分可见/不可见,取决于用户登录的角色。