Configuración de grupos dinámicos
Para utilizar grupos dinámicos, siga estos pasos:
cad126es
Para utilizar grupos dinámicos, siga estos pasos:
- Agregue miembros al grupo dinámico.A continuación, se pueden realizar una o ambas de las siguientes acciones:
- Crear un rol de aplicación.
- Configurar los roles de directorio dinámicos.
También se puede excluir a un miembro de un grupo dinámico.
Activación de los grupos dinámicos
Los roles dinámicos se basan en el atributo
dxMemberURL
de las clases de objeto siguientes:- dxDynamicGroupOfNames
- dxDynamicGroupOfUniqueNames
Se pueden agregar estos atributos a una clase de objeto
groupOfNames
o groupOfUniqueNames
respectivamente para que se pueda incluir dxMemberURL
.Nota:
Una creencia errónea común es que groupOfUniqueNames
se elige por encima de groupOfNames
para garantizar que los valores de los miembros sean únicos. Ambas clases de objeto, groupOfNames
y groupOfUniqueNames
, garantizan que los valores de los miembros sean únicos. Para groupOfUniqueNames
, el atributo uniqueMember
define una sintaxis diferente, nameAndOptionalUID
. Esta compatibilidad se incluye para facilitar a los clientes la actualización de una implementación de X.500 existente a CA Directory. En este escenario, pueden existir dos entradas en el árbol de información de directorios con el mismo nombre distintivo, pero estas entradas se diferencian la una de la otra por un identificador único. Para implementaciones LDAP puras en las que no se utiliza la parte UID de la sintaxis de nameAndOptionalUID
, se debe utilizar groupOfNames/member
, ya que realiza la misma función.Lleve a cabo los pasos siguientes:
- Detenga el agente de sistema de directorio.
- Agregue los siguientes comandos al agente de sistema de directorio:clear dynamic-group; set dynamic-group [tag] = { subtree = DN object-class = objectClass url-attr = attribute member-attr = attribute };Por ejemplo:clear dynamic-group; # to allow command to be reloaded on dxserver init set dynamic-group GROUP = { subtree = <c AU><o Democorp><ou Groups> objectclass = dxDynamicGroupOfNames url-attr = dxMemberURL member-attr = member };
- Inicie el agente de sistema de directorio.
- Asegúrese de que el árbol de información de directorios contiene un subárbol en el que se pueden almacenar las entradas de grupo.Nota:Mediante el parámetro [subtree = DN], también se puede especificar el subárbol del grupo dinámico para inspeccionar el atributo baseObject de cada solicitud recibida por el agente de sistema de directorio. Mediante el uso de este parámetro, se puede restringir la búsqueda a solo este subárbol. Este parámetro admite la búsqueda de pertenencias a grupos dinámicos y compara las solicitudes sin necesidad de utilizar el comandoset use-dynamic-roles = true;.Por ejemplo, los ejemplos utilizan el subárbol siguiente:ou=Groups,o=Democorp,c=AU
Creación de un grupo dinámico
Puesto que un grupo dinámico es una entrada de directorio, se puede crear un grupo sin necesidad de detener el agente de sistema de directorio.
Se debe crear un subárbol especial para las entradas de grupo. Este paso facilita la implementación de los controles de acceso y los roles más adelante.
Lleve a cabo los pasos siguientes:
- (Opcional) Si no existe un subárbol, cree un subárbol para las entradas de grupo.
- Cree una entrada en el subárbol de grupos con la información siguiente:
- Clase de objeto:groupOfNames,dxDynamicGroupOfNames
- Filtro de búsqueda LDAP: Incluya este filtro en el atributodxMemberURL.
Ejemplo: Creación de una entrada de grupo dinámico para
gestores
Cree un subárbol de grupo dinámico y una entrada de grupo dinámico para los usuarios con un rol de gestor.
dn: ou=Groups,o=Democorp,c=AUobjectClass: organizationalUnitdn: cn=Managers,ou=Groups,o=Democorp,c=AUobjectClass: groupOfNames # structural objectClass that contains memberobjectClass: dxDynamicGroupOfNames # auxiliary objectClass that contains dxMemberURLdxMemberURL: ldap://ou=Users,o=Democorp,c=AU??sub?(position=Manager)
Agregación de un miembro a un grupo dinámico
Para agregar un miembro a un grupo dinámico, se debe incluir información en la entrada del usuario para cumplir con los criterios del filtro para ese rol.
Ejemplo: Agregación del usuario
Craig Link
al grupo Gestores
Se ha creado un grupo dinámico que utiliza el filtro siguiente:
ldap://ou=Users,o=Democorp,c=AU??sub?(position=Manager)
Para asignar el grupo gestores a un usuario, realice los pasos siguientes:
- Agregue el atributopositiona la entrada de un usuario.
- Agregue el valorGestoresal atributo de posición.
La próxima vez que se evalúe el grupo
Gestores
, este usuario será miembro del grupo.dn: cn=Craig Link,ou=Users,o=Democorp,c=AUobjectClass: inetOrgPersonsurname: Linkposition: Manager
Exclusión de un miembro de un grupo dinámico
Se puede impedir manualmente que se rellene el atributo de miembro de un grupo dinámico. A veces, el atributo de miembro de un grupo dinámico se rellena con valores no deseados. Estos datos subyacentes provocan que la entrada coincida con la dirección URL de LDAP del grupo dinámico, la cual no se puede cambiar. Estos valores se pueden excluir manualmente mediante el atributo
dxExcludeMember
de grupos dinámicos.Ejemplo: Exclusión del usuario
Joe Bloggs
del grupo Administradores
Un usuario es un administrador fuera del directorio (título = Administrador). Este atributo también tiene roles de directorio para los que el usuario no debe tener privilegios de administrador.
Se dispone del grupo dinámico siguiente:
dn: cn=Administrators,ou=Groups,o=Democorp,c=AUobjectClass: groupOfNamesobjectClass: dxDynamicGroupOfNamesdxMemberURL: ldap:///ou=Users,o=Democorp,c=AU??sub?(title=Administrator)
El grupo tiene el siguiente usuario que cumple con el atributo
dxMemberURL
:dn: cn=Joe Bloggs,ou=Users,o=Democorp,c=AUobjectClass: inetOrgPersonsurname: Bloggstitle: Administrator
Se puede excluir el usuario del grupo dinámico, pero se puede conservar el valor del atributo de título realizando el siguiente cambio en el grupo dinámico:
dn: cn=administrators,ou=Groups,o=Democorp,c=AUobjectClass: groupOfNamesobjectClass: dxDynamicGroupOfNamesdxMemberURL: ldap:///ou=Users,o=Democorp,c=AU??sub?(title=Administrator)dxExcludeMember: cn=Joe Bloggs,ou=Users,o=Democorp,c=AU
La exclusión de un miembro de la pertenencia a un grupo dinámico repercute en las siguientes operaciones relacionadas con un grupo dinámico:
- Búsquedas de miembros:Si se excluye un miembro, al buscar en el subárbol del grupo dinámico con elfiltro que contiene "member=<nombre_distintivo>", no se devuelve ningún resultado.
- Búsquedas de roles:Si el miembro se ha excluido explícitamente, la carga de roles cuando un usuario se vincula a un agente de sistema de directorio se ve afectada. Ya no se cargan los roles de los que se ha excluido el miembro (se requiereset use-dynamic-roles = true;).
- Expansión del grupo dinámico:La devolución de un grupo dinámico mediante una búsqueda de solo objetos base que devuelve todos los atributos no incluye el miembro excluido en la lista de valores de atributos de miembro.
Notas:
- Existe una limitación cuando se devuelve un grupo dinámico mediante una búsqueda de solo objetos base. Si se especifica una lista de atributos de retorno, la lista debe contener al menos objectClass,dxMemberURLy tambiéndxExcludeMemberpara que el atributo de miembro se rellene correctamente.
- Si se utilizadxDynamicGroupOfUniqueNames, se debe configurar el grupo dinámico para que utilice el atributodxExcludeUniqueMember.
- Si se agrega un gran número de valores (> 100) adxExcludeMember, es posible que se deba volver a configurar la entrada del grupo dinámico. Esta función está diseñada para excepciones; las reglas quedan excluidas.
- En el caso de los grupos híbridos (contienen miembros estáticos y dinámicos), se excluye un miembro estático si se utiliza condxExcludeMember. Idealmente, se debería eliminar explícitamente el valor del miembro estático.
- En el caso de los grupos estáticos, no se utilizadxExcludeMember. Si el valor del miembro estático ya no es necesario, puede simplemente eliminarse.
Visualización de la configuración de un grupo dinámico
Para ver la configuración de un grupo dinámico en uso en un agente de sistema de directorio, utilice el siguiente comando desde la consola del agente de sistema de directorio:
get dynamic-groups;
Este comando genera una lista de los grupos dinámicos en uso.
Ejemplo: Salida del comando "get dynamic-groups"
************** GROUP ************** Group object class : dxDynamicGroupsOfNames Group Search URL : dxMemberURL Member to Append : member Member to Exclude : dxExcludeMember