使用PHP处理CAS登录(从JSP迁移)


Using PHP to handle CAS logins (migrating from JSP)

背景:

我们目前有一个使用JSP的功能完整的CAS实现,但希望将其迁移到PHP实现。

目前,我们有一个中央CAS服务器,它对用户进行身份验证并将他们重定向到登录页(在JSP中(,然后登录页获取他们的身份验证数据并将其传递到第三方应用程序。

在这个JSP中,我们使用以下片段来检索用户的数据

String usr = request.getParameter("id");
String nid = session.getAttribute("netid");

问题

如何使用PHP检索这些信息?

我试过做:

  • $_GET
  • $_POST
  • $_请求
  • $_SESSION

等等。

我有一种感觉,我可能需要安装phpCAS才能做到这一点,但除非绝对必要,否则我不想这样做。

谢谢你抽出时间。

CAS服务票证的每个消费者都需要能够验证令牌、解析响应等。看起来您当前正在使用某个基于JSP的CAS客户端,该客户端正在为您做这项工作?(可能是耶鲁的,因为Jasig的不涉及JSP(。如果您想将客户端切换到非JSP/Java应用程序,而是切换到PHP应用程序,那么最好的选择是使用phpCAS保护该页面/客户端应用程序。phpCAS将拦截url中的票证,针对CAS服务器对其进行验证,并设置适当的会话变量。

以下是phpCAS在操作中的一个简单示例:https://github.com/Jasig/phpCAS/blob/master/docs/examples/example_simple.php

或者,您可以编写自己的拦截/验证/解析代码,但由于这是一个安全产品,我建议使用一个知名的/经过测试的客户端。