Azure门户修改Graph API权限范围后未更新问题咨询
解决Graph API权限移除后token仍包含旧权限的问题
- 强制触发重新授权流程:使用
InteractiveBrowserCredential时,加上prompt="consent"或prompt="select_account"参数,让系统强制用户重新选择账号并确认最新权限,避免复用旧的授权缓存。示例代码:credential = InteractiveBrowserCredential( client_id="你的客户端ID", prompt="consent" ) - 清理本地token缓存:
InteractiveBrowserCredential会在本地系统保存token缓存,光清浏览器没用。不同系统的清理方式:- Windows:打开「凭据管理器」→「Windows凭据」,删掉和你的应用或Graph API相关的凭据条目
- macOS:打开「钥匙串访问」,搜索应用相关的token记录并删除
- Linux:删除
~/.azure/msal_cache.json文件
- 确认应用注册的权限状态:检查Azure AD应用注册里的权限是否真的删除干净,如果之前给过管理员同意,移除权限后需要重新执行管理员同意操作,否则旧的同意权限会一直生效
- 解析验证token:用
jwt.ms解析获取到的token,查看scp或roles字段确认权限列表,同时检查exp字段确认不是使用了未过期的旧缓存token
内容的提问来源于stack exchange,提问作者ezG
相关产品推荐
相关产品推荐

