CAS Ücretsiz SSO Çözümü
Günlük yönetimi ile çok dilli kimlik doğrulama yazılımı
Merkezi Kimlik Doğrulama Hizmeti, OpenID, OAuth ve SAML protokollerini kullanarak kimlik doğrulama ve yetkilendirme özellikleri sağlayan açık kaynaklı bir SSO aracıdır.
Genel Bakış
Web uygulamaları hızla büyüyor ve işletmeler hizmet ve araç sağlamak için niyetleri olan birkaç alanı hedefleme eğilimindedir. Her gün artan çok sayıda kullanıcı var ve veri güvenliği ve veri yönetimi kurumsal işletmeler için ana endişeler haline geliyor. Bununla birlikte, açık kaynaklı topluluk bu endişeleri daraltmak için birçok çözüm sağlamıştır ve yazılımdaki tek işaret bunlardan biridir. CAS, Sistemde Ücretsiz ve Açık Kaynak Tek İşarettir ve CAS’ı yalnızca kullanıcı kimlik doğrulaması ve yetkilendirme sağlamak için oluşturulan bilet tabanlı bir protokolü kullanır. Bu protokolün mimarisi müşteri ve sunucu işbirliğine dayanmaktadır. CAS Server, kullanıcıları doğrular ve uygulamalara erişim sağlar. Oysa, teknoloji üzerine bu tek işaretin istemcisi, CAS sunucusu tarafından verilen kullanıcıların bilgilerini almaya dikkat eder. Bu açık kaynaklı yazılım sadece kendi CAS protokolünü desteklemekle kalmaz, aynı zamanda OpenId, OAuth, OpenID Connect, Rest, WSFederation ve SAML protokollerini de destekler. CAS, kamu/özel anahtar çiftlerini kullanarak yüksek güven seviyelerini koruyan üçüncü taraflarla entegrasyonlar için tam bir ekosisteme sahiptir. CAS esas olarak Java’da yazılmıştır ve konuşlandırma ve geliştirme ile ilgili kapsamlı belgeler sunmaktadır. Yazılımdaki bu tek işareti destekleyen güçlü bir topluluk var.
Özellikler
- OAuth V2 Protokolü
- OpenId & OpenID Connect Protokolü
- Şifre Yönetimi
- Çeşitli dağıtım seçenekleri
- Çok faktörlü kimlik doğrulama
- Çok dilli
- Oturum Açma / Oturum Açma
- Birçok kimlik doğrulama mekanizması (ör. JAAS, LDAP, RDBMS)
- WS-Federasyon Pasif İstekçi Protokolü
- Kurulumu kolay
- Üçüncü taraflarla entegrasyonlar
- Birçok Yetkilendirme Mekanizması (örneğin ABAC, Saat/Tarih, Dinlenme)
- Günlükleri yönetmek için kullanıcı arayüzü
- İzleme ve istatistikleri yönetmek için kullanıcı arayüzü
- Facebook, Twitter ve daha fazlasına yetki verilen kimlik doğrulama
Kurulum
Repoyu klonlamak için aşağıdaki komutu çalıştırın:
git clone git@github.com:apereo/cas.git cas-server
Başarılı klondan sonra aşağıdaki komutu çalıştırın:
cd cas-server
git checkout master
Şimdi, kod tabanını aşağıdaki komut aracılığıyla oluşturun:
./gradlew build install --parallel -x test -x javadoc -x check
Yapıdaki bir aşamayı tamamen atlamak/yok saymak için -x
kullanabilirsiniz. (yani -x testi
, -x check
).
Sizin için Gradle’ın bağımlılıkları ve yeni modül sürümlerini çözmesine/güncellemesine izin vermenize gerek yoksa, yapıyı çok daha hızlı hale getirme eğiliminde olan -offline` bayrağından yararlanabilirsiniz. Gradle Daemon'u kullanmak da büyük bir yardımcıdır. Varsayılan olarak etkinleştirilmelidir. Gradle’ın yapı önbelleğini
-build-cacheile etkinleştirmek de yapı sürelerini önemli ölçüde artırabilir. Windows kullanıyorsanız, işletim sistemi arasındaki hat sonu farkı nedeniyle yapı için gerekli olan
-dskipnpmlint = truebulabilirsiniz. SSL'yi yapılandırmak için,
theKeyStore ‘dosyası, CAS sunucusu etki alanınız için verilen SSL özel/genel anahtarlarını içermelidir. Anahtar deposunu ve sertifikayı oluşturmak için JDK’nın `` Keytool ‘komutunu kullanmanız gerekecektir. Aşağıdaki komutlar örnek olabilir:
keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore /etc/cas/thekeystore -ext san=dns:$REPLACE_WITH_FULL_MACHINE_NAME
/Etc/hosts
dosyanızda (Windows: C: \ Windows \ System32 \ Drivers \ etc \ hosts
), aşağıdaki girişi de eklemeniz gerekebilir:
127.0.0.1 mymachine.domain.edu
Anahtar deponuzdan dışa aktarılan sertifikanın Java platformunun Global anahtar deposuna da aktarılması gerekiyor:
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
burada java_home
JDK’nın yüklü olduğu yerdir (yani/kütüphane/java/javaVirtualmachines/jdk [sürüm] .jdk/içerik/home
).
Dağımak için aşağıdaki komutları yürütün:
cd webapp/cas-server-webapp-tomcat
../../gradlew build bootRun --parallel --offline --configure-on-demand --build-cache --stacktrace
Varsayılan olarak CAS, `[httpsmymacinedomaindu8443cas] (https://href.li/?https://mymachine.domain.edu:843/cas) adresinde bulunacaktır.
Docker’da çalışıyor
Docker için Docker Image [Docker Hub] (https://href.li/?https://hub.docker.com/r/apereo/cas/) adresinde bulunur. Docker görüntüsünü aşağı çekmek için aşağıdaki komutu çalıştırın:
docker pull apereo/cas:v[A.B.C]
burada [A.B.C]
CAS sunucusu sürümüne eşlenen görüntü etiketini temsil eder.
Keşfetmek
Aşağıdaki bağlantıları alakalı bulabilirsiniz:
Ücretsiz ve açık kaynaklı yazılım kullanarak iş operasyonlarını otomatikleştirin
Twofactor kimlik doğrulaması hakkında bilmeniz gereken her şey 2FA
Daha iyi iş büyümesi için SSO sisteminden nasıl yararlanılır