การใช้งาน Casdoor เป็น CAS Server
การใช้งาน Casdoor เป็น CAS Server
Casdoor สามารถใช้งานเป็น CAS server ได้แล้ว ปัจจุบันรองรับ CAS 3.0
ภาพรวม
คำนำหน้า endpoint ของ CAS ใน Casdoor คือ <Casdoor endpoint>/cas/<organization name>/<application name>
นี่คือตัวอย่างการใช้งาน endpoint https://door.casdoor.com
กับแอปพลิเคชันที่ชื่อว่า cas-java-app
ภายใต้องค์กร casbin
/login
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/login
/logout
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/logout
/serviceValidate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/serviceValidate
/proxyValidate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/proxyValidate
/proxy
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/proxy
/validate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/validate
/p3/serviceValidate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/p3/serviceValidate
/p3/proxyValidate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/p3/proxyValidate
/samlValidate
endpoint:https://door.casdoor.com/cas/casbin/cas-java-app/samlValidate
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ CAS, เวอร์ชันต่างๆ และพารามิเตอร์สำหรับ endpoint เหล่านี้ โปรดดูที่ CAS Protocol Specification
ตัวอย่าง
นี่คือตัวอย่างอย่างเป็นทางการ GitHub Repository ที่มีเว็บแอปและใช้งาน CAS Java client อย่างเป็นทางการ GitHub Repository โดยการศึกษาตัวอย่างนี้ คุณสามารถเรียนรู้วิธีการเชื่อมต่อกับ Casdoor ผ่าน CAS
หมายเหตุ: ปัจจุบัน Casdoor รองรับทั้งสามเวอร์ชันของ CAS: CAS 1.0, 2.0 และ 3.0
การตั้งค่า CAS ตั้งอยู่ที่ src/main/webapp/WEB-INF/web.yml
โดยค่าเริ่มต้น แอปนี้ใช้ CAS 3.0 ซึ่งระบุไว้ในการตั้งค่าต่อไปนี้:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
หากคุณต้องการป้องกันเว็บแอปนี้โดยใช้ CAS 2.0 ให้เปลี่ยน CAS Validation Filter เป็นดังต่อไปนี้:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
สำหรับ CAS 1.0 ใช้ดังต่อไปนี้:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas10TicketValidationFilter</filter-class>
สำหรับทุกตัวอย่างของพารามิเตอร์ casServerUrlPrefix
ให้เปลี่ยนเป็น:
<param-name>casServerUrlPrefix</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app</param-value>
สำหรับทุกตัวอย่างของพารามิเตอร์ casServerLoginUrl
ให้เปลี่ยนเป็น:
<param-name>casServerLoginUrl</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app/login</param-value>
หากคุณต้องการปรับแต่งการตั้งค่าเพิ่มเติม โปรดดูที่ Java CAS client GitHub Repository สำหรับข้อมูลเพิ่มเติม