CAS Overview

CAS Overview

Presented at Openroad technical workshop June 14th, 2014.

4527d34d033232fc7ef39ace8df3edfe?s=128

Anh Tuan TRUONG

June 14, 2014
Tweet

Transcript

  1. Central Authentication Service (CAS) Hoàng Chí Linh EcoIT Corp

  2. Nội dung  Đặt vấn đề  CAS  Giới

    thiệu  Lịch sử phát triển  Một số khái niệm cơ bản  Cơ chế hoạt động  Các phương pháp xác thực  Alfresco  Tích hợp CAS và Alfresco
  3. Đặt vấn đề

  4. Đặt vấn đề  Trong Openroad, một phần không thể

    thiếu là các thư viện tài liệu điện tử cho phép người dùng có thể truy cập, tìm kiếm và lấy tài liệu tự do hay người dùng có thể chia sẻ tài liệu cho những người dùng khác.  Bên cạnh đó Openroad chưa có một nền tảng quản lý tài liệu cho người dùng.
  5. Đặt vấn đề  Do đó có thể áp dụng

    cơ chế single sign- on (SSO) cho phép người dùng Openroad sử dụng hệ thống DMS (Alfresco)  Điều này cho phép người dùng đăng nhập một cách an toàn, sử dụng chung một tài khoản cho các ứng dụng của Openroad: Email, Portal, Alfresco,...
  6. Đặt vấn đề Các giải pháp SSO:  Open Singer

    Sign-On (OpenSSO) – hoạt động dựa trên Token  Central Authentication Service (CAS) – hoạt động dựa trên việc cấp vé (Ticket).  Ngoài ra còn có JOSSO (Java Open Singer Sign- On), CoSign,...  ....
  7. CAS

  8. Giới thiệu  CAS là:  Một giải pháp SSO

    xuất phát từ đại học YALE  Hỗ trợ nhiều thư viện phía client viết bởi nhiều ngôn ngữ: PHP, JAVA,…  Nhiều trình quản lý xác thực: username/password, X509 certificate,…  Thông tin được lưu trong cookie, cookie bị xóa khi logout hoặc đóng trình duyệt, tự hủy sau 8h.
  9. Lịch sử của CAS  CAS 1.0  Được phát

    triển bởi đại học YALE, 1999  Là một web single sign-on, dễ sử dụng  CAS 2.0  Được phát triển bởi đại học YALE  Bổ sung thêm chức năng Proxy Authentication  Trở nên phổ biến hơn  Cộng đồng người sử dụng lớn
  10. Lịch sử của CAS  CAS 3.0  Trở thành

    JA-SIG project vào năm 2004  Độ tương thích cao hơn, mềm dẻo hơn  Giải quyết được vấn đề mà CAS 2 còn gặp phải: khó khăn khi mở rộng hoặc tăng thêm các yêu cầu  Trở thành một dự án mã nguồn mở
  11. Một số khái niệm cơ bản  CAS URI 

    /login  /logout  /validate  /serviceValidate  /proxy  …
  12. Một số khái niệm cơ bản  CAS Tickets 

    Ticket-Granting Ticket (TGT)  Service Ticket (ST)  Proxy Ticket (PT)  Proxy-Granting Ticket (PGT) Login Ticket
  13. Cơ chế hoạt động

  14. Các phương pháp xác thực  CAS không xác định

    một phương pháp xác thực cố định nào mà tùy từng người sử dụng sẽ xây dựng thêm cho phù hợp  Hỗ trợ các phương pháp xác thực LDAP, X509, Kerberos, NIS, AD,...  Các phương pháp sử dụng phổ biến hiện nay là LDAP và X509
  15. Các phương pháp xác thực  Khi người dùng sử

    dụng một chứng thư X509, chứng thư sẽ được gửi qua trình duyệt tới máy chủ CAS dùng để phục vụ quá trình xác thực, CAS sẽ:  Kiểm tra tính hợp lệ của chứng thư  Nhận dạng người dùng dựa trên LDAP hoặc cơ sở dữ liệu  Hình thức xác thực bằng giao thức Kerberos hiện đang được sử dụng ở một số trường đại học tại Mỹ
  16. Alfresco

  17. Alfresco  Alfresco là một hệ quản lý nội dung

    doanh nghiệp nguồn mở hàng đầu.  Alfresco:  Tận dụng tối đa các kỹ thuật nguồn mở (Spring, Hibernate,Lucence,JSF, MyFaces, JSR-168, JSR- 170 và dịch vụ web)  Sự đóng góp từ cộng đồng,  Biến hệ thống hồ sơ của bạn thành một kho dữ liệu dễ dùng, chuẩn mực và dễ dàng kiểm soát.
  18. Tính năng  Content Management Interoperability (CMIS)  Studio 

    Share  Email Server  Mobile client cho IPhone
  19. Lợi ích  Nguồn mở  Dễ sử dụng 

    Thuận lợi cho người phát triển  Môi trường cộng tác tốt  Quản trị đơn giản, bảo mật cao  Khả năng tìm kiếm cao  Kiến trúc hướng dịch vụ, khả năng chịu lỗi cao
  20. Tích hợp CAS và Alfresco

  21. Lý do  Đảm bảo đăng nhập an toàn 

    Cơ chế xác thực mạnh, đa cơ chế (xác thực bằng user name/password, certìicate,...)  Đơn giản hóa việc đăng nhập cho người sử dụng  Tạo được mối liên kết giữa các ứng dụng của Openroad  Đơn giản hơn trong quản lý cơ sở dữ liệu người dùng  .....
  22. Quá trình thực hiện  Cài đặt Alfresco, LDAP, CAS

    Server  Để alfresco có thể xác thực qua CAS, ta cần thêm thư viện cas client vào thư viện của alfresco  Cấu hình trong các webapp của tomcat bằng cách thêm các URL của CAS server vào file web.xml  Để alfresco có thể xác thực qua LDAP cần cấu hình file alfresco-global.properties như sau:
  23. Quá trình thực hiện authentication.chain=external1:external external.authentication.proxyUserName= external.authentication.proxyHeader=SsoUserHea der external.authentication.enabled=true external.authentication.userIdPattern=

  24. Tổng kết

  25. None