Función NetLocalGroupAdd (lmaccess.h)

La función NetLocalGroupAdd crea un grupo local en la base de datos de seguridad, que es la base de datos del administrador de cuentas de seguridad (SAM) o, en el caso de los controladores de dominio, Active Directory.

Sintaxis

NET_API_STATUS NET_API_FUNCTION NetLocalGroupAdd(
  [in]  LPCWSTR servername,
  [in]  DWORD   level,
  [in]  LPBYTE  buf,
  [out] LPDWORD parm_err
);

Parámetros

[in] servername

Puntero a una cadena que especifica el nombre DNS o NetBIOS del servidor remoto en el que se va a ejecutar la función. Si este parámetro es NULL, se usa el equipo local.

[in] level

Nivel de información de los datos. Este parámetro puede ser uno de los valores siguientes.

Valor Significado
0
Un nombre de grupo local. El parámetro buf apunta a una estructura LOCALGROUP_INFO_0 .
1
Un nombre de grupo local y un comentario que se va a asociar al grupo. El parámetro buf apunta a una estructura LOCALGROUP_INFO_1 .

[in] buf

Puntero a un búfer que contiene la estructura de información del grupo local. El formato de estos datos depende del valor del parámetro level . Para obtener más información, consulte Búferes de funciones de administración de red.

[out] parm_err

Puntero a un valor que recibe el índice del primer miembro de la estructura de información del grupo local para provocar el error ERROR_INVALID_PARAMETER. Si este parámetro es NULL, el índice no se devuelve en caso de error. Para obtener más información, vea la sección Comentarios del tema NetLocalGroupSetInfo .

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es NERR_Success.

Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes códigos de error.

Código devuelto Descripción
ERROR_ACCESS_DENIED
El autor de la llamada no tiene el acceso adecuado para completar la operación.
ERROR_ALIAS_EXISTS
El grupo local especificado ya existe. Este error se devuelve si el miembro de nombre del grupo de la estructura a la que apunta el parámetro buf ya está en uso como alias.
ERROR_INVALID_LEVEL
Un parámetro de nivel no es válido.
ERROR_INVALID_PARAMETER
Un parámetro es incorrecto. Este error se devuelve si uno o varios de los miembros de la estructura a los que apunta el parámetro buf no son válidos.
NERR_GroupExists
El nombre del grupo existe. Este error se devuelve si el miembro de nombre del grupo de la estructura a la que apunta el parámetro buf ya está en uso como nombre de grupo.
NERR_InvalidComputer
El nombre de equipo no es válido.
NERR_NotPrimary
La operación solo se permite en el controlador de dominio principal del dominio.
NERR_UserExists
El nombre de usuario existe. Este error se devuelve si el miembro de nombre del grupo de la estructura a la que apunta el parámetro buf ya está en uso como nombre de usuario.

Comentarios

Si llama a esta función en un controlador de dominio que ejecuta Active Directory, se permite o se deniega el acceso en función de la lista de control de acceso (ACL) para el objeto protegible. La ACL predeterminada solo permite que los administradores de dominio y los operadores de cuenta llamen a esta función. En un servidor miembro o estación de trabajo, solo los administradores y los usuarios avanzados pueden llamar a esta función. Para obtener más información, consulte Requisitos de seguridad para las funciones de administración de red. Para obtener más información sobre las ACL, los ACL y los tokens de acceso, consulte Access Control Modelo.

El descriptor de seguridad del contenedor de usuarios se usa para realizar la comprobación de acceso de esta función. El autor de la llamada debe ser capaz de crear objetos secundarios de la clase de grupo.

Los nombres de cuenta de usuario están limitados a 20 caracteres y los nombres de grupo están limitados a 256 caracteres. Además, los nombres de cuenta no se pueden terminar por un punto y no pueden incluir comas ni ninguno de los siguientes caracteres imprimibles: ", /, , [, ], :, |, <, , >+, =, ;, ?, *. Los nombres tampoco pueden incluir caracteres en el intervalo 1-31, que no son imprimibles.

Si la función NetLocalGroupAdd devuelve ERROR_INVALID_PARAMETER y no se pasó un puntero NULL en parm_err parámetro, al devolver el parámetro parm_err indica el primer miembro de la estructura de información del grupo local que no es válida. El formato de la estructura de información del grupo local se especifica en el parámetro level . Se pasa un puntero a la estructura de información del grupo local en el parámetro buf . En la tabla siguiente se enumeran los valores que se pueden devolver en el parámetro parm_err y el miembro de estructura correspondiente que se encuentra en error.

Valor Miembro
LOCALGROUP_NAME_PARMNUM Si el parámetro level era 0, el lgrpi0_name miembro de la estructura LOCALGROUP_INFO_0 no era válido.

Si el parámetro level era 1, el lgrpi1_name miembro de la estructura LOCALGROUP_INFO_1 no era válido.

LOCALGROUP_COMMENT_PARMNUM Si el parámetro level era 1, el lgrpi1_comment miembro de la estructura LOCALGROUP_INFO_1 no era válido.
 

Al realizar solicitudes a un controlador de dominio y Active Directory, es posible que pueda llamar a determinados métodos de interfaz de servicio de Active Directory (ADSI) para lograr los mismos resultados que las funciones del grupo local de administración de red. Para obtener más información, consulte IADsGroup.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado lmaccess.h (include Lm.h)
Library Netapi32.lib
Archivo DLL Netapi32.dll

Consulte también

LOCALGROUP_INFO_0

LOCALGROUP_INFO_1

Funciones de grupo local

NetLocalGroupAddMembers

NetLocalGroupDel

NetLocalGroupSetInfo

Funciones de administración de redes

Introducción a la administración de redes

Búferes de funciones de administración de red