当前位置: 首页 > 知识库问答 >
问题:

使用“反应本机 - ASP.NET 核心 Web API”通过 Azure AD B2C 对用户进行身份验证

韩寒
2023-03-14

我是移动应用程序开发的新手,有一些关于ASP.NET核心的经验。过去,我使用Firebase的身份验证模块是因为它简单,但直到现在,我还没有完全从零开始设计和开发身份验证,尤其是在移动应用程序中。昨天我一整天都在搜索和阅读文档,只是发现自己比以前有更多的问题...

主要思想是创建一个跨平台的移动应用程序:

  • 响应本机(世博会管理的工作流程)
  • ASP.NET 核心 3.1 Web API,通过验证请求标头中的 JWT 令牌,使用受保护的endpoint
  • Identity Server: Azure AD B2C
  • 使用 PKCE 的授权代码流,如各种文档所建议的那样

昨天,我开始查看Expo的AuthSessionAPI(https://docs.expo.dev/versions/latest/sdk/auth-session),在通过移动应用程序与现有用户登录后,我设法从Azure AD B2C服务器获得访问令牌。这一切都是通过用户点击移动应用程序中的“登录”时弹出的网络浏览器完成的。

然而,这让我思考:如何在Web API中实现来自Azure AD B2C服务器的JWT令牌的验证?许多向导

老实说,我感到有点失落,因为一方面,可能性似乎是无穷无尽的(因此我的浏览器中目前打开了50个标签),但另一方面,我觉得有点可疑的是,找不到我的用例的任何像样的例子,这使我认为我正在做一些完全错误或过于复杂的事情。我主要寻找的是一个干净、安全的解决方案,用我当前的应用程序设置来验证用户,而不必从头再来。到目前为止,我可能已经查看了所有的库/nuget包/stackoverflow帖子...

因此,任何关于使用1个或更多特定库/指南/软件包的指导将不胜感激!

共有1个答案

臧弘和
2023-03-14

你看过MSAL样品B2C吗?

就验证JWT而言,这里有许多样本。也是B2C。

 类似资料:
  • 我有一个react应用程序在一个单独的端口(localhost:3000)上运行,我想用它来验证用户,目前我的Spring后端(localhost:8080)有一个代理设置。 我能以某种方式手动验证而不是通过发送一个请求到我的后端,并获得一个会话cookie,然后在每个请求中包含cookie吗?这也将简化iOS方面的验证过程(使用此过程,我只能将会话cookie值存储在keychain中,并在每次

  • 我仍然对所有这些身份的东西感到困惑。 首先,我仍然不清楚角色、政策/声明之间的区别。据我所知,角色是旧的做事方式,是为了向后兼容而保留的,那么这是否意味着AspNetRoleClaims是向后兼容的一部分? 我认为我理解索赔和政策时,当将它们单独考虑时,就像政策基本上是一组必须通过的规则,并赋予更改规则的能力,而不必遍历所有代码和更改角色。 这是一个声明,基本上是一个可信的来源,为该用户提供担保(

  • 我正在开发ASP NET核心Web API,对认证方式的选择感到困惑。我曾经应用默认的Asp Net身份验证,但最近我知道了JWT。因此,我几乎像本文中一样实现了身份验证:https://stormpath.com/blog/token-authentication-asp-net-core。但是我不能理解这个JWT的好处。通过简单的Asp Net身份认证,我不关心令牌存储等,我只需要用signI

  • 在我配置了下面的配置之后,它不会连接到Active Directory。我无法使用Active Directory的帐户登录。会有什么问题? 我有一个Ubuntu服务器18.04,带有ApacheGuacamoleV1。0.0. 安装。我想使用LDAP身份验证来验证用户。我已经下载了鳄梨酱-auth-ldap-1.0.0。jar和jldap-4.3。jar扩展。 10.10.10.21,10.10

  • 我是全新的RestTemboard和基本上在REST API也。我想通过Jira REST API检索我的应用程序中的一些数据,但取回401未经授权。在jira rest api留档上找到并发表文章,但不知道如何将其重写为java,因为示例使用curl的命令行方式。我将感谢任何建议或建议如何重写: 进入java使用SpringRest模板。其中ZnJlZDpmcmVk是用户名:密码的Bas64编码