Ruby Web应用接入Microsoft Entra ID报错AADSTS650053求助
解决AADSTS650053:请求的范围在Microsoft Graph资源上不存在
问题根源
报错AADSTS650053是因为你的Ruby应用请求的权限范围用了a423023b-538a-4c96-af1d-07eb7c9d8f83这个GUID,而不是Microsoft Graph的标准范围格式。资源ID00000003-0000-0000-c000-000000000000对应Microsoft Graph服务,你配置的User.Read权限对应的标准范围应该是https://graph.microsoft.com/User.Read,而非权限的唯一标识符。
修复操作
- 修正应用代码中的范围配置:找到Ruby应用里OAuth2认证的范围设置部分,把权限GUID替换成标准的Microsoft Graph范围字符串。
以常用的omniauth-azure-activedirectory-v2gem为例,正确配置示例:use OmniAuth::Builder do provider :azure_activedirectory_v2, client_id: '你的客户端ID', client_secret: '你的客户端密钥', scope: 'openid email profile https://graph.microsoft.com/User.Read' end - 确认Entra ID应用权限配置:检查应用注册中的API权限,确保已添加
Microsoft Graph > 委托权限 > User.Read,如果是租户级应用需要完成管理员同意。 - 保留现有正确配置:当前设置的重定向URI
http://localhost:3000/signin-oidc和启用ID令牌的隐式/混合流无需调整,这部分是正确的。
更新补充
权限配置截图:
内容的提问来源于stack exchange,提问作者sada
相关产品推荐
相关产品推荐

