Función SetFileSecurityA (winbase.h)

La función SetFileSecurity establece la seguridad de un objeto de archivo o directorio.

Esta función está obsoleta. En su lugar, use la función SetNamedSecurityInfo .

Sintaxis

BOOL SetFileSecurityA(
  [in] LPCSTR               lpFileName,
  [in] SECURITY_INFORMATION SecurityInformation,
  [in] PSECURITY_DESCRIPTOR pSecurityDescriptor
);

Parámetros

[in] lpFileName

Puntero a una cadena terminada en null que especifica el archivo o directorio para el que se establece la seguridad. Tenga en cuenta que la seguridad aplicada a un directorio no se hereda por sus elementos secundarios.

[in] SecurityInformation

Especifica una estructura de SECURITY_INFORMATION que identifica el contenido del descriptor de seguridad al que apunta el parámetro pSecurityDescriptor .

[in] pSecurityDescriptor

Puntero a una estructura SECURITY_DESCRIPTOR .

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve un valor distinto de cero.

Si se produce un error en la función, devuelve cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

La función SetFileSecurity solo se realiza correctamente si se cumplen las condiciones siguientes:

  • Si se establece el propietario del objeto, el proceso de llamada debe tener WRITE_OWNER permiso o ser el propietario del objeto.
  • Si se establece la lista de control de acceso discrecional (DACL) del objeto, el proceso de llamada debe tener WRITE_DAC permiso o ser el propietario del objeto.
  • Si se establece la lista de control de acceso del sistema (SACL) del objeto, se debe habilitar el privilegio SE_SECURITY_NAME para el proceso de llamada.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winbase.h (incluye Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

GetFileSecurity

Access Control de bajo nivel

Funciones de Access Control de bajo nivel

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

SetKernelObjectSecurity

SetNamedSecurityInfo

SetPrivateObjectSecurity

SetUserObjectSecurity