ข้ามไปยังเนื้อหาหลัก

การใช้งาน 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 สำหรับข้อมูลเพิ่มเติม