CAS Giải pháp SSO miễn phí
Phần mềm xác thực đa ngôn ngữ với quản lý nhật ký
Dịch vụ xác thực trung tâm là một công cụ SSO nguồn mở cung cấp các tính năng xác thực và ủy quyền sử dụng các giao thức OpenID, OAuth và SAML.
Tổng quan
Các ứng dụng web đang phát triển nhanh chóng và các doanh nghiệp có xu hướng nhắm mục tiêu một số lĩnh vực với ý định cung cấp dịch vụ và công cụ. Có một số lượng lớn người dùng tăng lên từng ngày và bảo mật dữ liệu và quản lý dữ liệu đang trở thành mối quan tâm chính cho các doanh nghiệp doanh nghiệp. Tuy nhiên, cộng đồng nguồn mở đã cung cấp nhiều giải pháp để đảo ngược các mối quan tâm này và một dấu hiệu duy nhất trên phần mềm là một trong số đó. CAS là một dấu hiệu đơn nguồn miễn phí và mở trên hệ thống và nó sử dụng CAS một giao thức dựa trên vé được xây dựng riêng để cung cấp xác thực và ủy quyền của người dùng. Kiến trúc của giao thức này dựa trên sự hợp tác của máy khách và máy chủ. Máy chủ CAS xác thực người dùng và cấp quyền truy cập vào các ứng dụng. Trong khi đó, máy khách của một dấu hiệu duy nhất về công nghệ này chăm sóc việc truy xuất thông tin của người dùng được cấp bởi máy chủ CAS. Phần mềm nguồn mở này không chỉ hỗ trợ giao thức CAS của riêng mình mà còn hỗ trợ OpenID, OAuth, OpenID Connect, REST, WSFEDATION và SAML giao thức. CAS có một hệ sinh thái hoàn chỉnh cho các tích hợp với các bên thứ ba duy trì mức độ tin cậy cao bằng cách sử dụng các cặp khóa công cộng/riêng tư. CAS chủ yếu được viết bằng Java và cung cấp tài liệu toàn diện về việc triển khai và phát triển. Có một cộng đồng mạnh mẽ ủng hộ dấu hiệu duy nhất này trên phần mềm.
Đặc trưng
- Giao thức OAuth V2
- Giao thức kết nối OpenID & OpenID
- Quản lý mật khẩu
- Các tùy chọn triển khai khác nhau
- Xác thực đa yếu tố
- Đa ngôn ngữ
- Đăng nhập / Đăng xuất
- Nhiều cơ chế xác thực (ví dụ: JAAS, LDAP, RDBMS)
- Giao thức yêu cầu thụ động của WS liên bang
- Dễ dàng thiết lập
- Tích hợp với bên thứ ba
- Nhiều cơ chế ủy quyền (ví dụ: ABAC, thời gian/ngày, nghỉ ngơi)
- UI để quản lý nhật ký
- UI để quản lý giám sát và số liệu thống kê
- Xác thực được ủy quyền cho Facebook, Twitter và hơn thế nữa
Cài đặt
Chạy lệnh sau để sao chép repo:
git clone git@github.com:apereo/cas.git cas-server
Sau khi nhân bản thành công, hãy chạy lệnh sau:
cd cas-server
git checkout master
Bây giờ, hãy xây dựng cơ sở mã thông qua lệnh sau:
./gradlew build install --parallel -x test -x javadoc -x check
Bạn có thể sử dụng -x
hoàn toàn bỏ qua/bỏ qua một pha trong bản dựng. (tức là -x test
, -x kiểm tra
).
Nếu bạn không cần phải để Gradle Resolve/Cập nhật phụ thuộc và phiên bản mô-đun mới cho bạn, bạn có thể tận dụng cờ --Offline
khi bạn xây dựng có xu hướng làm cho bản dựng đi nhanh hơn rất nhiều.
Sử dụng Daemon Gradle cũng là một trợ giúp lớn. Nó nên được bật theo mặc định.
Kích hoạt bộ nhớ cache xây dựng Gradle thông qua --build-cache
cũng có thể cải thiện đáng kể thời gian xây dựng.
Nếu bạn đang sử dụng Windows, bạn có thể tìm thấy -dskipnpmlint = true
cần cho bản dựng do sự khác biệt về kết thúc dòng giữa OS
Để định cấu hình SSL, tệp theyketore
phải bao gồm các khóa riêng/công khai SSL được phát hành cho tên miền CAS Server của bạn. Bạn sẽ cần sử dụng lệnh keytool
của JDK để tạo kho khóa và chứng chỉ. Các lệnh sau có thể đóng vai trò là một ví dụ:
keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore /etc/cas/thekeystore -ext san=dns:$REPLACE_WITH_FULL_MACHINE_NAME
Trong tệp /etc/hosts
của bạn (trên Windows: C: \ Windows \ System32 \ Trình điều khiển \ etc \ hosts
), bạn cũng có thể cần thêm mục sau:
127.0.0.1 mymachine.domain.edu
Giấy chứng nhận được xuất ra khỏi kho khóa của bạn cũng cần được nhập vào kho khóa toàn cầu của Java Nền tảng:
keytool -export -file /etc/cas/config/cas.crt -keystore /etc/cas/thekeystore -alias cas
sudo keytool -import -file /etc/cas/config/cas.crt -alias cas -keystore $JAVA_HOME/jre/lib/security/cacerts
nơi java_home
là nơi bạn đã cài đặt JDK (tức là/thư viện/java/javavirtualmachines/jdk [phiên bản] .jdk/nội dung/home
).
Thực hiện các lệnh sau để triển khai:
cd webapp/cas-server-webapp-tomcat
../../gradlew build bootRun --parallel --offline --configure-on-demand --build-cache --stacktrace
Theo mặc định, CAS sẽ có sẵn tại [HTTPSMymachinedOmainedu8443cas] (https://href.li/?https://mymachine.domain.edu:843/cas)
Chạy trong Docker
Đối với Docker, hình ảnh Docker được đặt tại [Docker Hub] (https://href.li/?https://hub.docker.com/r/apereo/cas/). Chạy lệnh sau để kéo hình ảnh docker xuống:
docker pull apereo/cas:v[A.B.C]
trong đó [A.B.C]
đại diện cho thẻ hình ảnh được ánh xạ tới phiên bản máy chủ CAS.
Khám phá
Bạn có thể tìm thấy các liên kết sau có liên quan:
Tự động hóa hoạt động kinh doanh bằng phần mềm nguồn mở và miễn phí
Mọi thứ bạn cần biết về Xác thực TwoFactor 2FA
Cách tận dụng hệ thống SSO để tăng trưởng kinh doanh tốt hơn