You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OneLogin Portal iOS应用未发送Domain Redirect URI问题咨询

OneLogin自定义OIDC连接移动端适配方案

需调整的配置项

当前配置仅适配网页端场景,要兼容OneLogin Portal移动端应用,按以下顺序调整即可:

  • 在应用SSO标签页的Advanced Settings区域,开启Native App SSO Compatibility开关,无需修改原有Web类型与POST认证方法的配置;如果是旧版OneLogin后台无该开关,直接新增一条Application Type为Native/Mobile的同应用配置,回调地址与原有Web配置保持一致。
  • 废弃从Referer(你日志中记录的Referral为拼写误差,对应标准HTTP头为Referer)头读取Domain Redirect URI的逻辑,改为两种合规方式获取该信息:
    • 在自定义连接的Claim配置中新增自定义字段,将用户所属OneLogin租户域名写入ID Token的返回声明,服务端解析Token即可拿到对应值
    • 从OIDC授权请求的固定参数iss(发行方标识)中直接提取域名信息,该参数在所有端的OIDC流程中都会强制携带,不会随端类型变化丢失
  • 调整完成后在后台SSO测试工具中分别选择网页端、移动端Portal两个场景做验证,确认参数传递正常即可上线。

网页端与移动端OIDC流程逻辑差异原因

两端流程差异是底层实现机制不同导致的,和配置错误无关:

  • 网页端SSO全流程运行在标准浏览器环境中,跨域跳转时浏览器会遵循HTTP规范自动携带Referer请求头,因此服务端可以直接从请求头中拿到跳转来源域名。
  • OneLogin移动端Portal是原生应用,发起SSO时不依赖浏览器内核完成全链路跳转:初始授权请求由原生App内置的HTTP客户端构造,原生客户端默认不会主动添加Referer头;同时安卓12+、iOS14+的系统隐私规则会强制拦截WebView跨域场景下的Referer头透传,防止用户租户信息被第三方违规采集,因此服务端无法从请求头拿到对应值。

不要通过强制修改移动端请求头的方式适配,该方案会触发OneLogin的移动端安全校验规则,导致SSO流程被拦截。

内容的提问来源于stack exchange,提问作者Max Teibel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 19:27:22