Alterar a segurança de acesso em objetos protegíveis

Impressoras, serviços, chaves do registro, aplicativos DCOM e namespaces do WMI são objetos protegíveis. O acesso a objetos protegíveis é protegido por descritores de segurança, que especificam os usuários que têm acesso. A partir do Windows Vista, muitos objetos protegíveis têm métodos para obter ou definir o descritor de segurança. Com as permissões apropriadas, você pode ler ou alterar descritores de segurança em objetos protegíveis. Usando esses métodos, você pode controlar quais contas de usuário ou grupos têm acesso a uma impressora, serviço, namespace do WMI ou outro objeto. Para obter mais informações sobre descritores de segurança e seu uso no WMI, consulte Acesso a objetos protegíveis WMI.

As seções a seguir serão abordadas neste tópico:

Métodos de descritor de segurança e objetos

A lista a seguir contém os métodos que os objetos protegíveis têm para permitir que você leia ou altere o descritor de segurança:

Observação

Quando uma nova SACL (lista de controle de acesso de segurança) não é especificada em uma chamada para um método SetSecurityDescriptor, a SACL do descritor de segurança no objeto protegível de destino é definido como NULL para que a configuração anterior da SACL não persista.

 

Converter entre formatos de descritor de segurança

Os descritores de segurança são matrizes complexas de bytes binários que normalmente devem ser criadas e alteradas em C++. Depois de usar um dos métodos Get para obter o descritor de segurança, a classe Win32_SecurityDescriptorHelper fornece métodos que convertem descritores de segurança na SDDL (linguagem de definição de descritor de segurança) ou em instâncias de Win32_SecurityDescriptor.

Você pode manipular a ACL (lista de controle de acesso) com mais facilidade em instâncias de Win32_SecurityDescriptor ou na SDDL. Para obter mais informações sobre a estrutura e o uso de descritores de segurança no WMI, consulte Objetos descritores de segurança WMI.

Em C++ ou C#, use funções de conversão para converter descritores de segurança binários na SDDL (linguagem de definição de descritor de segurança). Para modificar valores de descritor de segurança em aplicativos C++, use ConvertSecurityDescriptorToStringSecurityDescriptor e ConvertStringSecurityDescriptorToSecurityDescriptor.

Problemas de segurança

É recomendável que as alterações nos descritores de segurança sejam feitas com muita cautela para que a segurança do objeto não seja comprometida. Lembre-se de que a ordem das ACEs (entradas de controle de acesso) em uma DACL (lista de controle de acesso discricionário) pode afetar a segurança de acesso. Para obter mais informações, consulte Ordem das ACEs em uma DACL.

Objetos de descritor de segurança do WMI

Classe auxiliar de descritor de segurança

Práticas Recomendadas de segurança

Manter a segurança do WMI

Controle de acesso

Acesso a namespaces do WMI