0

我首先使用 EF 代码和 ASP.NET MVC 4。我的用户将仅使用 OAuth 提供程序而不是本机帐户登录到该站点。我的工作没有问题,用户表作为我的标准模型的一部分,webpages_OAuthMembership 保存了 OAuth 数据。我在我的用户表上添加了一个“启用”位字段,这样,当网站仍处于“alpha”状态时,除非我批准,否则用户将无法访问该网站。因此用户可以创建 OAuth 帐户,但我想使用注释隔离特定控制器以防止它们的使用。例如,我有一个“小部件”控制器。现在它设置为 [Authorize],因此用户必须登录。但我想要我自己的自定义注释,[Approved] 或 [Enabled],这样即使登录,用户也无法继续,除非我将该位翻转为 '上' 在用户表中。虽然我可以编写自己的辅助方法并手动注入它,但我宁愿使用注释,因为一旦站点上线,它就更容易推出和删除。

将来,如果网站曾经收费,我很乐意换掉 [Enabled] 来检查用户是否是最新的,是否明智地付款。所以我觉得注释是正确的方法,只是不确定 100% 怎​​么做,而且我不知道还没有会员教师。

谢谢!

4

1 回答 1

1

当您验证他们的登录时,为什么不简单地添加对 Enabled 位的检查?然后您可以阻止未启用的用户完全登录(不知道为什么您希望他们登录但无法访问任何页面......有点傻)。

或者,您可以简单地为此使用角色。将用户添加到“已启用”角色,然后将您的页面配置为仅允许来自该角色的访问。由于某种原因,似乎比自己滚动要容易得多。

于 2013-05-09T21:48:05.937 回答