正在验证未验证用户身份的应用程序中的Azure B2C令牌

正在验证未验证用户身份的应用程序中的Azure B2C令牌,azure,active-directory,jwt,azure-ad-b2c,Azure,Active Directory,Jwt,Azure Ad B2c,我有一个场景,用户将从前端应用程序登录/注册Azure AD B2C。之后,他们将使用与此前端分离的JWT令牌调用API应用程序。要求是API应用程序验证用户的令牌并决定是否执行请求。我可以使用auth头将JWT令牌从前端发送到API。我也可以在API中接收它。现在的挑战是要确认这个代币不是中间的人伪造的,也不是被持有它的人滥用的。我知道每个令牌都有一个时间戳,可以检查是否过期。然而,这是不够的。我需要检查它对Azure广告B2C不知何故 更新:该API是一个基于NodeJs的Azure函数应用

我有一个场景,用户将从前端应用程序登录/注册Azure AD B2C。之后,他们将使用与此前端分离的JWT令牌调用API应用程序。要求是API应用程序验证用户的令牌并决定是否执行请求。我可以使用auth头将JWT令牌从前端发送到API。我也可以在API中接收它。现在的挑战是要确认这个代币不是中间的人伪造的,也不是被持有它的人滥用的。我知道每个令牌都有一个时间戳,可以检查是否过期。然而,这是不够的。我需要检查它对Azure广告B2C不知何故


更新:该API是一个基于NodeJs的Azure函数应用程序

请参见此。使用UseAuthBeareAuthentication来验证令牌的签名,从而保护。所有Azure AD B2C代币都是签名的JWT。示例代码将找到您的策略+租户组合的元数据端点,并使用公钥确保令牌签名有效/未修改,并且已由私钥持有人AAD B2C签名参见此。使用UseAuthBeareAuthentication来验证令牌的签名,从而保护。所有Azure AD B2C代币都是签名的JWT。示例代码将找到您的策略+租户组合的元数据端点,并使用公钥确保令牌签名有效/未修改,并且已由私钥持有人AAD B2C签名。您可以在API应用程序中验证令牌的签名。令牌由非对称密钥签名

AzureB2C中的每个用户流都有一个关联的元数据文档,其中包含关于标记jwks_uri中键的所有详细信息

jwks_uri:

您可以从jwks_uri标记下的链接获取密钥详细信息,并使用它来验证签名。还请记住,这些关键点是旋转的,因此您需要每24小时获取一次最新的关键点

样本:-


Doc

您可以在API应用程序中验证令牌的签名。令牌由非对称密钥签名

AzureB2C中的每个用户流都有一个关联的元数据文档,其中包含关于标记jwks_uri中键的所有详细信息

jwks_uri:

您可以从jwks_uri标记下的链接获取密钥详细信息,并使用它来验证签名。还请记住,这些关键点是旋转的,因此您需要每24小时获取一次最新的关键点

样本:-


Doc

签名检查是检查令牌未被修改的方式。你的代币现在签名了吗?嗨,是的。现在一切都在相应地运作。但本质上,我所要做的就是通过调用jsonwebtoken库的verify方法来检查签名,并传入jwks端点中找到的密钥签名检查是如何检查令牌未被修改的。你的代币现在签名了吗?嗨,是的。现在一切都在相应地运作。但本质上,我所要做的就是通过调用jsonwebtoken库的verify方法来检查签名,并传入在jwks端点中找到的密钥。我认为这也是正确的方向,但是太具体了。这假定环境是.NET环境。我已更新了问题,以指定适用的TechnologiesName原则。看看这个如果你有任何解决这个问题的办法,让我知道我认为这也是正确的方向,但太具体了。这假定环境是.NET环境。我已更新了问题,以指定适用的TechnologiesName原则。看看这个如果你有任何解决这个问题的办法,让我知道我有sumilar问题,请检查:这里如果你能帮忙。我有sumilar问题,请检查:这里如果你能帮忙。