为什么 Apereo CAS 服务器会重定向到 OAuth2 端点的本地主机?
Why does Apereo CAS server redirect to localhost for OAuth2 endpoint?
我在 172.16.238.10 设置了一个 CAS 服务器,它通常使用 CAS 协议。然而,对于 OAuth2 有一个奇怪的重定向行为:
请求:https://172.16.238.10:8443/ooscas/oauth2.0/authorize
不用管这个分阶段示例的服务和 client_name 参数,但我的问题是关于主机名的:
"localhost" 是从哪里来的?我怎样才能将其配置为其他内容?
在真正的 OAuth2 webflow localhost 中根本不起作用,即使 172.16.238.10 恰好是 localhost。原因是通过将登录表单发布到本地主机,CAS 服务器随后使用本地主机 (https://localhost:8443/oauth2.0/callbackAuthorize) 重定向到自身,这将导致内部 SSL 握手错误,因为服务器的证书对本地主机无效。
很可能,您需要定义以下内容:
cas.server.name=
cas.server.prefix=${cas.server.name}/cas
您在设置中引用了前缀,但它的定义似乎不存在。如果您不这样做,将采用默认值。
PS 始终在您的帖子中指定 CAS 版本。
我在 172.16.238.10 设置了一个 CAS 服务器,它通常使用 CAS 协议。然而,对于 OAuth2 有一个奇怪的重定向行为:
请求:https://172.16.238.10:8443/ooscas/oauth2.0/authorize
不用管这个分阶段示例的服务和 client_name 参数,但我的问题是关于主机名的:
"localhost" 是从哪里来的?我怎样才能将其配置为其他内容?
在真正的 OAuth2 webflow localhost 中根本不起作用,即使 172.16.238.10 恰好是 localhost。原因是通过将登录表单发布到本地主机,CAS 服务器随后使用本地主机 (https://localhost:8443/oauth2.0/callbackAuthorize) 重定向到自身,这将导致内部 SSL 握手错误,因为服务器的证书对本地主机无效。
很可能,您需要定义以下内容:
cas.server.name=
cas.server.prefix=${cas.server.name}/cas
您在设置中引用了前缀,但它的定义似乎不存在。如果您不这样做,将采用默认值。
PS 始终在您的帖子中指定 CAS 版本。