CAS Solução SSO gratuita
Software de autenticação multilíngue com gerenciamento de logs
O Serviço de Autenticação Central é uma ferramenta SSO de código aberto que fornece recursos de autenticação e autorização usando protocolos OpenID, OAuth e SAML.
Visão geral
Os aplicativos da Web estão crescendo rapidamente e as empresas tendem a atingir várias áreas com intenções de fornecer serviços e ferramentas. Há um grande número de usuários que aumentam o dia a dia e a segurança e o gerenciamento de dados estão se tornando as principais preocupações para as empresas corporativas. No entanto, a comunidade de código aberto forneceu muitas soluções para golpear essas preocupações, e o sinal único no software é um deles. O CAS é um sinal único gratuito e de código aberto no sistema e usa o CAS Um protocolo baseado em ingressos que é criado exclusivamente para fornecer autenticação e autorização do usuário. A arquitetura deste protocolo é baseada na colaboração do cliente e do servidor. O CAS Server autentica usuários e concede acesso aos aplicativos. Considerando que o cliente desse sinal único sobre a tecnologia cuida da recuperação de informações dos usuários concedidos pelo servidor CAS. Esse software de código aberto não suporta apenas seu próprio protocolo CAS, mas também suporta protocolos OpenID, OAuth, OpenId Connect, Rest, WSFederação e SAML. O CAS possui um ecossistema completo para as integrações com terceiros, que mantém os altos níveis de confiança usando pares de chave pública/privada. O CAS é escrito principalmente em Java e fornece documentação abrangente sobre a implantação e o desenvolvimento. Há uma comunidade forte fazendo backup desse signo único no software.
Características
- Protocolo OAuth V2
- OpenID & OpenID Connect Protocol
- Gerenciamento de senhas
- Várias opções de implantação
- Autenticação multifator
- Multilíngue
- Inscrição / saída
- Muitos mecanismos de autenticação (por exemplo, JaaS, LDAP, RDBMS)
- Protocolo de solicitante passivo WS-Federation
- Fácil de configurar
- Integrações com terceiros
- Muitos mecanismos de autorização (por exemplo, ABAC, hora/data, descanso)
- UI para gerenciar logs
- UI para gerenciar o monitoramento e as estatísticas
- Autenticação delegada no Facebook, Twitter e muito mais
Instalação
Execute o seguinte comando para clonar o repo:
git clone git@github.com:apereo/cas.git cas-server
Após o clone bem -sucedido, execute o seguinte comando:
cd cas-server
git checkout master
Agora, construa a base de código através do seguinte comando:
./gradlew build install --parallel -x test -x javadoc -x check
Você pode usar -x
para pular/ignorar totalmente uma fase na construção. (ou seja, -x test
, -x check
).
Se você não precisar permitir que a Gradle Resolve/Atualize dependências e novas versões do módulo para você, poderá aproveitar o sinalizador -offline
quando construir o que tende a tornar a construção muito mais rápida.
Usar o daemon Gradle também é uma grande ajuda. Deve ser ativado por padrão.
Ativar o cache de construção da Gradle via --Build-cache
também pode melhorar significativamente os tempos de construção.
Se você estiver usando o Windows, poderá encontrar -dskipnpmlint = true
necessário para a compilação devido à diferença de final de linha entre o OS
Para configurar o SSL, o arquivo theKeyStore
deve incluir as chaves públicas/privadas SSL que são emitidas para o domínio do servidor CAS. Você precisará usar o comando keytool
do JDK para criar o keystore e o certificado. Os seguintes comandos podem servir de exemplo:
keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore /etc/cas/thekeystore -ext san=dns:$REPLACE_WITH_FULL_MACHINE_NAME
No seu arquivo /etc/hosts
(no Windows: c: \ windows \ system32 \ drivers \ etc \ hosts
), você também pode precisar adicionar a seguinte entrada:
127.0.0.1 mymachine.domain.edu
O certificado exportado para fora do seu keystore também precisa ser importado para o keystore global da 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
onde java_home
é onde você está instalado no JDK (ou seja,/biblioteca/java/javavirtualmachines/jdk [versão] .jdk/contents/home
).
Execute os seguintes comandos para implantar:
cd webapp/cas-server-webapp-tomcat
../../gradlew build bootRun --parallel --offline --configure-on-demand --build-cache --stacktrace
Por padrão, o CAS estará disponível em [httpsMyMachinedOniendedu8443Cas] (https://href.li/?https://mymachine.domain.edu:8443/cas)
executando no documento
Para o Docker, o Docker Image está localizado no [Docker Hub] (https://href.li/?https://hub.docker.com/r/apereo/cas/). Execute o seguinte comando para puxar a imagem do Docker:
docker pull apereo/cas:v[A.B.C]
onde [a.b.c]
representa a tag de imagem mapeada para a versão do servidor CAS.
Explore
Você pode encontrar os seguintes links relevantes:
Automatizar operações comerciais usando software de código aberto e gratuito
Tudo o que você precisa saber sobre a autenticação Twofactor 2fa
Como aproveitar o sistema SSO para um melhor crescimento dos negócios