Hệ thống người dùng chung dựa trên người dùng AD của tỉnh. Hệ thống cung cấp API cho các hệ thống khác đồng bộ người dùng và vai trò người dùng theo cơ cấu tổ chức của đơn vị. Hệ thống cũng cung cấp dịch vụ đăng nhập một lần để tích hợp toàn bộ ứng dụng trong toàn tỉnh.
SSO là một cơ chế xác thực yêu cầu người dùng đăng nhập vào chỉ một lần với một tài khoản và mật khẩu để truy cập vào nhiều ứng dụng trong 1 phiên làm việc (session).
Trước khi có đăng nhập một lần (SSO), một người sử dụng đã phải nhập các tài khoản và mật khẩu cho từng ứng dụng mỗi khi họ đăng nhập vào các ứng dụng khác nhau hoặc các hệ thống trong cùng một phiên (session). Điều này rõ ràng có thể tốn nhiều thời gian, đặc biệt là trong môi trường doanh nghiệp, nơi mà thời gian là tiền bạc nhưng thời gian là lãng phí bởi vì nhân viên phải đăng nhập mỗi khi họ truy cập vào một hệ thống mới từ máy tính của họ. SSO thường được thực hiện thông qua một mô-đun xác thực phần mềm riêng biệt hoạt động như một cửa ngõ vào tất cả các ứng dụng yêu cầu đăng nhập. Các mô-đun xác thực người sử dụng và sau quản lý truy cập vào các ứng dụng khác. Nó hoạt động như một kho dữ liệu chung cho tất cả các thông tin đăng nhập được yêu cầu.
Các hệ thống xác thực SSO đang được sử dụng rộng rãi là: CAS (Central Authentication Service), WebAuth. RSA Single Sign On Manager, Open Single Sign - On (OpenSSO) hoạt động dựa trên Token, Java Open SSO (JOSSO).
Ở đây chúng ta sẽ sử dụng mô hình Dịch vụ xác thực trung tâm CAS (Central Authentication Service).
- Người dùng truy cập vào ứng dụng khi đã chứng thực với CAS
- Người dùng truy cập vào ứng dụng khi chưa chứng thực với CAS
Đường dẫn đến trang https://sso.domain.com
Bước 1: Tại ứng dụng, kiểm tra session của ứng dụng xem đã đăng nhập chưa, nếu chưa, chuyển đến bước 2.
Bước 2: Redirect về trang đăng nhập chung.bằng đường dẫn:
https://sso.domain.com/login?service=https://ungdung1.com/login-page
Trong đó, service là domain truy cập đến ứng dụng cần tích hợp.
Thực hiện đăng nhập trên trang https://sso.domain.com/login, sau khi đăng nhập thành công, sso tự động redirect về ứng dụng với đường dẫn:
https://ungdung1.com/login-page?ticket=xxxxxxxxxxxxxxx
Với xxxxxxxxxxxxxxx là ticket được sso cấp cho ungdung1
Bước 3: Validate ticket
Từ bước 2, lấy giá trị tiket trên url và validate theo đường dẫn:
https://sso.domain.com/p3/serviceValidate?ticket=xxxxxxxxxxxxxxx&service=https://ungdung1.com/login-page
Nếu xác thực thành công, giá trị trả về là 1 đoạn XML có chứa tải khoản đã đăng nhập tương ứng. Nếu lỗi, XML trả về chứa thông báo lỗi
Sau khi xác thực thành công, sử dụng tài khoản trả về để cấp session trong ứng dụng
Cấu trúc XML:
|