El permiso para el grupo Usuarios se modificó correctamente mediante código, pero el cambio no se refleja en la pestaña Seguridad del grupo Usuarios.

El permiso para el grupo Usuarios se modificó correctamente mediante código, pero el cambio no se refleja en la pestaña Seguridad del grupo Usuarios.

Tengo código C# (al final) que:

  1. Crea un archivo
  2. Imprime la ACL actual
  3. Otorga al grupo de usuarios integrado "permisos de escritura" para el archivo creado previamente
  4. Imprime la ACL modificada actual.

Los permisos de escritura se asignan correctamente mediante código, como puede ver en la salida de la consola.

ingrese la descripción de la imagen aquí

Mi pregunta es:¿Por qué la pestaña de seguridad del archivo no refleja este cambio de permiso para el grupo Usuarios?

ingrese la descripción de la imagen aquí

Código C#:

var file = "sectest.txt";
File.WriteAllText(file, "File security test.");
var sid = new SecurityIdentifier(WellKnownSidType.BuiltinUsersSid, null);

string strBuiltInUsersAccount = sid.Translate(typeof(NTAccount)).ToString();
  
FileSecurity fileSecurity = new FileSecurity(file,
AccessControlSections.Owner |
AccessControlSections.Group |
AccessControlSections.Access);

Console.WriteLine("AFTER CREATE:");

ShowSecurity(fileSecurity); // BUILTIN\Users group doesn't have Write permission

// short: give "builtin\users" write permissions
var fsAccessRule = new FileSystemAccessRule(strBuiltInUsersAccount,
                                            FileSystemRights.Write,
                                            AccessControlType.Allow);

fileSecurity.ModifyAccessRule(AccessControlModification.Add, fsAccessRule, out bool modified);

Console.WriteLine();

Console.WriteLine("AFTER MODIFY:");
ShowSecurity(fileSecurity); // BUILTIN\Users has Write permission

Respuesta1

Eso sólo modifica la regla de acceso único en la ACE. Luego sería necesario conservarlo en el archivo. Consulte File.SetAccessControl(filePath, fileSecurity)

https://learn.microsoft.com/en-us/dotnet/api/system.security.accesscontrol.filesecurity?view=net-7.0

información relacionada