Uso el servidor de Windows 2003, y necesito obtener información sobre la carpeta de seguridad, usando programáticamente C#.Obtener lista de grupos-usuarios-permisos-permiso especial para una carpeta en Windows 2003, programáticamente
Quiero crear una herramienta para comprobar los permisos. Necesito conseguir los grupos, usuarios, permisos y permisos especiales para una carpeta,
C: \ Documents and Settings \ All los usuarios \ Data \ Microsoft \ Crypto \ RSA \ MachineKeys
edit:
El siguiente es un código de ejemplo para el método GetSecurityDescriptorSddlForm.
public static string GetObjectPermission(string fullFolderName)
{
FileSecurity fileSecure = File.GetAccessControl(fullFolderName);
StringBuilder acer = new StringBuilder();
fileSecure.GetSecurityDescriptorSddlForm(AccessControlSections.All);
foreach (FileSystemAccessRule ace in fileSecure.GetAccessRules(true, true, typeof(NTAccount)))
{
acer.Append(ace.FileSystemRights + ":" + ' ' + ace.IdentityReference.Value + "\n");
}
return acer.ToString();
}
Este código de ejemplo le mostrará qué NTAccount puede modificar o leer la carpeta, como esta función.
¿Cómo puedo obtener grupos y permisos especiales?
¿Algún código de muestra, sugerencias?
Cuando dice "Obtener permisos especiales" ¿quiere simplemente saber si los tienen, o lo que en realidad ¿son? – Gray
Quiero saber si realmente tienen los permisos. – Kiquenet
Ah, vale. Porque es fácil saber si marcarán las casillas en el Explorador de Windows para permisos especiales, ya que devuelve un número negativo. Pero es un poco más complicado asociar cada parte de ese número con los permisos. – Gray