apache - 如何修复 SimpleSAMLphp“url 不允许”错误
问题描述
伙计们,
有时我们的用户会收到 SimpleSAMLphp 提出的关于“URL 不允许”的异常。该错误对我来说是不可重现的。无论是在开发环境还是生产环境中,我都可以强制系统进入这个错误。但它发生了。
调查后,我在我们的系统日志中发现:
Feb 01 19:55:51 pweb simplesamlphp[25416]: 3 [061b91b3c6] Caused by: SimpleSAML\Error\Exception: URL not allowed: https://10.1.2.102/
Feb 01 22:22:53 pweb simplesamlphp[26347]: 3 [be1715d03f] Caused by: SimpleSAML\Error\Exception: URL not allowed: https://10.1.2.102/
IP 10.1.2.102 是网络服务器的 IP。在我们的网络服务器前面,我们有一个反向代理(apache2),它将所有来自互联网的请求传递到https://10.1.2.102。
关于这个错误,我发现的只是将 IP 放入 config.php“trusted.url.domains”。但这对我来说看起来不正确。我认为“trusted.url.domains”仅适用于 IDP 地址。
你有什么提示吗?
解决方案
trusted.url.domains
适用于 SimpleSAML 可能执行的任何重定向。因此,它确实与 URL 域有关,不仅限于 IdP。
问题是,如果 SimpleSAML 将用户重定向到,它在您的设置中是否正常https://10.1.2.102/
工作 - 该私有 IP 对他们不起作用。但也许您的反向代理会将其翻译回来?如果是这种情况,您应该可以将 IP 添加到trusted.url.domains
.
推荐阅读
- php - WP All Import 不从自定义字段导入值
- php - Word 文档 Base64 编码字符串下载为 zip 文件
- c# - 如何根据checkedlistbox C#中各自的复选框从列表中返回项目?
- python - 无法从 DHT 传感器获取数据
- javascript - 如何在单击按钮后淡入 css 消息 3 秒?
- azure-ad-b2c - B2C 身份验证。将现有身份用于用户角色
- java - spring-kafka 中的 seekToTimestamp
- java - 用 Optional 替换空检查
- r - 如何将 gganimate 图保存为高质量的 mp4 文件?
- terraform - 将机密信息排除在 Terraform 状态之外