Sunday, November 1, 2009

Permisos sobre recursos compartidos c...

Permisos sobre recursos compartidos con Active Directory


A un recurso, como p.e. una carpeta se puede acceder básicamente de formas: en local, iniciando sesión en la máquina, ó en remoto, accediendo desde un equipo diferente al que tiene el recurso. Las carpetas a las que damos acceso por red en un equipo reciben el nombre de carpetas compartidas.


En las carpetas compartidas rigen dos tipos de permisos:
  • Sharing permissions: que se asignan desde la pestaña de compartir
  • NTFS permissions: son los permisos aplicados sobre el sistema de ficheros.



Permisos de carpeta compartida(Sharing Permissions):

Sólo hay 3 estados:
  • "Read",
  • "Change",
  • "Full Control"
Regulan el acceso por red al recurso compartido (p.e. una carpeta). El acceso está supeditado a los permisos en disco (NTFS).
P.e. si al grupo "authenticated users"le damos "Full Control" sobre una carpeta compartida, esto no le garantiza el acceso a los ficheros/carpetas de la carpeta en cuestión. Para poder acceder a ellos tendrá además que tener los correspondientes permisos de disco.






En esta tabla podeis ver claramente cómo cómo para acceder en local basta con tener permisos de disco, mientras que para acceder por red debemos tener ambos: permisos de red y permisos ntfs.


NO ntfs, No red
NO ntfs, SÍ red
SÍ ntfs, NO red
SÍ ntfs, SÍ red
abre sesión en el equipo
-
-
x
x
accede por red
-
-
-
x

Una buena opción suele ser dar acceso de lectura a todo el mundo por red, y acceso total a todos los usuarios del dominio (Domain Users), o si tenemos más de un dominio a los "Authenticated Users".

Permisos NTFS

Tipos: son mucho más complejos, en el siguiente gráfico podeis ver lo que permite hacer cada uno de ellos.




(Click aquí para ver la imagen más grande)




Controlan el acceso a los bloques de disco de un fichero o carpeta.

Los permisos se heredan por defecto de las carpetas de nivel superior.
Para añadir permisos a un nuevo grupo en una carpeta basta con ir a propiedades-> seguridad -> añadir y en la ventana que aparece seleccionar al grupo/usuario deseado. Una vez hecho esto, ajustamos el tipo de permisos que debe tener. Las carpetas que cuelgan de ésta heredarán por defecto los permisos que acabamos de asignar.
Para restringir el acceso con respecto a la carpeta de nivel superior tendremos que romper la herencia: propiedades->seguridad->Avanzadas y en la nueva ventana que aparece quitamos el check: "Allow inheritable permissions from parent to propagate ..." Nos da entonces la opción de copiar los permisos que ya había o borrarlos todos. La opción más prudente y a continuación quitar los que no proceda. Luego podemos añadir aquellos que sí deben tener acceso.




Best Practices

Normalmente los usuarios se agrupan en grupos globales siguiendo algún criterio que tenga sentido en el marco de la organización en que nos encontremos. P.e. podemos tener un grupo global por cada sede, y a la vez un grupo global por departamento. Luego añadiremos a los usuarios a los grupos globales que les corresponda.

Cuando queremos dar permisos sobre un recurso (p.e. una carpeta compartida), creamos un grupo local cuyo nombre identifique claramente el recurso al que lo querremos aplicar. Lo normal es además añadir algún identificador específico a este tipo de grupos, como p.e. que empiecen siempre por "_". Luego añadiríamos los grupos "globales" a estos grupos "locales" para dar permisos a los usuarios que contienen. Si no queda más remedio, añadiremos usuarios a los grupos locales.

Pero NUNCA añadiremos usuarios a la lista de permisos de una carpeta. Siempre añadiremos grupos, añadiremos usuarios a esos grupos, y en la correspondiente lista de seguridad añadiremos estos grupos. Es más difícil entender leyéndolo, que practicándolo.

P.e. para dar permisos sobre una carpeta "C:\grupos\contabilidad" a los usuarios de contabilidad necesitaríamos:

Grupo global: "contabilidad" en el que incluiríamos a los usuarios de contabilidad
Grupo local: "_grupos-contabilidad", al que añadiríamos al anterior grupo global "contabilidad"

Llegados a este punto, poneros un contraejemplo en el que empeceis a dar permisos a los usuarios sobre las carpetas, y pasado un tiempo intentad averiguar a qué carpetas accede un usuario concreto. ¡Ya vereis qué follón!



No comments: