【问题标题】:Azure AD and Identity Framework in a single MVC APP单个 MVC APP 中的 Azure AD 和身份框架
【发布时间】:2019-02-20 18:33:44
【问题描述】:
我有一个 MVC5 应用程序,它使用 ASP.net Identity 进行身份验证和授权。所以我所有的角色,用户配置文件都存储在应用程序数据库中。该应用程序由我管理。我的公司现在想在应用程序中使用 Azure AD 进行身份验证。因此,用户将能够使用他们的凭据登录。如果用户是第一次登录,那么我想在我的应用程序数据库中创建用户配置文件。我还想使用存储在我的应用程序数据库中的角色进行授权。
有人可以就我如何实现这一目标提供一些指导吗?
感谢您的帮助。
【问题讨论】:
标签:
asp.net-mvc
asp.net-mvc-5
asp.net-identity
azure-active-directory
【解决方案1】:
这里是使用 Azure AD 接受注册和登录的分步指南的链接。
https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-v1-aspnet-webapp
总而言之,下面是您需要执行的架构图。
您还可以使用 Azure AD B2C 来允许用户通过 google、FB、Amazon 等身份提供商进行注册/签名。
您可以在过滤器中实现所有身份验证登录,然后您可以使用 AUTH 过滤器装饰您的控制器。
然后你可以像下面这样注册你的过滤器
GlobalFilters.Filters.Add(new AuthorizeAttribute());
我没有在这里提供代码示例,因为它会太长。
回到您最初的问题,我想在我的应用程序数据库中创建用户配置文件,基本上在成功登录后,您可以将索赔数据保存在您的数据库中作为用户配置文件。
但是,如果您已经在 Azure AD 中维护它,则不建议将整个配置文件保存在数据库中。
Azure AD B2C 也提供了添加自定义属性的灵活性。
希望对您有所帮助。如果您需要任何帮助,请告诉我。