AEM 6.4 ha llegado al final de la compatibilidad ampliada y esta documentación ya no se actualiza. Para obtener más información, consulte nuestra períodos de asistencia técnica. Buscar las versiones compatibles here.
Habilitar el acceso a un repositorio CRX implica varios temas:
Derechos de acceso - los conceptos de cómo se definen y evalúan
Administración de usuarios - administrar las cuentas individuales utilizadas para el acceso
Administración de grupos : simplifique la administración de usuarios mediante la formación de grupos
Gestión de derechos de acceso - definir políticas que controlan la forma en que estos usuarios y grupos pueden acceder a los recursos
Los elementos básicos son:
Cuentas de usuario CRX autentica el acceso identificando y verificando a un usuario (por esa persona u otra aplicación) según los detalles que se tengan en la cuenta de usuario.
En CRX, cada cuenta de usuario es un nodo en el espacio de trabajo. Una cuenta de usuario CRX tiene las siguientes propiedades:
Representa a un usuario de CRX.
Contiene un nombre de usuario y una contraseña.
Se aplica a ese espacio de trabajo.
No puede tener subusuarios. Para los derechos de acceso jerárquicos debe utilizar grupos.
Puede especificar derechos de acceso para la cuenta de usuario.
Sin embargo, para simplificar la administración, recomendamos que (en la mayoría de los casos) asigne derechos de acceso a cuentas de grupo. La asignación de derechos de acceso para cada usuario individual se vuelve muy difícil de administrar rápidamente (las excepciones son ciertos usuarios del sistema cuando solo existen una o dos instancias).
Cuentas de grupo Las cuentas de grupo son colecciones de usuarios u otros grupos. Se utilizan para simplificar la administración, ya que el cambio en los derechos de acceso asignados a un grupo se aplica automáticamente a todos los usuarios de ese grupo. Un usuario no tiene que pertenecer a ningún grupo, pero a menudo pertenece a varios.
En CRX, un grupo tiene las siguientes propiedades:
Representa un grupo de usuarios con derechos de acceso comunes. Por ejemplo, autores o desarrolladores.
Se aplica a ese espacio de trabajo.
Puede tener miembros; pueden ser usuarios individuales u otros grupos.
La agrupación jerárquica se puede lograr con relaciones de miembros. No puede colocar un grupo directamente debajo de otro grupo en el repositorio.
Puede definir los derechos de acceso para todos los miembros del grupo.
Derechos de acceso CRX utiliza derechos de acceso para controlar el acceso a áreas específicas del repositorio.
Esto se realiza asignando privilegios para permitir o denegar el acceso a un recurso (nodo o ruta) en el repositorio. Como se pueden asignar varios privilegios, deben evaluarse para determinar qué combinación es aplicable a la solicitud actual.
CRX le permite configurar los derechos de acceso para las cuentas de usuario y de grupo. Los mismos principios básicos de evaluación se aplican entonces a ambos.
Implementaciones CRX control de acceso definido por JSR-283.
Se configura una instalación estándar de un repositorio CRX para utilizar listas de control de acceso basadas en recursos. Esta es una posible implementación del control de acceso JSR-283 y una de las implementaciones presentes con Jackrabbit.
CRX utiliza dos conceptos clave al evaluar los derechos de acceso:
A principal es una entidad que lleva derechos de acceso. Los principales son:
Una cuenta de usuario.
Una cuenta de grupo
Si una cuenta de usuario pertenece a uno o más grupos, también se asocia a cada uno de esos principales grupos.
A subject se utiliza para representar el origen de una solicitud.
Se utiliza para consolidar los derechos de acceso aplicables a esa solicitud. Estos se extraen de:
La entidad de seguridad del usuario
Los derechos que asigna directamente a la cuenta de usuario.
Todos los grupos principales asociados a ese usuario
Todos los derechos asignados a cualquiera de los grupos a los que pertenece el usuario.
El resultado se utiliza para permitir o denegar el acceso al recurso solicitado.
En CRX, el asunto depende de:
La lista de derechos de acceso aplicables al sujeto se elabora a partir de:
Cuando CRX gestiona la solicitud, compara la solicitud de acceso del sujeto con la lista de control de acceso en el nodo del repositorio:
Si Linda solicita actualizar el /features
en la siguiente estructura de repositorios:
Los derechos de acceso en CRX se evalúan de la siguiente manera:
Las entidades de seguridad de usuario siempre tienen prioridad sobre las entidades de seguridad de grupo, independientemente de:
Para una entidad de seguridad determinada existe (como máximo) 1 denegación y 1 entrada de permiso en un nodo determinado. La implementación siempre borra las entradas redundantes y se asegura de que el mismo privilegio no aparezca en las entradas de permitir y denegar.
Este proceso de evaluación es apropiado para el control de acceso basado en recursos de una instalación CRX estándar.
Toma de dos ejemplos donde el usuario aUser
es miembro del grupo aGroup
:
+ parentNode
+ acl
+ ace: aUser - deny - write
+ childNode
+ acl
+ ace: aGroup - allow - write
+ grandChildNode
En el caso anterior:
aUser
no se le concede permiso de escritura en grandChildNode
. + parentNode
+ acl
+ ace: aUser - deny - write
+ childNode
+ acl
+ ace: aGroup - allow - write
+ ace: aUser - deny - write
+ grandChildNode
En este caso:
aUser
no se le concede permiso de escritura en grandChildNode
.
El segundo ACE para aUser
es redundante.
Los derechos de acceso de varias entidades principales de grupo se evalúan en función de su orden, tanto dentro de la jerarquía como dentro de una única lista de control de acceso.
En la tabla siguiente se enumeran algunas recomendaciones y prácticas recomendadas:
Recomendación... | Motivo... |
Usar grupos | Evite asignar derechos de acceso usuario por usuario. Esto se debe a varios motivos:
|
Ser positivo | Utilice siempre las instrucciones Allow para especificar los derechos de acceso de la entidad de seguridad del grupo (siempre que sea posible). Evite utilizar una instrucción Deny. Las entidades principales de grupo se evalúan en orden, tanto dentro de la jerarquía como dentro de una única lista de control de acceso. |
Manténgalo simple | Invertir un poco de tiempo y pensamiento al configurar una nueva instalación será bien pagado. La aplicación de una estructura clara simplificará el mantenimiento y la administración en curso, lo que garantiza que tanto sus colegas actuales como los futuros sucesores puedan comprender fácilmente qué se está implementando. |
Probar | Utilice una instalación de prueba para practicar y asegurarse de que comprende las relaciones entre los distintos usuarios y grupos. |
Usuarios/grupos predeterminados | Actualice siempre los usuarios y grupos predeterminados inmediatamente después de la instalación para ayudar a evitar problemas de seguridad. |
Se utiliza un cuadro de diálogo estándar para Administración de usuarios.
Debe iniciar sesión en el espacio de trabajo correspondiente y, a continuación, puede acceder al cuadro de diálogo desde:
Propiedades
UserID
Nombre corto para la cuenta, utilizado al acceder a CRX.
Nombre principal
Un nombre de texto completo para la cuenta.
Contraseña
Necesario al acceder a CRX con esta cuenta.
ntlmhash
Se asigna automáticamente a cada cuenta nueva y se actualiza cuando se cambia la contraseña.
Puede agregar nuevas propiedades definiendo un nombre, tipo y valor. Haga clic en Guardar (símbolo de visto verde) para cada nueva propiedad.
Pertenencia a grupos Muestra todos los grupos a los que pertenece la cuenta. La columna Heredado indica la pertenencia que se ha heredado como resultado de la pertenencia a otro grupo.
Si hace clic en un GroupID (cuando está disponible), se abrirá la variable Administración de grupos para ese grupo.
Suplantadores Con la funcionalidad Suplantar un usuario puede trabajar en nombre de otro usuario.
Esto significa que una cuenta de usuario puede especificar otras cuentas (usuario o grupo) que pueden operar con su cuenta. En otras palabras, si el usuario B puede suplantar al usuario A, el usuario B puede realizar acciones utilizando los detalles completos de la cuenta del usuario A (incluidos el ID, el nombre y los derechos de acceso).
Esto permite que las cuentas del imitador completen tareas como si estuvieran utilizando la cuenta que están suplantando; por ejemplo, durante una ausencia o para compartir una carga excesiva a corto plazo.
Si una cuenta se hace pasar por otra, es muy difícil de ver. Los archivos de registro no contienen información sobre el hecho de que se ha producido una suplantación en los eventos. Por lo tanto, si el usuario B está suplantando al usuario A, todos los eventos parecerán como si fueran realizados personalmente por el usuario A.
Abra el Administración de usuarios diálogo.
Haga clic en Crear usuario.
A continuación, puede introducir las Propiedades:
Haga clic en Guardar (símbolo de visto verde).
El cuadro de diálogo se ampliará para que pueda:
A veces se puede observar una pérdida de rendimiento al registrar nuevos usuarios en instalaciones que tienen un número elevado de ambos:
Con la variable Administración de usuarios abra la vista de lista de todas las cuentas.
Navegue por la estructura de árbol.
Haga clic en la cuenta requerida para abrirla y editarla.
Realice un cambio y haga clic en Guardar (símbolo de marca de graduación verde) para esa entrada.
Haga clic en Cerrar para finalizar, o Lista… para volver a la lista de todas las cuentas de usuario.
Con la variable Administración de usuarios abra la vista de lista de todas las cuentas.
Navegue por la estructura de árbol.
Seleccione la cuenta requerida y haga clic en Eliminar usuario; la cuenta se eliminará inmediatamente.
Esto elimina el nodo de esta entidad de seguridad del repositorio.
Las entradas de acceso correctas no se eliminan. Esto garantiza la integridad histórica.
Puede definir Propiedades para cuentas nuevas o existentes:
Las propiedades existentes se pueden eliminar con el símbolo de papelera.
A excepción de la contraseña, las propiedades no se pueden editar, se deben eliminar y volver a crear.
La variable Contraseña es una propiedad especial que puede cambiarse haciendo clic en la variable Cambiar contraseña vínculo.
También puede cambiar la contraseña a su propia cuenta de usuario desde la Seguridad en el Explorador CRX.
Puede definir Suplantadores para cuentas nuevas o existentes:
Abra el Administración de usuarios para la cuenta adecuada.
Especifique la cuenta a la que se permitirá suplantar esa cuenta.
Puede utilizar Examinar… para seleccionar una cuenta existente.
Haga clic en Guardar (símbolo de visto verde) para la nueva propiedad.
Se utiliza un cuadro de diálogo estándar para Administración de grupos.
Debe iniciar sesión en el espacio de trabajo correspondiente y, a continuación, puede acceder al cuadro de diálogo desde:
Propiedades
GroupID
Nombre corto para la cuenta de grupo.
Nombre principal
Un nombre de texto completo para la cuenta de grupo.
Puede agregar nuevas propiedades definiendo un nombre, tipo y valor. Haga clic en Guardar (símbolo de visto verde) para cada nueva propiedad.
Miembros
Puede agregar usuarios u otros grupos como miembros de este grupo.
Pertenencia a grupos Esto muestra todos los grupos a los que pertenece la cuenta de grupo actual. La columna Heredado indica la pertenencia que se ha heredado como resultado de la pertenencia a otro grupo.
Al hacer clic en un GroupID se abrirá el cuadro de diálogo para ese grupo.
Miembros Enumera todas las cuentas (usuarios y/o grupos) que son miembros del grupo actual.
La variable Heredado indica la pertenencia que se ha heredado como resultado de la pertenencia a otro grupo.
Cuando la función Propietario, Editor o Visualizador se asigna a un usuario en cualquier carpeta de recursos, se crea un nuevo grupo. El nombre del grupo tiene el formato mac-default-<foldername>
para cada carpeta en la que se definen las funciones.
Abra el Administración de grupos diálogo.
Haga clic en Crear grupo.
A continuación, puede introducir las Propiedades:
Haga clic en Guardar (símbolo de visto verde).
El cuadro de diálogo se ampliará para que pueda:
Con la variable Administración de grupos abra la vista de lista de todas las cuentas.
Navegue por la estructura de árbol.
Haga clic en la cuenta requerida para abrirla y editarla.
Realice un cambio y haga clic en Guardar (símbolo de marca de graduación verde) para esa entrada.
Haga clic en Cerrar para finalizar, o Lista… para volver a la lista de todas las cuentas de grupo.
Con la variable Administración de grupos abra la vista de lista de todas las cuentas.
Navegue por la estructura de árbol.
Seleccione la cuenta requerida y haga clic en Quitar grupo; la cuenta se eliminará inmediatamente.
Esto elimina el nodo de esta entidad de seguridad del repositorio.
Las entradas de acceso correctas no se eliminan. Esto garantiza la integridad histórica.
Puede definir Propiedades para cuentas nuevas o existentes:
Las propiedades existentes se pueden eliminar con el símbolo de papelera.
Puede agregar miembros al grupo actual:
Abra el Administración de grupos para la cuenta adecuada.
O bien, haga lo siguiente:
Haga clic en Guardar (símbolo de visto verde) para la nueva propiedad.
O elimine un miembro existente con el símbolo de papelera.
Con la variable Control de acceso del CRXDE Lite puede definir las políticas de control de acceso y asignar los privilegios relacionados.
Por ejemplo, para Ruta actual seleccione el recurso necesario en el panel izquierdo, la ficha Control de acceso en el panel inferior derecho:
Las políticas se clasifican según:
Políticas de control de acceso aplicables
Estas políticas se pueden aplicar.
Son directivas disponibles para crear una directiva local. Una vez seleccionada y añadida una directiva aplicable, esta se convierte en una directiva local.
Políticas de control de acceso local
Son directivas de control de acceso que ha aplicado. A continuación, puede actualizarlos, ordenarlos o eliminarlos.
Una directiva local anulará cualquier directiva heredada del elemento principal.
Políticas de control de acceso efectivas
Estas son las políticas de control de acceso que están actualmente en vigor para cualquier solicitud de acceso. Muestran las políticas agregadas derivadas de las políticas locales y de cualquier heredada del elemento principal.
Las políticas se pueden seleccionar para:
Ruta actual
Como en el ejemplo anterior, seleccione un recurso dentro del repositorio. Se mostrarán las políticas para esta "ruta actual".
Repositorio
Selecciona el control de acceso a nivel de repositorio. Por ejemplo, al configurar la variable
jcr:namespaceManagement
, que solo es relevante para el repositorio, no para un nodo.
Principal
Una entidad de seguridad registrada en el repositorio.
Puede escribir en el Principal nombre o haga clic en el icono a la derecha del campo para abrir el Seleccionar Principal diálogo.
Esto le permite Buscar para un Usuario o Grupo. Seleccione la entidad de seguridad necesaria de la lista resultante y haga clic en OK para devolver el valor al cuadro de diálogo anterior.
Para simplificar la administración, le recomendamos que asigne derechos de acceso a cuentas de grupo, no a cuentas de usuario individuales.
Es más fácil administrar algunos grupos que muchas cuentas de usuario.
Los siguientes privilegios están disponibles para la selección al añadir una entrada de control de acceso (consulte la sección API de seguridad para obtener más información):
Nombre del privilegio | Que controla el privilegio a... |
---|---|
jcr:read |
Recupere un nodo y lea sus propiedades y sus valores. |
rep:write |
Este es un privilegio de agregado específico de jackrabbit de jcr:write y jcr:nodeTypeManagement. |
jcr:all |
Se trata de un privilegio agregado que contiene todos los demás privilegios predefinidos. |
Avanzado | |
crx:replicate |
Realizar la replicación de un nodo. |
jcr:addChildNodes |
Cree nodos secundarios de un nodo. |
jcr:lifecycleManagement |
Realizar operaciones de ciclo vital en un nodo. |
jcr:lockManagement |
Bloqueo y desbloqueo de un nodo; actualice un bloqueo. |
jcr:modifyAccessControl |
Modifique las directivas de control de acceso de un nodo. |
jcr:modifyProperties |
Cree, modifique y elimine las propiedades de un nodo. |
jcr:namespaceManagement |
Registre, quite el registro y modifique las definiciones de espacio de nombres. |
jcr:nodeTypeDefinitionManagement |
Importar definiciones de tipo de nodo al repositorio. |
jcr:nodeTypeManagement |
Agregue y elimine tipos de nodos mixtos y cambie el tipo de nodo principal de un nodo. Esto también incluye cualquier llamada a los métodos de importación de Node.addNode y XML donde se especifique explícitamente la mezcla o el tipo principal del nuevo nodo. |
jcr:readAccessControl |
Lea la directiva de control de acceso de un nodo. |
jcr:removeChildNodes |
Elimine los nodos secundarios de un nodo. |
jcr:removeNode |
Elimine un nodo. |
jcr:retentionManagement |
Realizar operaciones de administración de retención en un nodo. |
jcr:versionManagement |
Realizar operaciones de versiones en un nodo. |
jcr:workspaceManagement |
La creación y eliminación de espacios de trabajo a través de la API de JCR. |
jcr:write |
Se trata de un privilegio de agregado que contiene: - jcr:modifyProperties - jcr:addChildNodes - jcr:removeNode - jcr:removeChildNodes |
rep:privilegeManagement |
Registre un nuevo privilegio. |
También puede registrar nuevos privilegios:
En la barra de herramientas, seleccione Herramientas, luego Privilegios para mostrar los privilegios registrados actualmente.
Utilice la variable Privilegio de registro icono (+) para abrir el cuadro de diálogo y definir un nuevo privilegio:
Haga clic en OK para guardar. El privilegio ahora estará disponible para la selección.
Seleccione el recurso y abra el Control de acceso pestaña .
Para agregar una Políticas de control de acceso local, haga clic en + a la derecha de Política de control de acceso aplicable lista:
Aparece una nueva entrada en Directivas de control de acceso local:
Haga clic en el + para añadir una nueva entrada:
Actualmente se necesita una solución para especificar una cadena vacía.
Para ello, debe utilizar "".
Defina la directiva de control de acceso y haga clic en OK para guardar. La nueva directiva:
CRX validará su selección; para una entidad de seguridad determinada existe (como máximo) 1 denegación y 1 entrada de permiso en un nodo determinado. La implementación siempre borra las entradas redundantes y se asegura de que el mismo privilegio no aparezca en las entradas de permitir y denegar.
El orden de la lista indica el orden en que se aplican las políticas.
En la tabla de Políticas de control de acceso local seleccione la entrada requerida y arrástrela a la nueva posición de la tabla.
Los cambios se mostrarán en ambas tablas para la variable Local y Políticas de control de acceso efectivas.
En la tabla de Políticas de control de acceso local haga clic en el icono rojo (-) a la derecha de la entrada.
La entrada se eliminará de ambas tablas para la variable Local y Políticas de control de acceso efectivas.
En la barra de herramientas del CRXDE Lite, seleccione Herramientas, luego Probar control de acceso….
Se abre un nuevo cuadro de diálogo en el panel superior derecho. Seleccione el Ruta y/o Principal que desea probar.
Haga clic en Prueba para ver los resultados de la selección: