加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-core-mvc – 结合Azure AD(b2c)自定义ClaimsIdentity

发布时间:2020-12-16 09:55:58 所属栏目:asp.Net 来源:网络整理
导读:我有一个ASP.NET 5(RC1)应用程序,我正在尝试设置身份验证和授权.然而,我对所有与此平台相关的在线变化的身份验证和授权信息感到困惑和不堪重负.其中大部分似乎无可救药地过时或者似乎不适用于这种特定的使用场景.现在,我甚至不确定用于我试图提出的问题的正
我有一个ASP.NET 5(RC1)应用程序,我正在尝试设置身份验证和授权.然而,我对所有与此平台相关的在线变化的身份验证和授权信息感到困惑和不堪重负.其中大部分似乎无可救药地过时或者似乎不适用于这种特定的使用场景.现在,我甚至不确定用于我试图提出的问题的正确“术语”,但我离题了.

我想要实现的是一个系统,通过Azure AD(B2C?)对用户进行身份验证/授权,并在数据库中存储其他用户配置文件信息.但是,使用我认为是自定义ClaimsPrincipal / ClaimsIdentity的自定义方式访问控制器中的用户上下文?我想这应该像添加’authorize’属性或类似的东西并访问ClaimsPrinciple.Current.Claims一样简单.

我以前使用过ASP.NET身份,但我发现的很多例子都没有使用它.大多数人只是使用USEOpenIdConnectAuthentication中间件.我看到ASP.NET身份仍然可用,但我不确定它是否适用于这种情况.我还在这里发现了一些帖子,建议使用自定义的ClaimsIdentity来完成此任务,但我无法找到有用的最新示例.顺便说一句,我意识到这些“配置文件”信息中的大部分可以作为自定义属性存储在azure广告中,但是在应用程序中使用某些信息的方式禁止所有信息都是天蓝色的(即EF linq连接等).

请告诉我,如果我对其中的某些内容非常接近.我知道这是一个相当新的平台,信息很少,但我肯定不是唯一一个提出这些问题的人.

解决方法

只是喊出一篇优秀的文章 Identity management for multitenant applications in Microsoft Azure.

你的很多问题都在那里得到解答.

例如您可以在OWIN中间件AuthenticationValidated事件中增加声明.

ASP.NET Identity是基于声明的,因为属性作为声明提供,但身份验证在数据库上,而不是通过Azure AD等外部IDP.

B2C是Azure AD中的一个特例 – 用于可以自我注册和自我管理的许多(数百万!)外部用户. SSPR.

B2C使用单独的租户到普通的Azure AD,用户无法访问O365或任何SaaS应用程序.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读