Giao diện
Hướng dẫn cài đặt CAS
Hướng dẫn thiết lập xác thực CAS (Central Authentication Service) trong Digiforce.
Điều kiện tiên quyết
- Digiforce đã cài đặt và chạy ổn định
- Plugin
@digiforce-nc/plugin-auth-casđã được kích hoạt - CAS server đã triển khai và hoạt động (CAS 2.0 trở lên)
- Domain của Digiforce đã được đăng ký là service hợp lệ trên CAS server
Bước 1: Tạo authenticator trong Digiforce
- Vào Settings → Authentication → Add new
- Chọn loại CAS
- Đặt tên authenticator (ví dụ:
cas-main,university-cas) - Lưu lại
Bước 2: Cấu hình CAS server URL
Điền URL gốc của CAS server:
| Trường | Ví dụ | Mô tả |
|---|---|---|
| CAS URL | https://cas.university.edu/cas | Base URL của CAS server |
| Service Domain | https://app.example.com | Domain của Digiforce |
Service URL sẽ được tạo tự động:
{serviceDomain}/api/cas:service?authenticator={name}&__appName={app}&redirect={url}Ví dụ: https://app.example.com/api/cas:service?authenticator=cas-main&__appName=main&redirect=/admin
Bước 3: Đăng ký service trên CAS server
CAS server cần biết domain nào được phép sử dụng dịch vụ xác thực. Đăng ký service trong CAS:
CAS Management (nếu có)
- Truy cập CAS Management Console
- Thêm service mới với Service URL pattern:
https://app.example.com/** - Cho phép tất cả attributes cần thiết
Cấu hình file (JSON/YAML)
json
{
"serviceId": "^https://app\\.example\\.com/.*",
"name": "Digiforce App",
"id": 1,
"attributeReleasePolicy": {
"@class": "org.apereo.cas.services.ReturnAllAttributeReleasePolicy"
}
}Bước 4: Cấu hình autoSignup
Bật hoặc tắt tự động tạo tài khoản:
autoSignup: true— user CAS chưa có tài khoản Digiforce sẽ được tạo tự độngautoSignup: false— chỉ user đã có tài khoản mới đăng nhập được
Lưu ý
CAS plugin sử dụng autoSignup ở cấp cao nhất, không phải public.autoSignup như các plugin khác.
Bước 5: Kiểm tra đăng nhập
- Mở cửa sổ ẩn danh
- Tại trang đăng nhập, nhấn Đăng nhập bằng CAS
- Hệ thống redirect đến CAS server
/login?service={serviceURL} - Đăng nhập tại CAS bằng tài khoản tổ chức
- CAS redirect về Digiforce kèm ticket → plugin validate ticket
- Xác minh đăng nhập thành công
Lưu ý
- Service URL phải khớp chính xác: CAS server so sánh service URL khi validate ticket — URL trong request
cas:loginphải khớp với URL trong requestserviceValidate - CAS 2.0: Plugin chỉ hỗ trợ CAS 2.0 protocol (serviceValidate endpoint)
- HTTPS: Khuyến nghị sử dụng HTTPS cho cả CAS server và Digiforce