CASは、ソフトウェアのオープンソースシングルサインです

CAS 無料のSSOソリューション

ログ管理を備えた多言語認証ソフトウェア

Central Authentication Serviceは、OpenID、OAuth、およびSAMLプロトコルを使用して認証と認証機能を提供するオープンソースSSOツールです。

概要

Webアプリケーションは急速に成長しており、企業はサービスとツールを提供する意図を持ついくつかの領域をターゲットにする傾向があります。膨大な数のユーザーが毎日増加しており、データセキュリティとデータ管理が企業ビジネスの主な関心事になりつつあります。ただし、オープンソースコミュニティはこれらの懸念をクーデプするための多くのソリューションを提供しており、シングルサインオンソフトウェアもその1つです。 CASは、無料でオープンソースのシングルサインオンシステムであり、CASを使用して、ユーザー認証と承認を提供するために独占的に構築されたチケットベースのプロトコルを使用しています。このプロトコルのアーキテクチャは、クライアントとサーバーのコラボレーションに基づいています。 CAS Serverはユーザーを認証し、アプリケーションへのアクセスを付与します。一方、このシングルサインオンテクノロジーのクライアントは、CASサーバーによって付与されたユーザーの情報を取得することになります。 このオープンソースソフトウェアは、独自のCASプロトコルをサポートするだけでなく、OpenID、OAuth、OpenID Connect、REST、WSFEDERATION、およびSAMLプロトコルもサポートしています。 CASには、パブリック/プライベートキーペアを使用して高い信頼レベルを維持する第三者との統合のための完全なエコシステムがあります。 CASは主にJavaで書かれており、展開と開発に関する包括的なドキュメントを提供しています。この単一のサインオンソフトウェアをバックアップする強力なコミュニティがあります。

システム要求

  • JDK 11
  • Apache Tomcat
  • Docker(オプション)

特徴

  • OAUTH V2プロトコル
  • OpenID&OpenID Connectプロトコル *パスワード管理 *さまざまな展開オプション *マルチファクター認証 *多言語 *サインイン /サインアウト *多くの認証メカニズム(例:Jaas、LDAP、RDBMS)
  • WS-FEDERATION PASSIVE REQUECTORプロトコル *セットアップが簡単です *第三者との統合 *多くの承認メカニズム(例:ABAC、時間/日付、休息) *ログを管理するui *監視と統計を管理するためのUI
  • Facebook、Twitterなどに委任された認証

インストール

次のコマンドを実行して、リポジトリをクローンします。

    git clone git@github.com:apereo/cas.git cas-server

クローンが成功した後、次のコマンドを実行します。

    cd cas-server

    git checkout master

次に、次のコマンドを介してコードベースを作成します。

    ./gradlew build install --parallel -x test -x javadoc -x check

-xを使用して、ビルド内のフェーズを完全にスキップ/無視できます。 (つまり、 -x test -x check)。 Gradleを解決/更新依存関係と新しいモジュールバージョンを解決/更新する必要がない場合は、ビルドをビルドすると、ビルドをより速くする傾向がある -Offlineフラグを活用できます。 Gradle Daemonを使用することも大きな助けです。デフォルトで有効にする必要があります。 -build-cacheを介してGradleのビルドキャッシュを有効にすることも、ビルド時間を大幅に改善できます。 Windowsを使用している場合、OS間のラインエンディングの違いのためにビルドに必要な「-dskipnpmlint = true`が見つかる可能性があります SSLを構成するには、「TheKeyStore」ファイルには、CASサーバードメイン用に発行されるSSLプライベート/パブリックキーを含める必要があります。 JDKの「keytool」コマンドを使用して、キーストアと証明書を作成する必要があります。次のコマンドは例として役立つ場合があります。

    keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore /etc/cas/thekeystore -ext san=dns:$REPLACE_WITH_FULL_MACHINE_NAME

/etc/hostsファイル(Windows: c:\ windows \ system32 \ drivers \ etc \ hostss)で、次のエントリを追加する必要があります。

    127.0.0.1 mymachine.domain.edu

キーストアからエクスポートされた証明書は、Javaプラットフォームのグローバルキーストアにもインポートする必要があります。

    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

ここで、 java_homeはJDKをインストールしている場所(つまり、/library/java/javavirtualmachines/jdk [version] .jdk/contents/home)です。 次のコマンドを実行して展開します。

    cd webapp/cas-server-webapp-tomcat
    ../../gradlew build bootRun --parallel --offline --configure-on-demand --build-cache --stacktrace

デフォルトでは、CASは `[httpsmymachinedomainedu8443cas](https://href.li/?https://mymachine.domain.edu:8443/cas)で入手できます。

dockerでランニング

Dockerの場合、Docker Imageは[Dockerハブ](https://href.li/?https://hub.docker.com/r/apereo/cas/)にあります。次のコマンドを実行して、Docker画像を引き下げます。

    docker pull apereo/cas:v[A.B.C]

ここで、 [a.b.c]は、CASサーバーバージョンにマッピングされる画像タグを表します。

 日本