Lastpass iOS端autofill过滤失效:App关联网站后密码未匹配筛选咨询
LastPass iOS应用关联自动填充匹配失败排查思路
1. 苹果关联文件(apple-app-site-association)有效性校验
- 检查文件部署路径:必须放在站点根目录
/.well-known/apple-app-site-association,不能配置301/302重定向,必须返回200状态码,Content-Type响应头设置为application/json,不能添加额外的加密签名或者内容包装 - 检查文件格式合法性:JSON内容不能包含任何注释,必须严格符合JSON语法,
webcredentials字段为顶层字段,与applinks平级,不要写到其他字段的子节点下 - 检查应用标识配置:
webcredentials.apps数组中必须包含你方应用的完整标识,格式为<TeamID>.<BundleIdentifier>,TeamID、BundleID的大小写、字符必须和苹果开发者后台配置完全一致,不能多空格或者特殊符号 - 检查域名覆盖规则:如果需要关联多个子域名,明确写入对应域名或者使用一级通配符,例如
*.example.com,不支持多级通配符例如sub.*.example.com
2. 应用侧配置校验
- 检查Entitlements配置:
com.apple.developer.associated-domains项中的关联域名必须以webcredentials:为前缀,例如webcredentials:example.com,不要加http/https前缀、端口号、路径后缀 - 检查签名配置:打包使用的Provisioning Profile必须已开启Associated Domains能力,和Entitlements配置完全匹配,建议使用TestFlight包测试关联逻辑,本地Xcode调试的系统关联缓存经常失效
- 检查输入框属性配置:账号输入框的
textContentType必须设置为.username,密码输入框设置为.password,不要自定义输入类型覆盖系统默认的填充识别属性
3. LastPass侧规则校验
- 检查密码条目配置:测试用的LastPass密码条目,对应的URL字段必须填写你方关联的根域名或者子域名,不要填写App Store链接、应用内部跳转协议等无关地址
- 清理LastPass缓存:卸载重装LastPass应用并重新登录账号,清除本地已缓存的关联规则后再测试
- 系统版本兼容测试:优先在iOS 15及以上系统测试,iOS 14以下版本对关联文件的拉取逻辑存在差异,会有概率识别失败
4. 系统缓存清理测试
- 苹果系统会默认缓存关联文件7天左右,修改关联文件后如果未立即生效,可以重置系统隐私设置:
设置-通用-传输或还原iPhone-还原-还原位置与隐私,重启手机后再测试 - 测试时关闭代理、VPN工具,避免网络代理拦截系统的关联文件拉取请求,导致关联识别失败
内容的提问来源于stack exchange,提问作者CYAD
相关产品推荐
相关产品推荐

