UNIDAD
III. MECANISMOS DE PROTECCION
3.1 Introducción
La
protección de podría definir como el conjunto de mecanismos específicos del
sistema operativo que contienen como finalidad el proporcionar seguridad.
Todo
Sistema Operativo debe tener implementado un módulo dedicado a la protección.
Se implementa mediante el uso de funciones especialmente diseñadas para eso que
conforman el nivel 5 en la teoría de los Sistemas Operativos en Estratos o
Capas.
Un
sistema de cómputo contiene muchos objetos que necesitan protegerse. Estos
objetos pueden ser elementos de hardware, como unidades centrales de
procesamiento, segmentos de la memoria, terminales, unidades de disco o
impresoras o bien pueden ser elementos de software, como procesos, archivos,
bases de datos o semáforos. Figura # 1.

Figura # 1.
Objetos a proteger.
Funciones
de un sistema de protección.
Dado que los sistemas de cómputo se han venido
haciendo cada vez más sofisticados en sus aplicaciones, la necesidad de
proteger su integridad, también ha crecido. Los aspectos principales de
protección en un Sistema Operativo son:
Protección
de los procesos del sistema contra los procesos de usuario.
Protección
de los procesos de usuario contra los de otros procesos de usuario.
Protección
de Memoria.
Protección
de los dispositivos.
Protección
= Control de empleo de la información + Recursos
FUNCIONES:
Las
funciones de un sistema de protección son asegurar la independencia entre
objetos que lógicamente son independientes y la de asegurar el control de
acceso a la información y puede ser control asociado al tipo de información o
puede ser el control asociado al usuario que solicita el acceso.
Todos
los mecanismos dirigidos a asegurar el sistema informático, siendo el propio
sistema el que controla dichos mecanismos,
se engloban en lo que podemos denominar seguridad interna.
·
Seguridad del procesador
Los
mecanismos de protección de procesador son:
·
Estados
protegidos (kernel) o no protegidos (usuarios).
·
Reloj
hardware para evitar el bloqueo del procesador.
·
Seguridad de la memoria
Se
trata de mecanismos para evitar que un usuario acceda la información. Entre
ellos citaremos dos:
·
Registros
límites o frontera.
·
Estado
protegido y no protegido del procesador.
Además
se emplean para la memoria métodos como el de utilizar un bit de paridad o el
checksum.
·
Bit de paridad. Consiste en añadir un bit a cada octeto o
palabra que se transmita para con él conseguir que la suma de unos sea par
(paridad par) o impar (paridad impar). Con este método se detectan errores al variar
un bit o un número impar de ellos sin que se detecten variaciones de un número
par de bits.
·
Si
se prevé que los daños esperados en una transmisión no sean de un bit en un
octeto o palabra, sino en una secuencia de ellos, se puede utilizar un algoritmo
que permita realizar una suma denominada suma de chequeo (checksum) y
aplicar el método denominado de redundancia cíclica durante la transmisión, de
tal forma que al terminar éste se repite con el destino el mismo algoritmo de
suma, comprobándose si el valor final de la suma es el mismo.
·
Seguridad de los archivos
La
finalidad principal de las computadoras es el del tratamiento de la información
que se almacena permanentemente en los archivos. La pérdida o alteración no
deseada de la información causa trastornos irreparables en algunos casos. Por
eso es necesario tomar medidas de seguridad que se deben enfocar desde dos
aspectos diferentes: La disponibilidad y la privacidad de los archivos.
1) Disponibilidad de los archivos
Un archivo debe tener la
información prevista y estar disponible en el momento que un usuario la
necesite. Se debe de tener presente la necesidad de asegurar las circunstancias
y se deben realizar las siguientes acciones:
.Copias
de seguridad (Backup). Consiste en que cada
cierto tiempo (hora, día, semana ...) se realice una copia del contenido de los
archivos, de forma que si se destruyen éstos, es posible la recuperación de los
datos a partir de la última de las copias. La operación de realizar las copias
y la recuperación a partir de las mismas, se realizan por medio de programas de
utilidad del sistema operativo.
.Archivos
log.
Se usan en sistemas de tiempo compartido, con muchos usuarios trabajando
simultáneamente, en estos sistemas se recurre a archivos auxiliares donde se
registran todas las operaciones que realiza un usuario sobre sus archivos,
almacenándose la nueva información o aquella que difiere de la ya existente.
Estos archivos reciben el
nombre de archivos log y son
tratados por utilidades del sistema operativo conjuntamente con las copias de
seguridad para los procesos de recuperación. Esta segunda técnica permite
asegurar la consistencia del contenido de los archivos ante caídas inesperadas
del sistema, evitando que una información se quede a medias de escribir.
Para
solucionar problemas de consistencia, algunos sistemas no dan la operación de
escritura por realizada hasta que no se refleja en el log, y esto se hace una vez confirmada la escritura en el disco. Al
volver a arrancar, el sistema inspecciona el log buscando operaciones iniciadas y no acabadas, finalizándolas
antes de permitir de nuevo el trabajo de los usuarios.
2)
Privacidad de los archivos
Los
archivos se deben proteger de posibles accesos no deseados, el sistema de
protección debe permitir acceso de forma controlada, según reglas definidas y
con las siguiente autorización:
* Cada
usuario, al comenzar la sesión en un sistema tras su identificación, tiene
asignado por el sistema de protección un dominio compuesto de una serie de
recursos y de operaciones permitidas, por ejemplo, una serie de archivos a los
que acceden, no teniendo permitido el acceso al resto de archivos.
En
general, los sistemas operativos almacenan la información relativa a los
dominios en los que se denomina matriz de dominios, cuyas filas indican los
dominios existentes y las columnas los recursos. Cada elemento de la matriz
indica el derecho a utilizar el recurso correspondiente en el dominio. Figura
# 2.
|
|
A1 |
A2 |
A3 |
A4 |
A5 |
A6 |
I |
S |
|
D1 |
E |
L |
|
|
|
|
|
|
|
D2 |
|
|
L |
L,E |
|
E |
E |
|
|
D3 |
|
|
|
|
L |
|
E |
L |
3.3
LIMITACIONES
Los tipos de amenazas a la
seguridad de un sistema informático los podemos caracterizar teniendo en cuenta
como esta información es suministrada por el sistema. En general, hay un flujo
de información de una fuente a un destino:

Figura #.3
Flujo normal.
Teniendo esto en cuenta, podemos señalar
cuatro categorías de amenazas:
Interrupción: Un elemento del sistema es destruido o se
hace inservible. Es una amenaza a la disponibilidad. Ejemplos son la
destrucción de algún elemento hardware (discos, líneas de comunicación, etc.) y
la desactivación del sistema de gestión de ficheros.

Figura #. 4 Interrupción.
*
Intercepción:
Una parte no autorizada obtiene acceso a un elemento relacionado con la
seguridad. Es una amenaza a la privacidad. La parte no autorizada puede
ser una persona, un programa o un computador. Ejemplos son la copia ilícita de
programas y la visualización de ficheros que han de permanecer ocultos.

Figura
#. 5 Intercepción.
*
Modificación:
Una parte no autorizada no sólo obtiene acceso sino que puede modificar un
elemento relacionado con la seguridad. Es una amenaza a la integridad.
Ejemplos son la alteración del contenido de un fichero y modificar un programa
para que funcione de forma diferente.

Figura #. 6 Modificación.
*
Fabricación: Una parte
no autorizada inserta nuevos elementos en el sistema. Es una amenaza a la integridad.
Ejemplos son adición de registros a un fichero y la inclusión de mensajes
espúreos en una red.
La mayoría de los métodos
de autenticación se basan en identificar algo que el usuario tiene o conoce. El
mecanismo más común de autenticación consiste en que todo usuario ha de
introducir una , que es solicitada por el programa de conexión cuando el
usuario introduce su nombre. El inconveniente de este método es que las
contraseñas pueden ser fácilmente averiguables si el usuario utiliza su nombre,
dirección, o similar como contraseña. Otra forma de averiguar una contraseña
consiste en probar todas las combinaciones de letras, números y símbolos de
puntuación hasta adivinar la contraseña.
Existen variantes como que
el sistema le añada a cada contraseña un número aleatorio, o asignarle a cada
usuario un libro con una secuencia de contraseñas, de forma que cada vez que se
conecta tiene que introducir la palabra de paso siguiente.
Otros tipos de mecanismos
de autenticación se pueden basar en objetos que únicamente cada
usuario puede tener, como tarjetas con banda
magnética, al estilo de los cajeros automáticos. Otra posibilidad es medir o
comprobar ciertas características que están indisolublemente unidas a cada persona,
como la voz, escritura, huellas dactilares, etc.
En instalaciones en las que
la seguridad es prioritaria, estas medidas se pueden complementar con
restricciones de acceso a la habitación en la que se encuentran los terminales,
asignar a cada usuario un terminal concreto, establecer un horario concreto de
trabajo, etc.
3.3.1 Amenazas de Origen Software
Uno de las los tipos más
sofisticados de amenazas tienen su origen en programas que explotan las
debilidades de los sistemas. Estos programas se dividen en dos grupos: aquellos
que necesitan un programa anfitrión y aquellos que son independientes. Los
primeros son trozos de programas que no pueden existir de forma autónoma,
mientras que los segundos son programas completos que pueden ser planificados y
ejecutados por el sistema operativo.
También hay que distinguir
entre aquellos programas que no se replican y los que lo hacen. Estos últimos
son programas o trozos de programas que cuando se ejecutan pueden generar una o
más copias de ellos mismos, que serán posteriormente activadas en la
computadora.
Podemos distinguir seis
tipos de amenazas de origen software:
· Bomba Lógica: Es un código
incrustado en un programa que comprueba si ciertas condiciones se cumplen, en
cuyo caso ejecuta alguna acción no autorizada. Estas condiciones pueden ser la
existencia de ciertos ficheros, una fecha particular, la ejecución de una
aplicación concreta, etc. Una vez que la bomba explota, puede alterar o
eliminar datos, parar el sistema, etc. Un ejemplo de uso de bomba lógica es el
caso de un programador que vende un programa a una empresa. Si transcurrido un
cierto tiempo la empresa no ha pagado, el programador revela la existencia de
la bomba lógica con el fin de obtener su dinero.
· Puerta Falsa (Trapdoor): Es
un punto de entrada secreto en un programa, de forma que alguien que conozca la
existencia de dicha puerta puede obtener permisos de acceso sin tener que pasar
por los mecanismos normales de autentificación. La puerta falsa es un código
que reconoce alguna secuencia de entrada especial o se dispara si es ejecutado
por cierto usuario o por la ocurrencia de una secuencia determinada de sucesos.
· Caballo de Troya (Trojan Horse):
Es una rutina oculta en un programa de utilidad. Cuando el programa se ejecuta,
se ejecuta la rutina y ésta realiza acciones no autorizadas y perniciosas.
Estos programas permiten realizar de forma indirecta acciones que no puede
realizar de forma directa. Por ejemplo, un programa caballo de troya puede ser
un editor que cuando es ejecutado modifica los permisos de los ficheros que
edita de forma que éstos puedan ser accedidos por cualquier usuario. El autor
del programa suele inducir a su utilización colocándolo en un directorio común
y dándole un nombre de forma que aparente ser un programa de utilidad.
· Virus: Es código introducido en un
programa que puede infectar otros programas mediante la copia de sí mismo en
dichos programas. Además de propagarse, un virus realiza alguna función no
permitida.
· Bacteria: Programa que consume recursos
del sistema replicándose asimismo, pero no daña explícitamente ningún fichero.
Se suele reproducir exponencialmente, por lo que puede acaparar recursos como
CPU, memoria y disco.
· Gusano (Worm): Es un programa
que usa las redes de computadores para pasar de unos sistemas a otros. Una vez
que llega a un sistema, el gusano se puede comportar como un virus o una
bacteria, puede implantar programas caballo de troya, o puede realizar acciones
no autorizadas. Para replicarse, los gusanos emplean algunos programas que
proporcionan servicios de red, como correo electrónico, ejecución remota de
programas y conexión a sistemas remotos.
3.4 IMPLEMENTACION
Protección
La aparición de la
multiprogramación introdujo en los computadores la posibilidad de compartir
recursos entre varios usuarios. Entre los recursos compartidos están
Existen varios motivos por
lo que la protección es necesaria. El más obvio es la necesidad de prevenir
intentos de violación de restricciones de acceso por parte de un usuario. El
más importante es, sin embargo, la necesidad de asegurar que cada proceso use
los recursos del sistema de forma consistente de acuerdo con las políticas
establecidas para el uso de esos recursos. Este requisito es fundamental para
que un sistema sea fiable.
El papel de la protección
en un sistema informático es proporcionar un conjunto de mecanismos que permita
llevar a cabo las políticas que gobiernan el uso de los recursos. Estas
políticas pueden ser fijas, establecidas en el diseño del sistema operativo,
pueden ser formuladas por el administrador del sistema, o incluso puede ser
establecidas por los usuarios.
Un principio importante es
la separación entre política y mecanismo. Los mecanismos determinan hacer
cierta cosa, mientras que las políticas deciden es lo que hay que hacer. En el
ámbito de la protección, la política define qué datos han de ser protegidos y
el mecanismo la forma de llevar a cabo la política. Esta separación favorece la
flexibilidad. Debido a que las políticas pueden cambiar con el tiempo o con el
lugar, es deseable que el sistema operativo ofrezca un conjunto general de mecanismos
por medio de los cuales se puedan establecer políticas diferentes.
3.4.1 Dominios de Protección.
Un computador contiene un
conjunto de objetos que han de ser protegidos. Estos objetos pueden ser tanto
hardware (CPUs, segmentos de memoria, discos, impresoras, etc.) como software
(procesos, ficheros, semáforos, etc.). Cada objeto tiene un identificador único
en el sistema y un conjunto de operaciones que le pueden ser aplicadas. Las
operaciones posibles dependen del objeto. Por ejemplo, los segmentos de memoria
pueden ser leídos o escritos, mientras que un fichero puede ser creado,
abierto, leído, escrito, cerrado y borrado. El mecanismo de protección ha de
prohibir a los procesos el acceso a aquellos objetos.
Para estudiar los diferentes mecanismos de
protección se introduce el concepto de dominio de protección. Un
dominio de protección es un conjunto de pares objeto-derechos, de forma
que cada par especifica un objeto y algún subconjunto de operaciones que se
pueden realizar sobre dicho objeto.
En cada instante de tiempo, cada proceso se ejecuta
dentro de un dominio concreto. Este dominio
puede cambiar durante la vida del proceso.
Un dominio puede ser varias cosas:
Cada usuario puede ser un dominio, en cuyo
caso el conjunto de objetos que puede ser accedido depende de la identidad del
usuario. Los cambios de dominio ocurren cuando se cambia de usuario.
Cada proceso puede ser un dominio, en cuyo
caso el conjunto de objetos que puede ser accedido depende de la identidad del
proceso. Los cambios de dominio se producen cuando un proceso envía un mensaje
a otro y espera la respuesta.
Cada procedimiento puede ser un dominio, en
cuyo caso el conjunto de objetos que puede ser accedido se corresponde con las
variables locales definidas dentro del procedimiento. Los cambios de dominio se
producen cuando se realiza una llamada a procedimiento.
En UNIX el
dominio de un proceso lo determina su uid y su gid. Dado un par de estos dos
identificadores, es posible obtener un lista de todos los objetos que puede
utilizar, y si pueden ser accedidos para lectura, escritura y/o ejecución.
Además, en UNIX cada proceso tiene dos partes, la parte de usuario y la parte
de núcleo. Cuando un proceso invoca una llamada al sistema pasa a ejecutarse en
modo núcleo. Este cambio de modo de ejecución da lugar a un cambio de dominio.
Cuando un proceso UNIX realiza una llamada exec() sobre un fichero que tiene
uno de los bits SETUID o SETGID a uno adquiere un nuevo uid
o gid
efectivo. Esto
también provoca un cambio de dominio.
El sistema
operativo debe de conocer en todo momento los objetos que pertenecen a cada
dominio. Una forma de llevar este control es tener una matriz de acceso,
en la que las filas son los dominios y las columnas los objetos. Cada elemento
de la matriz muestra los derechos de un dominio sobre un objeto.

Figura #. 8 Ejemplo de matriz de acceso.
Los cambios de dominio se pueden incluir
fácilmente en la matriz de protección considerando que cada dominio es a su vez
un objeto sobre el que existe una operación que permite entrar en él.

Figura #. 9 Matriz de acceso con dominio.
En la práctica no es viable
almacenar la matriz de protección porque es grande y tiene muchos huecos (sparse
matrix). La mayoría de los dominios no tiene acceso a la mayoría de los
objetos, por lo que almacenar una gran matriz casi vacía desperdicia mucho
espacio en disco. Dos soluciones prácticas consisten en almacenar la matriz,
bien por filas, bien por columnas, y almacenar únicamente los elementos no
vacíos. En el primer caso se habla de capacidades, y en el segundo, de listas
de control de acceso.
3.4.2 Listas de Control de Acceso.
Cuando la matriz se
almacena por columnas, a cada objeto se le asocia una lista ordenada que
contiene todos los dominios que pueden acceder al objeto y la forma de hacerlo.
Esta lista se denomina lista de control de acceso (control
access list o ACL).
En UNIX esta lista está
compuesta por tres grupos de tres bits, especificando cada grupo los permisos
para el propietario, grupo y resto de usuarios, y los tres bits indican si
existe permiso de lectura, escritura y/o ejecución. Sin embargo, un esquema
basado en listas de control de acceso puede ser más general:

El propietario de un objeto
puede modificar la lista de control de acceso del mismo. El único problema es
que los cambios pueden no afectar a los usuarios que ya estén usando el objeto.
3.4.3 Capacidades
La otra forma de almacenar
la matriz de protección es por filas. Con este método, cada proceso tiene una
lista de los objetos a los que puede acceder así como una indicación de las
operaciones que están permitidas sobre cada uno de ellos. Esta lista se
denomina lista de capacidades (listas_C o C_lists), y cada
elemento de la lista se llama capacidad.
Cada objeto está
representado por una capacidad. Cuando un proceso quiere ejecutar una operación
sobre un objeto, ha de especificar la capacidad del objeto como parámetro. La
simple posesión de la capacidad permite que se conceda el acceso (siempre que
éste esté permitido sobre el objeto).
Cada capacidad tiene un
campo que indica el tipo del objeto, un campo de derechos de acceso, y un campo
que identifica al objeto.

Figura #. 10 Lista de capacidades para el dominio 2 de
la figura 8.
Las listas de capacidades
se asocian a un dominio, pero los procesos que se ejecutan en ese dominio no
deben de acceder a la lista de forma directa. Por el contrario, cada capacidad
es un objeto protegido que debe ser gestionado por el sistema operativo y
únicamente puede ser accedido de forma indirecta por parte de los procesos.
Generalmente, suelen ser referenciadas por su posición dentro de la lista de
capacidades. Las listas de capacidades son también objetos, por lo que pueden
ser apuntadas desde otras listas, permitiendo el compartir subdominios.
Para proporcionar protección, las capacidades se
han de distinguir de otro tipos de objetos.
Cada objeto tiene asociado una etiqueta que
indica si se trata de un objeto o de una capacidad. Las etiquetas no deben ser
accesibles directamente por los programas de aplicación. Una solución hardware
consiste en añadir a cada palabra de memoria un bit adicional que indica si la
palabra de memoria contiene una capacidad. Este bit sólo se puede ser
modificado por el sistema operativo. Si se añaden más bits, el hardware podrá
conocer los tipos de los objetos (si son enteros, reales).
Dividir el espacio de direcciones de un
programa en dos zonas. La primera es accesible al programa y contiene las
instrucciones y los datos. La segunda contiene la lista de capacidades y es
accesible únicamente por el sistema operativo.
Mantener las capacidades en el espacio de
usuario, pero encriptadas con una clave secreta desconocida para el usuario.
Este método es empleado por el sistema operativo Amoeba.
Se tienen acceso relativos a cada objeto, las
capacidades tienen permisos genéricos que son aplicables a todos los objetos.
Algunos de estos permisos son:
Copiar capacidad: crear una nueva capacidad para el mismo objeto.
Copiar objeto: Crear un objeto duplicado con una nueva
capacidad.
Eliminar capacidad: borrar de forma permanente una entrada de
la lista_C, pero dejando
inalterado al objeto.
Eliminar objeto: eliminar de forma permanente un objeto y su
capacidad.
Los sistemas basados en
capacidades se suelen organizar como una colección de módulos, siendo cada
módulo un gestor para cada tipo de objeto. Por ejemplo, las operaciones sobre
ficheros se envían al gestor de ficheros, mientras que las que tiene que ver
con memoria se envían al gestor de memoria. Cada operación va acompañada de la
capacidad correspondiente. Un problema que tiene este esquema basado en módulos
gestores es que éstos son, a su vez, programas ordinarios. Pongámonos en el
caso de un gestor de ficheros. Las capacidades asociadas a ficheros permiten a
los programas las operaciones típicas sobre éstos (apertura, lectura, etc.).
Sin embargo, el gestor de ficheros ha de ser capaz de acceder a la
representación interna de los ficheros (en UNIX, por ejemplo, habría que
acceder a los nodos índice). Por lo tanto, es esencial que los módulos gestores
tengan más atribuciones de las que las capacidades permiten a los procesos
ordinarios. Este problema se resuelve en el sistema Hydra mediante una técnica
llamada amplificación de derechos, que consiste en que a los módulos gestores
se les asigna una plantilla de permisos que les permiten obtener más derechos
sobre los objetos de los que les permiten las capacidades.
Un problema que se
presentan en los sistemas basados en capacidades es que es difícil revocar los
accesos a un objeto, ya que ello supone localizar todas las capacidades que
hacen referencia al objeto, y éstas se encuentran en las listas de capacidades,
que se encuentran repartidas por todo el disco. Una solución a este problema
consiste en que una capacidad no apunte al objeto en sí, sino a un objeto
indirecto que apunta al objeto. De esta forma, si se quiere prohibir los accesos,
basta con romper el enlace entre el objeto indirecto y el objeto. Otra
posibilidad consiste en asociar a cada objeto un número aleatorio, que también
está presente en la capacidad. Cuando se presenta una capacidad al solicitar un
acceso, los dos números son comparados y el acceso se permite si la comparación
ha tenido éxito. La forma de revocar los accesos consiste en que el propietario
del objeto puede solicitar que el número aleatorio del objeto sea cambiado, lo
que automáticamente invalida el resto de las capacidades.
Mecanismos De Protección
De Windows '95
Protección De Memoria
Siempre que una
aplicación intenta acceder a una zona de memoria que no está comprendida dentro
de su mapa actual de memoria, el procesador 386 genera una interrupción y pasa
al sistema operativo un conjunto de información relativa al problema.
1. Esto se logra por medio
de tablas de páginas que describen exactamente las áreas de memoria física a
las que un programa puede acceder.
2. Un indicador de
lectura/escritura para impedir modificar una pagina de solo lectura o de código
de programa.
3. Un indicador de usuario/supervisor que permite al sistema operativo proteger
su propia memoria de cualquier intento de acceso.
Protección De
Dispositivos
La protección de dispositivos es otra área a
tratar dentro de Windows '95. En la implementación de la protección de
dispositivos se toman en cuenta la referencia de dirección de entrada /salida y
una IRQ (Solicitud de Interrupción) con las que se protege del uso mal administrado
o concurrente (que dos usuarios traten de escribir simultáneamente a el).
Protección Del Sistema
Operativo
El objetivo de establecer este tipo de protección
es el de impedir que un programa pueda corromper la operación del sistema.
El núcleo de Windows '95 tiene que ser el único software capaz de realizar
operaciones de conmutación de tareas, manejo de Interrupciones, etc.
Esto
se soluciona por medio de la asignación de 4 niveles de protección establecidos
a través de los bits DPL que se encuentran en el Descriptor.
El
primero (Nivel 0) propone que un software con ese privilegio puede hacer lo que
quiera: cambiar tablas de página, conmutar entre modos del procesador, activar
y desactivar páginas, parar el procesador, etc.
El
segundo y tercero (niveles 1y2) hasta la fecha no se ha requerido de ellos, es
por eso que no existe tanta documentación acerca de ellos.
Por
ultimo, el cuarto nivel (3) en el que se ejecutan todas las aplicaciones. Al
tener este privilegio y querer ejecutar cualquier operación del nivel 0 harán
que el procesador genere una interrupción.
Recomendación: limitar al mínimo el
poder de acceso de los usuarios.
No existe una solución única al problema de
protección.
Sea
R = [r1, ... rn]
el conjunto de objetos a proteger (lógicos o físicos) pueden ser archivos,
procedimientos, terminales y sea U = [u1,
... un] el conjunto de usuarios los cuales son capaces de
producir y/o propagar errores, y sea m
una matriz en donde cada línea corresponde a un usuario y cada
columna corresponde a un recurso [ri], esta matriz se
denomina Matriz de derechos y cada elemento Mij es conocido con el
nombre de capability (capacidad) e indica el conjunto de nodos de acceso
(derechos) del usuario ( i) sobre el recurso ( j ). Figura # 11 . En Unix
se manejan los siguientes derechos.

Figura #
11. Derechos en Unix.
Los derechos en Unix se componen de: XWR,XWR,XWR, de acuerdo a la figura
# 12.

Figura #
12. Estructura en Unix, un usuario por directorio.
·
Dueño
el mismo o se cambia
·
Permisos
mismos o se cambian
·
Crear
un usuario y un grupo (por medio de utilería)
·
Cambiar
de dueño un archivo (por medio de utilería cambiar a su directorio hogar)
|
|
i |
|
|
|
|
|
|
|
|
|
j |
Usuario Recurso |
R1 |
r2 |
r3 |
r4 |
|
|
|
|
|
|
M1 |
W |
|
x |
r |
|
|
|
|
|
|
M2 |
R |
x |
|
w |
|
|
|
|
|
|
M3 |
|
|
|
|
|
|
|
|
|
|
M4 |
X |
w |
r |
|
|
|
|
|
|
|
M5 |
Wxr |
|
|
|
|
|
|
|
Elemento Mij =Capacidad
Indica el conjunto de nodos de acceso (derechos)
del usuario (i) sobre el recurso (j)