-
La historia completa la mayor parte de Cas aprendizaje terminar -yellowcong
-
cas Andamios: https://casinitializr.herokuapp.com/
-
Varias versiones de la plantilla: https://github.com/apereo/cas-overlay-template
configuración y gestión de servicios
En primer lugar, tenemos que entender lo que el concepto de servicio de la CAS es que
explicamos en el primer trimestre en el sistema CAS, dividido en tres partes,
- Usuario,
- aplicaciones web,
- centro de autenticación SSO.
El usuario es lo que los usuarios normales, las aplicaciones web que necesitan para acceder al SSO
centro de certificación de aplicaciones está aquí Servicio, SSO y centro de autentificación es el servidor CAS.
CAS se divide simplemente el servidor y clienteY S ervice
se refiere a una pluralidad de específicaEl cliente (clientes CAS).
- Y aquí está la Gestión de Servicios (Service Management)Es:
herramientas de gestión de servicios del servidor CAS CAS permiten a los administradores declaran y qué servicios (servicio, el cliente CAS) de configuración pueden utilizar CAS en qué áreas.
herramienta administrativa Servicios de componentes del núcleo esService RegistryAlmacena uno o más servicios de registro.
A continuación presentamos nuestra primera conocimiento --El servicio de configuración!
Una, de configuración de servicios
Que acabamos de mencionar en los CAS, ropaherramientas de gestión de servicios en el registro de servicios que almacena uno o más servicios de registro, Que contiene los diferentes servicioscomportamiento de los metadatosMediante la configuración de estos datos podemos controlar cumplir con el servicio de 行为
.
Principalmente 行为
incluyendo algunos puntos:
- Autorizado del servicio - Control de los servicios que pueden participar en la sesión CAS SSO.
- Forzada autenticar la tarjeta - proporciona un control de gestión para aplicar la autenticación.
- Propiedades de Prensa - para proporcionar los servicios de datos de usuario para la autorización y personalización .
- Actuando de control - por la autenticación de proxy / denegación cuenta para limitar aún más el servicio de autorización.
- Control de temas - definido para un servicio determinado tema CAS repuesto .
En las Service
propiedades de configuración incluye la siguiente información:
La figura describe algunos elementos de configuración comunes en el servicio para el significado de cada propiedad de configuración se puede referir a la documentación específica, la configuración del servicio .
En estas configuraciones, el más frecuentemente utilizados son:
-
Servicio de Política de acceso - (
access Strategy
), puede ver específica: la configuración de la política de servicio . -
Propiedades del servicio de configuración (-
properties
), específico vista: configuración de propiedad de servicio . -
Política de caducidad del servicio - (
expirationPolicy
), específico vista: configuración de caducidad del servicio .
Después de la información de configuración de metadatos CAS tiene una comprensión general, tenemos que configurar su almacenamiento ,, aquí Service ofrece una variedad de soluciones de almacenamiento.
Recomienda el uso de JSON, YAML, MongoDB, Redis, JPA para almacenar esto de varias maneras de utilizar aquí también se utilizará para introducir esto de varias maneras.
1, JSON
Esta es también la formaCAS para utilizar la inicialización por defectoLa definición de servicio de registro lee el archivo de configuración en el contexto JSON inicialización de la aplicación, espera encontrar en una configuración de ubicación del directorio de archivos JSON.
Las primeras dependencias Añadir:
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-json-service-registry</artifactId>
<version>${cas.version}</version>
</dependency>
En la resources/services
carpeta debajo de la nueva web-10000001.json
, de la siguiente manera:
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^(https|imaps|http)://.*",
"name" : "web",
"id" : 10000001,
"evaluationOrder" : 10
}
Nota: el nombre del archivo JSON para la regla ${name}-${id}.json
, id debe ser el mismo que los archivos de contenido JSON JSON.
JSON documento explica:
@class
:
Necesario para laorg.apereo.cas.services.RegisteredService
clase de implementación, otros atributos de unjson
objeto reflectante
de uso generalRegexRegisteredService
, la estrategia de juegoid
deLas expresiones regularesserviceId
: Sólo服务 id
name
: Nombre de servicio, se mostrará en la página de inicio de sesión predeterminadoid
: Identificador único global (Que coincidir con el nombre del archivo)description
: Descripción del servicio, aparecerá en la página de inicio de sesión predeterminadoevaluationOrder
: Tiempo de ejecución secuencial para el partido, preferiblemente mayor que 1 digitales
Porque CAS服务
, el valor predeterminado es proporcionar un valor predeterminado Service配置项
, por lo que si se agrega Json配置
no funcionó, puede intentar comentando la de inicio predeterminada Json
en pom.xml
archivos de configuración en el interior,
De la siguiente manera:
A continuación, añadir la configuración de los application.properties fichero de configuración:
##
# Service Registry(服务注册)
#
# 开启识别Json文件,默认false
cas.serviceRegistry.initFromJson=true
#自动扫描服务配置,默认开启
#cas.serviceRegistry.watcherEnabled=true
#120秒扫描一遍
cas.serviceRegistry.schedule.repeatInterval=120000
#延迟15秒开启
# cas.serviceRegistry.schedule.startDelay=15000
##
# Json配置
cas.serviceRegistry.json.location=classpath:/services
Iniciar el servicio, podemos encontrar el siguiente paquete de guerra JSON comentó después de la inicialización, por defecto sólo comenzó un JSON, podemos encontrar en el registro de arranque de la consola:
Sin comentarios, el valor por defecto será cargado con dos configuración del servicio.
Introduzca una dirección específica https://sso.anumbrella.net:8443/cas/login?service=http://localhost:9080/sample, iniciar sesión, introduzca su nombre de usuario, contraseña éxito! Y luego saltar a una dirección http: // localhost: 9080 / billete de muestra = dirección de xxxxxxxxxxxxxx ?.