【发布时间】:2020-06-22 22:55:45
【问题描述】:
我是 CAS 的初学者。我想通过 OpenAPI 获取票,我可以提供用户名和密码(可以加密)。但我不知道如何实现?谢谢你的建议!
【问题讨论】:
我是 CAS 的初学者。我想通过 OpenAPI 获取票,我可以提供用户名和密码(可以加密)。但我不知道如何实现?谢谢你的建议!
【问题讨论】:
欢迎来到 CAS!
Apereo CAS 中的 REST 协议支持自 CAS 3.x 早期就已提供。 REST 协议允许将应用程序建模为用户,以编程方式获取服务票证以向其他应用程序进行身份验证。这是通过公开一种完全 REST 获取 Ticket Granting Ticket 然后使用它来获取 Service Ticket 的方法来实现的。
您可以调用 REST API 对用户进行身份验证并取回授予票证的票证:
curl -k -X POST -H "Content-Type: Application/x-www-form-urlencoded" \
https://sso.example.org/cas/v1/tickets \
-d "username=casuser&password=Mellon"
生成的ticket-granting ticket可用于获取服务ticket:
curl -X POST -H "Content-Type: Application/x-www-form-urlencoded" \
-H "Accept: application/json" https://sso.example.org/cas/v1/tickets/ \
TGT-2-abcdefg?service=https://your.application.com
ST-1-VGF-yzB8
更多详情请见this link。
【讨论】: