如何生成有效应用令牌以读写config.office.com的Office策略?
解决Office策略读写及令牌无效问题
错误原因分析
你遇到的InvalidAudience错误,是因为生成的令牌受众(Audience)不匹配config.office.com的资源要求。Intune API的令牌受众指向Graph API或Intune自身资源,而config.office.com对应的专属资源ID是错误提示中的33d566a7-b1b3-4676-b399-b215146b78c4(Office Configuration Service的标识),必须针对这个资源生成令牌才能调用其接口。
生成正确应用令牌的步骤
1. 配置Azure AD应用权限
- 在Azure AD中注册应用,添加对Office Configuration Service(资源ID:
33d566a7-b1b3-4676-b399-b215146b78c4)的权限:- 读策略:选择
Policy.Read.All - 写策略:选择
Policy.Write.All - 完成后需由租户管理员同意该应用的权限。
- 读策略:选择
2. 获取令牌(客户端凭据流,适用于后台服务)
使用v1端点请求:
POST https://login.microsoftonline.com/{你的租户ID}/oauth2/token HTTP/1.1 Content-Type: application/x-www-form-urlencoded grant_type=client_credentials&client_id={你的应用ID}&client_secret={你的应用密钥}&resource=33d566a7-b1b3-4676-b399-b215146b78c4
使用v2端点请求:
POST https://login.microsoftonline.com/{你的租户ID}/oauth2/v2.0/token HTTP/1.1 Content-Type: application/x-www-form-urlencoded grant_type=client_credentials&client_id={你的应用ID}&client_secret={你的应用密钥}&scope=https://officeconfig.microsoft.com/.default
3. 验证令牌
用JWT解析工具查看返回的令牌,确认aud字段值为33d566a7-b1b3-4676-b399-b215146b78c4(v1令牌)或https://officeconfig.microsoft.com(v2令牌),确保受众匹配。
读写Office策略的操作
读取策略
使用生成的有效令牌调用接口:
GET https://config.office.com/api/OfficeSettings/policies HTTP/1.1 Authorization: Bearer {你的有效令牌}
写入/更新策略
- 创建新策略:使用
POST请求到同一接口,请求体需符合Office策略的JSON格式(可通过浏览器开发者工具抓取config.office.com门户的请求参考具体结构)。 - 更新现有策略:使用
PUT请求并指定策略ID,请求体传入更新后的配置内容。
额外提示
- Intune门户中的部分Office策略会同步到Intune,这类策略也可通过Microsoft Graph API(如
deviceManagement/intents端点)操作,但需使用Graph API专属令牌(受众为https://graph.microsoft.com)。 - 若需以用户身份操作(而非后台服务),可采用授权码流获取令牌,scope需包含对应权限(如
https://officeconfig.microsoft.com/Policy.Read.All)。
内容的提问来源于stack exchange,提问作者CloudAnywhere
相关产品推荐
相关产品推荐

