我们之前说过的cas访问都是通过我们前端页面进行登录的,但是我们可不可以通过接口来进行各种票据的校验,当然,cas为我们提供了这种方式,即通过restful接口来进行登录。
1、首先是引入依赖
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-rest</artifactId>
<version>${cas.version}</version>
</dependency>
这个依赖是我们开启cas的restful的重要的包。其实到这一步已经算是完成了。当然我们还是可以去配置一些基本的配置
2、配置文件配置(配不配置都可以)
cas.authn.rest.uri=http://localhost:8080/cas/v1
到这里我们就完成了restful的验证了。下面我们可以通过postman来测试。
postman测试
1、我们知道cas登录的步骤,第一步是通过用户名和密码来获取tgt,即如下图所示
这时候我们去访问能获取到如下tgt数据
2、通过tgt来获取st,如下所示
这里记住一个很重要的问题就是设置st的时间要设置大一点,否则会过期。可以通过以下配置来设置。
cas.ticket.st.numberOfUses=1 可使用次数
cas.ticket.st.timeToKillInSeconds=100 过期时间100秒
最后我们可以通过访问
http://localhost:8091/test?ticket=ST-2-5n0te2HJPL7csq8bJYTEGkMON1k-MacdeMacBook-Pro
就发现我们已经能够免登陆了。到这里我们通过restful来登录的也已经完成了。
当然还有退出等等,也是可以使用restful来进行的。
参考文档:
https://apereo.github.io/cas/5.2.x/protocol/REST-Protocol.html