Compartilhar via


Função ConvertSecurityDescriptorToStringSecurityDescriptorA (sddl.h)

A função ConvertSecurityDescriptorToStringSecurityDescriptor converte um descritor de segurança em um formato de cadeia de caracteres. Você pode usar o formato de cadeia de caracteres para armazenar ou transmitir o descritor de segurança.

Para converter o descritor de segurança em formato de cadeia de caracteres de volta em um descritor de segurança funcional válido, chame a função ConvertStringSecurityDescriptorToSecurityDescriptor.

Sintaxe

BOOL ConvertSecurityDescriptorToStringSecurityDescriptorA(
  [in]  PSECURITY_DESCRIPTOR SecurityDescriptor,
  [in]  DWORD                RequestedStringSDRevision,
  [in]  SECURITY_INFORMATION SecurityInformation,
  [out] LPSTR                *StringSecurityDescriptor,
  [out] PULONG               StringSecurityDescriptorLen
);

Parâmetros

[in] SecurityDescriptor

Um ponteiro para o descritor de segurança a ser convertido. O descritor de segurança pode estar em formato absoluto ou auto-relativo.

[in] RequestedStringSDRevision

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

[in] SecurityInformation

Especifica uma combinação dos sinalizadores de bits SECURITY_INFORMATION para indicar os componentes do descritor de segurança a serem incluídos na cadeia de caracteres de saída.

O sinalizador BACKUP_SECURITY_INFORMATION não é aplicável a essa função. Se o sinalizador de BACKUP_SECURITY_INFORMATION for passado, o parâmetro SecurityInformation retornará TRUE com saída de cadeia de caracteres de nula.

[out] StringSecurityDescriptor

Um ponteiro para uma variável que recebe um ponteiro para um cadeia de caracteres de descritor de segurançaterminada. Para obter uma descrição do formato de cadeia de caracteres, consulte Formato de cadeia de caracteres do descritor de segurança. Para liberar o buffer retornado, chame a função LocalFree.

[out] StringSecurityDescriptorLen

Um ponteiro para uma variável que recebe o tamanho, em TCHARs, da cadeia de caracteres do descritor de segurança retornada no buffer StringSecurityDescriptor. Esse parâmetro pode ser NULL se você não precisar recuperar o tamanho. O tamanho representa o tamanho do buffer em WCHARs, não o número de WCHAR na cadeia de caracteres.

Valor de retorno

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

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. A função 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 não é válido.
ERROR_NONE_MAPPED
Não foi possível encontrar um SID ( identificador de segurança) no descritor de segurança de entrada em uma operação de pesquisa de conta.
ERROR_INVALID_ACL
A LISTA de controle de acesso (ACL) não é válida. Esse erro será retornado se o sinalizador de SE_DACL_PRESENT estiver definido no descritor de segurança de entrada e o DACL estiver NULL.

Observações

Se a DACL estiver NULL e o bit de controle SE_DACL_PRESENT for definido no descritor de segurança de entrada, a função falhará.

Se a DACL estiver NULL e o bit de controle SE_DACL_PRESENT não estiver definido no descritor de segurança de entrada, a cadeia de caracteres do descritor de segurança resultante não terá um componente D: . Para obter mais informações, consulte de formato de cadeia de caracteres do descritor de segurança.

Nota

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

Requisitos

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

Consulte também

Visão geral do controle de acesso

funções básicas de controle de acesso

ConvertSidToStringSid

ConvertStringSecurityDescriptorToSecurityDescriptor

ConvertStringSidToSid

SECURITY_DESCRIPTOR

SECURITY_INFORMATION