我希望我的用户使用他们的组织帐户(AD、AAD、O365)登录到我的 Web 应用程序,并使用 Asp.Net Identity 在我的应用程序本地存储应用程序特定的配置文件或角色信息,我不想要的信息弄脏我的目录或我的租户的目录。
我不确定这种情况是否现实,因为我找到的信息很少。在 MVC 4 中它是可行的。我将创建一个 Empty MVC4 Web 应用程序,使用 Identity and Access 工具设置联合身份验证,并将名称声明存储在我使用 SimpleMembership 设置的用户表中(像这样。)
然而,对于新的开发来说,似乎更喜欢 Asp.Net Identity 而不是 SimpleMembership。但那里看起来要困难得多。查看 Visual Studio 2013 RTM 中的 ASP.NET Web 模板,我必须将个人帐户模板中的位与组织帐户模板中的位结合起来。我已经看到 Asp.Net 身份将外部登录信息存储在开箱即用的 AspNetUserLogins 表中(我可以先使用 EF6 代码进行更改),但我无法从我的 ClaimsIdentity 中找出要存储的信息最好的(tenantId 和名称声明?)或代码中的哪一点。组织帐户模板引用了 Microsoft.Aspnet.Identity,但似乎从未调用它。
我的方案可行吗?在 VS2013 最终版本中是否会有我可以构建的示例?使用自己的实现来存储角色和配置文件信息而不是 Asp.Net Identity 会更好吗?