结论先行
先给结论:外部智能那一组配置里有两个键,一个管能不能登录、一个管功能开不开,两层必须同时配才生效。只配其中一个的表现是「后台显示配过了、设备上照样能用」,这也是排查时最难发现的一类失效。
出处:苹果 2026 年 9 月 14 日随新系统发布的企业功能说明里,「错误修复和其他改进」一节写明,com.apple.configuration.external-intelligence.settings 声明中的 AllowSignIn 键可有效防止用户登录外部智能服务;同一声明里把 Enabled 设为 false 可有效停用其扩展功能。
两个键各管哪一层
- AllowSignIn:管的是账户这一层,配置生效后设备上的外部智能服务无法完成登录
- Enabled:管的是功能这一层,设为 false 之后对应的扩展功能被停用
为什么必须两个都配
现象是只配一个的时候,用户换个入口还能用。直接原因是这两个键拦截的位置不同:一个拦在登录环节,一个拦在功能启用环节,属于同一条链路上的两个不同节点。底层机制则是外部智能服务的可用性由「账户状态」和「功能开关」两个独立状态共同决定,任一为真都不足以让整个功能不可用。
之所以会出现「只配一个」的情况,多半是配置模板抄来的。很多团队的描述文件是三年前建的,里面有的是旧的外部智能限制项,有的是只抄了其中一个键,等到新系统把这两个键的行为明确下来,才发现原来那一份一直是半生效状态。
排查顺序
- 第一步:确认设备受监督状态,这两个键只在受监督设备上稳定生效
- 第二步:查声明有没有真正下发到设备,看的是设备上声明列表,不是服务端下发记录
- 第三步:两个键逐个核对取值,AllowSignIn 与 Enabled 都要在,缺一个按半生效处理
- 第四步:换一个入口实测------设置里的开关、应用内的登录入口,两处都要验
两个常见误判
- 误判一:以为配了登录拦截就等于功能关了。账户层和功能层是两回事,已登录的账户在功能层没关的情况下仍然可用
- 误判二:以为服务端显示下发成功就生效了。声明式配置的验收点在设备上,服务端成功只代表送达
失效条件与边界
三个前提要写清楚:设备未受监督时这一组配置不稳定,先处理监督状态;系统版本在 27.0 之前,这两个键的行为与官方文档描述存在差异,验的时候要以实际版本为准;客户自行安装的第三方应用内的同类功能不在这一组配置的覆盖范围内,它管的是系统层的外部智能入口。另外,即便技术上可以全量关闭,从客户体验角度也建议先在 10 台机器上试跑一周,确认不影响正常业务应用。
给同行的一个自验判据
先做一件最小的事:抽 5 台受监督设备,两个键都配一遍,然后分别在设置入口和应用内入口各试一次登录。MDM.Plus 的设备台账里,受监督状态、系统版本、已下发声明列表三项是分列的,按这三项筛一遍就能知道哪些机器属于「配了也不会生效」的那一组。
- 判据一:两个键缺一不可,只配一个按半生效处理,不要写进验收通过
- 判据二:验收点在设备上,不在服务端下发记录里
- 判据三:两个入口都要实测------系统设置入口和应用内登录入口
- 判据四:先在 10 台机器上试跑 7 天,确认不影响业务应用再全量
存量复查结果
我们按这个口径复查了一遍存量策略,800 多台里有 120 多台属于只配了一个键的半生效状态,占 15% 左右。MDM.Plus 这边的处理是把这两个键做成一组模板,新增策略时默认同时下发,避免再出现只抄一半的情况。