Función GetFileSecurityA (winbase.h)
La función GetFileSecurity obtiene información especificada sobre la seguridad de un archivo o directorio. La información obtenida está restringida por los derechos de acceso y los privilegios del autor de la llamada.
La función GetNamedSecurityInfo proporciona funcionalidad similar a GetFileSecurity para archivos, así como otros tipos de objetos.
Sintaxis
BOOL GetFileSecurityA(
[in] LPCSTR lpFileName,
[in] SECURITY_INFORMATION RequestedInformation,
[out, optional] PSECURITY_DESCRIPTOR pSecurityDescriptor,
[in] DWORD nLength,
[out] LPDWORD lpnLengthNeeded
);
Parámetros
[in] lpFileName
Puntero a una cadena terminada en null que especifica el archivo o directorio para el que se recupera la información de seguridad.
[in] RequestedInformation
Valor SECURITY_INFORMATION que identifica la información de seguridad que se solicita.
[out, optional] pSecurityDescriptor
Puntero a un búfer que recibe una copia del descriptor de seguridad del objeto especificado por el parámetro lpFileName . El proceso de llamada debe tener permiso para ver los aspectos especificados del estado de seguridad del objeto. La estructura de SECURITY_DESCRIPTOR se devuelve en formato de descriptor de seguridad auto-relativo .
[in] nLength
Especifica el tamaño, en bytes, del búfer al que apunta el parámetro pSecurityDescriptor .
[out] lpnLengthNeeded
Puntero a la variable que recibe el número de bytes necesarios para almacenar el descriptor de seguridad completo. Si el número devuelto de bytes es menor o igual que nLength, se devuelve todo el descriptor de seguridad en el búfer de salida; de lo contrario, no se devuelve ninguno del descriptor.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Para leer el propietario, el grupo o la DACL del descriptor de seguridad del archivo o directorio especificados, la DACL del archivo o directorio debe conceder READ_CONTROL acceso al autor de la llamada, o el autor de la llamada debe ser el propietario del archivo o directorio.
Para leer la SACL de un archivo o directorio, el privilegio SE_SECURITY_NAME debe estar habilitado para el proceso de llamada.
Requisitos
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 (incluya Windows.h) |
Library | Advapi32.lib |
Archivo DLL | Advapi32.dll |