materials

Permisos y derechos

Introducción

Para establecer las acciones que un usuario (o grupo) puede o no llevar a cabo en el sistema se definen permisos y derechos:

Si hay un conflicto entre un permiso y un derecho tendrá prioridad el derecho: por ejemplo los usuarios miembros del grupo de Operadores de copia de seguridad tienen derecho de hacer copia de seguridad de todos los archivos, incluso de los que no tienen permisos. Así mismo el Administrador tiene derecho de tomar posesión de cualquier archivo, incluyendo sobre los que no tiene ningún permiso.

En la unidad 4 del primer bloque vimos cómo gestionar los permisos NTFS, que son los que posee cualquier fichero y carpeta de un sistema de archivos NTFS. Pero al compartir carpetas en una red Windows utilizaremos además otro tipo de permisos: los SMB que se aplican a cualquier recurso al que se accede a través de la red. Por tanto trabajaremos con dos tipos de permisos diferentes:

Los permisos SMB sólo se establecen para recursos compartidos, por lo tanto a carpetas. Los permisos NTFS se establecen para carpetas y también para archivos individuales.

Permisos

Si un recurso tiene permisos SMB y NTFS se aplicará el más restrictivo (es decir que sólo podemos acceder o realizar cualquier acción sobre él si tenemos tanto permisos SMB como NTFS que nos los permitan).

Permisos NTFS

Para cada carpeta o fichero podemos establecer gran número de permisos NTFS que nos permiten detallar qué puede hacer un usuario en esa carpeta o fichero:

Permisos NTFS avanzados

Sin embargo normalmente no es necesario tanto detalle por lo que existen los llamados permisos estándar que son una agrupación de ellos para los casos más comunes. De ellos normalmente utilizaremos sólo 3 permisos estándar:

Permisos estándar

Sin embargo tenemos 6 permisos estándar que son, además de los 3 vistos:

Recordad que al aplicar un permiso sobre una carpeta este permiso se hereda a todos los ficheros y subcarpetas que contenga, ya que es la opción predeterminada a otorgar un permiso. Sin embargo podemos modificarlo en las ‘Opciones avanzadas’ para hacer que se aplique, por ejemplo, sólo a esta carpeta (con lo que no se heredaría). Las opciones que tenemos son:

Permiso se aplica a

Establecer permisos NTFS desde la terminal

El comando incluido en el sistema para establecer los permisos NTFS desde la línea de comandos es icacls (aunque tenemos muchas herramientas como xcalcs o subinacl que también permiten hacerlo pero tenemos que instalarlas puesto que no lo están por defecto).

Vamos a ver algunos ejemplos de cómo utilizarlo:

Como podemos ver si utilizamos un grupo creado por nosotros tenemos que poner antes el nombre del dominio pero no para grupos predeterminados. La letra para indicar los permisos estándar es F (Full, control total), W (Write, escribir) y R (Read, leer). Para modificar pondremos (R,W).

Propietarios de archivos y carpetas

A crear un archivo o carpeta se pone como propietario del mismo el usuario que lo crea. El Administrador y el propietario de un objeto pueden transferir su propiedad a otro usuario o grupo. Para hacerlo desde el menú contextual -> Propiedades -> pestaña Seguridad -> botón Opciones avanzadas:

Opciones avanzadas

Podemos ver el propietario actual y cambiarlo desde el botón Cambiar.

Permisos implícitos (heredados) y explícitos

Al crear una carpeta o archivo este hereda los permisos de la carpeta en la que se crea. Y también si cambiamos los permisos de una carpeta, estos cambios se propagan a todas las subcarpetas y archivos que contiene.

Estos permisos se llaman implícitos o heredados y son muy útiles porque evitan que sea necesario asignar los permisos a cada carpeta y archivo del equipo. Desde la ventana de opciones avanzadas se puede ver si un permiso es heredado o explícito:

Permisos heredados y explícitos

En este ejemplo el permiso del grupo ‘Administradores’ es heredado y el del grupo ‘Ventas’ es explícito. También se ve desde la pestaña de Seguridad que los heredados están deshabilitados:

Seguridad

El inconveniente que tienen es que los permisos heredados no podemos quitarlos a menos que deshabilitemos la herencia en la carpeta.

Deshabilitar la herencia

Si queremos modificar los permisos heredados de una carpeta debemos deshabilitar la herencia desde la ventana de ‘Opciones avanzadas’:

Deshabilitar la herencia

Al pulsar el botón de ‘Deshabilitar herencia’ nos pregunta qué hacer con los permisos heredados:

Si modifican los permisos de la carpeta padre, los nuevos permisos ya no se heredarán en esta carpeta.

Como hemos visto antes, cuando asignamos un nuevo permiso a una carpeta podemos hacer que no se herede en las carpetas y archivos que contiene si lo hacemos desde opciones avanzadas:

Se aplica a

Además de la opción predeterminada que es que el permiso se aplique a ‘Esta carpeta, subcarpetas y archivos’ podemos elegir otras opciones como que sólo se aplique a ‘Esta carpeta’ y así evitamos que lo hereden las subcarpetas y archivos que contiene.

Permisos al copiar o mover archivos y carpetas

Si copiamos un archivo o carpeta a otra ubicación se quitan sus permisos y heredará los permisos del lugar donde se copia.

Si se mueve un archivo o carpeta dentro del mismo volumen conserva sus permisos pero si es a otro volumen pasa igual que en la copia.

Reglas de aplicación de permisos

Permisos SMB

Al compartir un recurso en la red podemos definir los permisos para la utilización del recurso. Estos permisos varían en función del protocolo por el cual se comparte el recurso. Si el protocolo es NFS veremos los permisos que podemos asignar en el tema referente a los permisos en Linux. Normalmente el protocolo que usaremos es CIFS/SMB que es el que utiliza Windows de forma predeterminada en sus redes.

Para compartir una carpeta vamos a sus Propiedades y entramos en la pestanya Compartir:

Compartir

Desde el botón de Uso compartido avanzado podemos establecer los permisos SMB que son:

Cada permiso incluye el anterior (si un grupo tiene el permiso de Control total también tiene el de Cambiar y si un grupo tiene este también tiene el de Leer).

Uso compartido avanzado

Cuando establecemos los permisos tenemos la opción de Permitir o Denegar:

Permisos SMB

Siempre intentaremos no utilizar la opción de denegar, esta opción tiene prioridad sobre Permitir.

Si en lugar de entrar en Uso compartido avanzado compartimos la carpeta desde el botón de Compartir los permisos que podemos establecer son Lectura o Lectura y escritura. Si lo hacemos así se añadirán también esos permisos en NTFS automáticamente (lo cual no siempre es lo que queremos).

Hay que recordar que los permisos SMB sólo se aplican cuando el usuario accede a la carpeta compartida desde la red. Si accede localmente estos permisos no se tienen en cuenta.

Consideraciones sobre los permisos

Política recomendada de asignación de permisos

En el tema anterior ya explicamos que la manera de organizar los usuarios y grupos que recomienda Windows en un entorno con varios dominios es la llamada A G DL P (Accounts -cuentas de usuario-, Global, Domain Local, Permissions):

A G DL P

Por ejemplo, tenemos una carpeta a la que deben acceder sólo los administrativos para ver el contenido y los jefes y comerciales para modificarlo. Lo que debemos hacer es:

  1. Creamos los grupos globales para los tipos de usuarios que tenemos: ggAdministrativos, ggJefes y ggComerciales
  2. Añadimos los usuarios a esos gg
  3. Creadmos los grupos de dominio local con los diferentes roles que tendrán lo usuarios en esa carpeta: gdlAcceder y gldModificar
  4. Añadimos al gdlAcceder el grupo ggAdministrativos y al _gldModificar los grupos ggJefes_ y ggComerciales

Si no lo tenemos claro conviene recordar lo que vimos en el tema anterior a este respecto.