CAS es un software único de código abierto en el software

CAS Solución SSO gratuita

Software de autenticación multilingüe con gestión de registros

El servicio de autenticación central es una herramienta SSO de código abierto que proporciona características de autenticación y autorización utilizando protocolos OpenID, OAuth y SAML.

Descripción general

Las aplicaciones web están creciendo rápidamente y las empresas tienden a dirigirse a varias áreas con intenciones de proporcionar servicios y herramientas. Hay una gran cantidad de usuarios que aumentan día a día y la seguridad de los datos y la gestión de datos se están convirtiendo en las principales preocupaciones para las empresas empresariales. Sin embargo, la comunidad de código abierto ha proporcionado muchas soluciones para golpear estas preocupaciones, y el software único es uno de ellos. CAS es un sistema único de código libre y de código abierto en el sistema y utiliza un protocolo basado en boletos CAS que está construido exclusivamente para proporcionar autenticación y autorización del usuario. La arquitectura de este protocolo se basa en la colaboración del cliente y el servidor. CAS Server autentica a los usuarios y otorga acceso a las aplicaciones. Mientras que el cliente de esta tecnología de inicio de sesión único se encarga de recuperar la información de los usuarios otorgados por el servidor CAS. Este software de código abierto no solo admite su propio protocolo CAS, sino que también admite OpenID, OAuth, OpenID Connect, REST, WSFederation y SAML Protocols. CAS tiene un ecosistema completo para las integraciones con terceros que mantienen los altos niveles de confianza mediante el uso de pares de claves públicas/privadas. CAS está escrito principalmente en Java y proporciona documentación integral con respecto a la implementación y el desarrollo. Hay una comunidad sólida que respalda este inicio único en el software.

Requisitos del sistema

  • JDK 11
  • Apache Tomcat
  • Docker (opcional)

Características

  • Protocolo OAuth V2
  • Protocolo de Connect OpenID y OpenID
  • Administración de contraseñas
  • Varias opciones de implementación
  • Autenticación multifactorial
  • Multilingüe
  • Iniciar sesión / Iniciar sesión
  • Muchos mecanismos de autenticación (por ejemplo, JAAS, LDAP, RDBMS)
  • Protocolo de solicitante pasivo de Federación WS
  • Fácil de configurar
  • Integraciones con terceros
  • Muchos mecanismos de autorización (por ejemplo, ABAC, hora/fecha, descanso)
  • UI para administrar registros
  • UI para administrar el monitoreo y las estadísticas
  • Autenticación delegada a Facebook, Twitter y más

Instalación

Ejecute el siguiente comando para clonar el repositorio:

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

Después de un clon exitoso, ejecute el siguiente comando:

    cd cas-server

    git checkout master

Ahora, cree la base de código a través del siguiente comando:

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

Puede usar -x para omitir/ignorar por completo una fase en la compilación. (es decir, -x test, -x check). Si no tiene necesidad de dejar que Gradle resuelva/actualice dependencias y nuevas versiones de módulos para usted, puede aprovechar el indicador Offline cuando construye, lo que tiende a hacer que la compilación sea mucho más rápido. Usar el Daemon Gradle también es de gran ayuda. Debe estar habilitado de forma predeterminada. Habilitar la caché de construcción de Gradle a través de --build-cache también puede mejorar significativamente los tiempos de construcción. Si está utilizando Windows, puede encontrar -dskipnpmlint = true necesarios para la compilación debido a la diferencia de finalización de línea entre el sistema operativo Para configurar SSL, el archivo TheKeyStore debe incluir las claves privadas/públicas SSL que se emiten para su dominio del servidor CAS. Deberá usar el comando ‘keytool` del JDK para crear el almacén de claves y el certificado. Los siguientes comandos pueden servir como ejemplo:

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

En su archivo /etc/hosts (en Windows: C: \ Windows \ System32 \ Drivers \ Etc \ Hosts), es posible que también deba agregar la siguiente entrada:

    127.0.0.1 mymachine.domain.edu

El certificado exportado fuera de su almacén de claves también debe importarse al almacén de claves global de la plataforma 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

donde java_home es donde tiene el JDK instalado (es decir,/biblioteca/java/javavirtualmachines/jdk [versión] .jdk/contenido/home). Ejecute los siguientes comandos para implementar:

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

Por defecto, CAS estará disponible en [httpsmymachinedomeRenedu8443cas] (https://href.li/?https://mymachine.domain.edu:8443/cas)

Correr en Docker

Para Docker, Docker Image se encuentra en [Centro de acopolador] (https://href.li/?https://hub.docker.com/r/apeo/cas/). Ejecute el siguiente comando para reducir la imagen de Docker:

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

donde [A.B.C] representa la etiqueta de imagen que se asigna a la versión del servidor CAS.

 Español