Ser*_*tal 6 oauth-2.0 openid-connect azure-ad-b2c azure-ad-msal
我正在开发一个以 Azure AD B2C 作为身份提供者的 SPA。我正在使用MSAL JavaScript 库,它大部分工作正常。我可以为我的 Web API 后端创建用户、登录和获取访问令牌。
目前唯一的问题是 B2C 端点没有返回刷新令牌,因此当访问令牌过期时,UserAgentApplication 类中的 AcquireTokenSilent 方法(用于使用刷新令牌刷新过期的访问令牌)失败。
我在 B2C 中的应用程序在其属性中配置为“包括 Web 应用程序/Web API”和“允许隐式流”设置为“是”。在 API 访问部分中,在“访问用户的个人资料”下勾选了“openid”和“offline_access”范围。应用程序本身具有“读取”、“写入”和“user_impersonation”范围(不确定这是否重要)。
“offline_access”包含在我的范围中,我尝试创建一个应用程序,例如读/写范围并包括它(如“ https://mytenant.onmicrosoft.com/testapp/offline_access ”)但似乎没有工作。响应永远不会有刷新令牌,无论是 id 令牌还是访问令牌。
我注意到的是,当我转到我创建的 SignUp-SignIn 策略并尝试从那里运行端点时,“offline_access”范围在下拉列表中甚至不可用。即使我复制底部的“运行端点”链接并在运行之前将范围添加到 URL,响应也不包含刷新令牌。
当我单击顶部的链接时,它似乎为我提供了有关端点的一些详细信息,并且只有“openid”在受支持的范围内。
不确定我在这里遗漏了什么,所以任何想法都将不胜感激。
| 归档时间: |
|
| 查看次数: |
4857 次 |
| 最近记录: |