Função NetGroupSetInfo (lmaccess.h)
A função NetGroupSetInfo define os parâmetros de um grupo global no banco de dados de segurança, que é o banco de dados SAM (gerenciador de contas de segurança) ou, no caso de controladores de domínio, o Active Directory.
Sintaxe
NET_API_STATUS NET_API_FUNCTION NetGroupSetInfo(
[in] LPCWSTR servername,
[in] LPCWSTR groupname,
[in] DWORD level,
[in] LPBYTE buf,
[out] LPDWORD parm_err
);
Parâmetros
[in] servername
Ponteiro para uma cadeia de caracteres constante que especifica o nome DNS ou NetBIOS do servidor remoto no qual a função deve ser executada. Se esse parâmetro for NULL, o computador local será usado.
[in] groupname
Ponteiro para uma cadeia de caracteres constante que especifica o nome do grupo global para o qual definir informações. Para obter mais informações, consulte a seção Comentários a seguir.
[in] level
Especifica o nível de informações dos dados. Esse parâmetro pode usar um dos valores a seguir.
Valor | Significado |
---|---|
|
Especifica um nome de grupo global. O parâmetro buf aponta para uma estrutura GROUP_INFO_0 . |
|
Especifica um nome de grupo global e um comentário. O parâmetro buf aponta para uma estrutura de GROUP_INFO_1 . |
|
Especifica informações detalhadas sobre o grupo global. O parâmetro buf aponta para uma estrutura GROUP_INFO_2 . Observe que, no Windows XP e posterior, é recomendável que você use GROUP_INFO_3 em vez disso. |
|
Especifica informações detalhadas sobre o grupo global. O parâmetro buf aponta para uma estrutura GROUP_INFO_3 .
Windows 2000: Não há suporte para esse nível. |
|
Especifica um comentário somente sobre o grupo global. O parâmetro buf aponta para uma estrutura GROUP_INFO_1002 . |
|
Especifica atributos de grupo global. O parâmetro buf aponta para uma estrutura de GROUP_INFO_1005 . |
Para obter mais informações, consulte a seção Comentários a seguir.
[in] buf
Ponteiro para um buffer que contém os dados. O formato desses dados depende do valor do parâmetro level . Para obter mais informações, consulte Buffers de função de gerenciamento de rede.
[out] parm_err
Ponteiro para um valor que recebe o índice do primeiro membro da estrutura de informações do grupo com erro após um ERROR_INVALID_PARAMETER código de erro. Se esse parâmetro for NULL, o índice não será retornado com erro. Para obter mais informações, consulte a seção Comentários a seguir.
Retornar valor
Se a função for bem-sucedida, o valor retornado será NERR_Success.
Se a função falhar, o valor retornado poderá ser um dos códigos de erro a seguir.
Código de retorno | Descrição |
---|---|
|
O usuário não tem acesso às informações solicitadas. |
|
Um dos parâmetros de função é inválido. Para obter mais informações, consulte a seção Comentários a seguir. |
|
O nome do computador é inválido. |
|
A operação é permitida somente no controlador de domínio primário do domínio. |
|
Não foi possível encontrar o nome do grupo global. |
|
A operação não é permitida em determinados grupos especiais. Esses grupos incluem grupos de usuários, grupos de administradores, grupos locais e grupos de convidados. |
Comentários
Se você estiver programando para o Active Directory, poderá chamar determinados métodos ADSI (Active Directory Service Interface) para obter a mesma funcionalidade que você pode obter chamando as funções do grupo de gerenciamento de rede. Para obter mais informações, consulte IADsGroup.
Se você chamar essa função em um controlador de domínio que está executando o Active Directory, o acesso será permitido ou negado com base na ACL (lista de controle de acesso) do objeto protegível. A ACL padrão permite que somente administradores de domínio e operadores de conta chamem essa função. Em um servidor membro ou estação de trabalho, somente administradores e usuários avançados podem chamar essa função. Para obter mais informações, consulte Requisitos de segurança para as funções de gerenciamento de rede. Para obter mais informações sobre ACLs, ACEs e tokens de acesso, consulte Controle de Acesso Model.
O descritor de segurança do objeto Group é usado para executar a marcar de acesso para essa função. Normalmente, os chamadores devem ter acesso de gravação ao objeto inteiro para que as chamadas a essa função tenham êxito.
A maneira correta de definir o novo nome de um grupo global é chamar a função NetGroupSetInfo , usando uma estrutura GROUP_INFO_0 . Especifique o novo valor no membro grpi0_name . Se você usar uma estrutura GROUP_INFO_1 e especificar o valor no membro grpi1_name , o novo valor de nome será ignorado.
Se a função NetGroupSetInfo retornar ERROR_INVALID_PARAMETER, você poderá usar o parâmetro parm_err para indicar o primeiro membro da estrutura de informações do grupo inválido. (Uma estrutura de informações de grupo começa com GROUP_INFO_ e seu formato é especificado pelo parâmetro level .) A tabela a seguir lista os valores que podem ser retornados no parâmetro parm_err e o membro da estrutura correspondente que está com erro. (O prefixo grpi*_ indica que o membro pode começar com vários prefixos, por exemplo, grpi1_ ou grpi2_.)
Valor | Membro |
---|---|
GROUP_NAME_PARMNUM | grpi*_name |
GROUP_COMMENT_PARMNUM | grpi*_comment |
GROUP_ATTRIBUTES_PARMNUM | grpi*_attributes |
Os nomes de conta de usuário são limitados a 20 caracteres e os nomes de grupo são limitados a 256 caracteres. Além disso, os nomes de conta não podem ser encerrados por um período e não podem incluir vírgulas ou qualquer um dos seguintes caracteres imprimíveis: ", /, , [, ], :, |, <, >, +, =, ;, ?, *. Os nomes também não podem incluir caracteres no intervalo de 1 a 31, que são não imprimíveis.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | lmaccess.h (inclua Lm.h) |
Biblioteca | Netapi32.lib |
DLL | Netapi32.dll |