Crear un archivo para importar usuarios o grupos en macOS Server
Puedes crear un archivo delimitado por caracteres mediante Workgroup Manager o utilizando dsexport
para exportar cuentas del directorio LDAP de un servidor maestro Open Directory. También puedes crear manualmente un archivo delimitado por caracteres usando un script o usando una app de base de datos u hoja de cálculo.
El primer registro del archivo, la descripción del registro, describe el formato de cada registro de cuenta del archivo. Existen tres opciones para la descripción del registro:
Escribir una descripción completa del registro
Usar el método abreviado
StandardUserRecord
Usar el método abreviado
StandardGroupRecord
Los demás registros del archivo describen cuentas de usuario o grupo, codificadas en el formato descrito por la descripción del registro. Las líneas de los archivos delimitados por caracteres que comienzan por # se ignoran durante la importación.
Escribir la descripción de un registro
La descripción del registro especifica los campos de cada registro del archivo delimitado por caracteres, los caracteres delimitadores y el carácter de escape que antecede a los caracteres especiales del registro.
Codifique la descripción del registro con los siguientes elementos en el orden especificado, separándolos con un espacio:
Indicador de fin de registro (en notación hexadecimal)
Carácter de escape (en notación hexadecimal)
Separador de campo (en notación hexadecimal)
Separador de valor (en notación hexadecimal)
Tipo de cuentas del archivo (
dsRecTypeStandard:Users
odsRecTypeStandard:Groups
)Número de atributos en cada registro de cuenta
Lista de atributos
Para cuentas de usuario, la lista de atributos debe incluir lo siguiente, aunque se puede omitir UID y PrimaryGroupID si especificas un UID inicial y un ID de grupo primario por omisión al importar el archivo:
RecordName (el nombre corto del usuario)
Contraseña
UniqueID (UID)
PrimaryGroupID
RealName (el nombre completo del usuario)
También puedes incluir:
UserShell (el shell por omisión)
NFSHomeDirectory (la ruta a la carpeta de inicio del usuario)
Otros tipos de datos del usuario, descritos en Open Directory Administration
Para cuentas de grupo, la lista de atributos deberá incluir:
RecordName (el nombre del grupo)
PrimaryGroupID (el ID del grupo)
GroupMembership
A continuación se indica un ejemplo de una descripción de registro:
0x0A 0x5C 0x3A 0x2C dsRecTypeStandard:Users 7
RecordName Password UniqueID PrimaryGroupID
RealName NFSHomeDirectory UserShell
A continuación se indica un ejemplo de un registro codificado con la descripción anterior:
anne:Adl47E$:408:20:A. Johnsons, M.D.:/Network/Servers/somemac/Homes/anne:/bin/csh
El registro consta de valores delimitados por dos puntos (:). Usa dos signos de dos puntos (::) para indicar que falta un valor.
Nota: El carácter de dos puntos (:) es el separador de campos. Si hay dos puntos en la descripción de un atributo, usa el carácter de escape de la barra inclinada inversa (\) para indicar que los dos puntos no deben tratarse como delimitador. Si el separador de campos no es el carácter de los dos puntos, no es necesario el carácter de escape.
Antes de importar cuentas de usuario, recuerda que debes establecer manualmente las contraseñas o establecer las contraseñas por omisión en un valor conocido. Después de importar los registros de usuario, puedes configurar una política de contraseñas que requiera que los usuarios cambien su contraseña cuando inicien sesión por primera vez.
Las contraseñas no se pueden exportar con Workgroup Manager ni con ningún otro método.
Usar el método abreviado StandardUserRecord
Si el primer registro de un archivo de importación delimitado por caracteres contiene StandardUserRecord
, se asume la siguiente descripción del registro:
0x0A 0x5C 0x3A 0x2C dsRecTypeStandard:Users 7
RecordName Password UniqueID PrimaryGroupID
RealName NFSHomeDirectory UserShell
Una cuenta de usuario de ejemplo tiene el siguiente aspecto:
anne:Adl47E$:408:20:A. Lo, M.D.:/Network/Servers/somemac/Homes/anne:/bin/csh
Usar el método abreviado StandardGroupRecord
Si el primer registro de un archivo de importación delimitado por caracteres contiene StandardGroupRecord
, se asume la siguiente descripción del registro:
0x0A 0x5C 0x3A 0x2C dsRecTypeStandard:Groups 4
RecordName Password PrimaryGroupID GroupMembership
A continuación se indica un ejemplo de un registro codificado con la descripción:
students:Ad147:88:johnson,miller,clark,chen,wong