gpt4 book ai didi

java - JASIG CAS 以编程方式登录(使用 Liferay)

转载 作者:太空宇宙 更新时间:2023-11-04 08:49:55 26 4
gpt4 key购买 nike

我正在使用 JASIG CAS 通过 liferay 进行 SSO 登录。现在,当我直接尝试登录时,它工作正常,因为重定向是通过 CASFilter 进行的。它重定向到 CAS 登录页面,登录成功后,它重定向到我们提供的应用程序 url。

现在我想使用liferay 的登录portlet 登录CAS。此 portlet 在 liferay 中提供登录,与登录相同,但其提交 URL 不同。所以,CAS 重定向在这里不起作用。

而且我不想在此处出现 CAS 登录提示。登录liferay后,我想直接登录CAS。我已经使用 Apache HttpClient 检查过它,但它不起作用。我尝试过对所有输入字段使用 POST 方法。问题是,CAS 使用一个名为 lt 的隐藏字段,该字段是每次加载登录页面时的随机字符串。因此,当我以编程方式访问该页面时,我无法读取该字段。

如果我们提供较旧的lt,那么它也不起作用。

那么,有人见过其他方式吗?

最佳答案

我在我的 Smile.fr 公司转发了该问题。请参阅下面我的一位技术人员的回复(已翻译)。

lt 字段是登录票证,用于在启动身份验证之前获取 CAS 服务器。

避免形成 CAS :

  1. 在 CAS 服务器上获取一张登录票
  2. Sen 身份验证请求,包含凭据、lt 和返回服务网址(我们刚刚登录的网址)

必须通过CAS服务器,因为他是唯一能够发送TGC的人,要求获得Services Ticket作为返回。

几个链接:

https://wiki.jasig.org/display/CAS/Using+CAS+without+the+CAS+login+screen

https://wiki.jasig.org/display/CAS/Using+CAS+without+the+Login+Screen

第一个链接中的“为什么不这样做”被认为是一个好主意。

关于java - JASIG CAS 以编程方式登录(使用 Liferay),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3581665/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com