apache 401 重定向用于 Kerberos 身份验证

apache 401 重定向用于 Kerberos 身份验证

对于我们的帮助台,我们为活动目录用户使用带有 Kerberos SSO 的 GLPI 包。

现在,如果有人没有有效的 kerberos 票证,我们会将他们重定向到另一个域的 GLPI 登录页面。

SSO 域是 servicedesk.domain,非 SSO 域是 sd.domain

我们的用户会收到这样的链接,其中“重定向”指向特定的票证:

https://servicedesk.domain/index.php?redirect=ticket_20600_Ticket

在 Apache 中的 SSO 虚拟主机定义中,我们使用以下方式重定向无效连接:

ErrorDocument 401 "<html><meta http-equiv=\"refresh\" content=\"0;url=https://sd.domain\"></html>"

不幸的是,这会删除 URL 的剩余部分,这意味着用户在手动验证后会被发送到网站的主页,而不是正确的票证。

有没有办法可以动态重定向到类似这样的内容?

https://sd.domain/index.php?redirect=ticket_20600_Ticket

答案1

因此,回答这个问题似乎可以采用以下方法

ErrorDocuemt 401 /path/to/my401.cgi

然后使用 CGI 查找引用者。回答你的另一个问题时,我根本不会使用重写规则来执行此操作。只需添加一个 http vhost

<VirtualHost *:80>
  # The Server name in both directives should be the same as your https vhost
  ServerName example.com
  Redirect permanent / https://example.com/
</Virtualhost>

相关内容