Função ConvertStringSecurityDescriptorToSecurityDescriptorA (sddl.h)

A função ConvertStringSecurityDescriptorToSecurityDescriptor converte um descritor de segurança de formato de cadeia de caracteres em um descritor de segurança válido e funcional. Essa função recupera um descritor de segurança que a função ConvertSecurityDescriptorToStringSecurityDescriptor converteu em formato de cadeia de caracteres.

Sintaxe

BOOL ConvertStringSecurityDescriptorToSecurityDescriptorA(
  [in]  LPCSTR               StringSecurityDescriptor,
  [in]  DWORD                StringSDRevision,
  [out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
  [out] PULONG               SecurityDescriptorSize
);

Parâmetros

[in] StringSecurityDescriptor

Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o descritor de segurança de formato de cadeia de caracteres a ser convertido.

[in] StringSDRevision

Especifica o nível de revisão da cadeia de caracteres StringSecurityDescriptor . Atualmente, esse valor deve ser SDDL_REVISION_1.

[out] SecurityDescriptor

Um ponteiro para uma variável que recebe um ponteiro para o descritor de segurança convertido. O descritor de segurança retornado é auto-relativo. Para liberar o buffer retornado, chame a função LocalFree . Para converter o descritor de segurança em um descritor de segurança absoluto, use a função MakeAbsoluteSD .

[out] SecurityDescriptorSize

Um ponteiro para uma variável que recebe o tamanho, em bytes, do descritor de segurança convertido. Este parâmetro pode ser NULL.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. GetLastError pode retornar um dos seguintes códigos de erro.

Código de retorno Descrição
ERROR_INVALID_PARAMETER
Um parâmetro não é válido.
ERROR_UNKNOWN_REVISION
O nível de revisão do SDDL não é válido.
ERROR_NONE_MAPPED
Não foi possível encontrar um SID ( identificador de segurança ) na cadeia de caracteres do descritor de segurança de entrada em uma operação de pesquisa de conta.

Comentários

Se ace_type for ACCESS_ALLOWED_OBJECT_ACE_TYPE e nem object_guid nem inherit_object_guid tiver um GUID especificado, ConvertStringSecurityDescriptorToSecurityDescriptor converterá ace_type em ACCESS_ALLOWED_ACE_TYPE. Para obter informações sobre os campos ace_type, object_guid e inherit_object_guid , consulte Cadeias de caracteres ace.

Observação

O cabeçalho sddl.h define ConvertStringSecurityDescriptorToSecurityDescriptor como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [aplicativos da área de trabalho | aplicativos UWP]
Servidor mínimo com suporte Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho sddl.h
Biblioteca Advapi32.lib
DLL Advapi32.dll

Confira também

Visão geral do Controle de Acesso

Funções básicas de Controle de Acesso

ConvertSecurityDescriptorToStringSecurityDescriptor

ConvertSidToStringSid

ConvertStringSidToSid

MakeAbsoluteSD

SECURITY_DESCRIPTOR