我必须开发一个应用程序,仅在用户登录后才能访问该页面。我们的组织使用CAS来保护页面,但是我不确定如何检查(如果使用的是Node.js)确实已登录。
我是CAS的新手,正在尝试了解如何进行。我知道用户登录后将在浏览器中收到授予票据的票证(TGT)cookie,并且CAS将以某种方式为单个页面创建服务票证(ST)。
我如何知道用户是否已通过身份验证?有没有一种特定的方法来验证用户是否拥有TGT?我要检查ST吗?如果我没有检测到任何故障单,该如何将它们定向到我们系统的CAS实例?
感谢所有帮助。
答案 0 :(得分:1)
我是CAS的新手,正在尝试了解如何进行。我知道用户登录后将在浏览器中收到授予票据的票证(TGT)cookie,并且CAS将以某种方式为单个页面创建服务票证(ST)。
到目前为止,很好。
我如何知道用户是否已通过身份验证?有没有一种特定的方法来验证用户是否拥有TGT?我要检查ST吗?如果我没有检测到任何故障单,该如何将它们定向到我们系统的CAS实例?
如果您的应用程序没有会话,则需要使用服务参数将用户重定向到CAS登录端点,该服务参数充当应用程序的回调。用户登录后,CAS将使用服务票证重定向回服务参数。然后,您需要获取票证,请CAS服务器验证票证以换取用户信息/个人资料。
大多数这种交互通常是使用CAS客户端库处理的,您可以将其配置为为您处理验证和重定向。如果您四处搜索,您可能会找到与node.js一起使用的优秀CAS客户端。这可能是一个很好的起点:https://github.com/casinthecloud/nodejs-cas-client-demo