Anda di halaman 1dari 4

Implementacin de matrices de acceso

Los derechos de acceso definen que acceso tienen varios sujetos sobre varios
objetos.
Los sujetos acceden a los objetos.
Los objetos son entidades que contienen informacin.
Los objetos pueden ser:
Concretos:
Ej.: discos, cintas, procesadores, almacenamiento, etc.
Abstractos:
Ej.: estructuras de datos, de procesos, etc.
Los objetos estn protegidos contra los sujetos.
Las autorizaciones a un sistema se conceden a los sujetos.
Los sujetos pueden ser varios tipos de entidades:
Ej.: usuarios, procesos, programas, otras entidades, etc.
Los derechos de acceso ms comunes son:
Acceso de lectura.
Acceso de escritura.
Acceso de ejecucin.
Una forma de implementacin es mediante una matriz de control de acceso
con:
Filas para los sujetos.
Columnas para los objetos.
Celdas de la matriz para los derechos de acceso que un usuario tiene a un
objeto.
Una matriz de control de acceso debe ser muy celosamente protegida por el S.
O.
Dominios de proteccin
Un sistema de cmputos contiene muchos objetos que necesitan proteccin.
Estos objetos pueden ser el hardware, la CPU, los segmentos de memoria,
terminales, unidades de disco o impresoras; o bien ser del software, como los
proceso, archivos, bases de datos o semforos.
Cada objeto tiene un nico nombre mediante el cual se la hace referencia y un
conjunto de operaciones que se pueden realizar en l. READ y WRITE son
operaciones adecuadas para un archivo; UP y DOWN tiene sentido en un
semforo.
Es evidente que se necesita una va para prohibir el acceso de los procesos a
los objetos a los que no tiene permitido dicho acceso. Adems, este mecanismo
debe posibilitar la restriccin de los procesos a un subconjunto de operaciones
legales en caso necesario. Por ejemplo, puede permitirse que el proceso A lea
el archivo F, pero no escriba en l.
Para tener una forma de analizar los distintos mecanismos de proteccin, es
conveniente presentar el concepto de dominio. Un dominio es un conjunto de
parejas (objeto, derechos). Cada pareja determina un objeto y cierto
subconjunto de las operaciones que se pueden llevar a cabo en l. Un derecho
es, en este contexto, el permiso para realizar alguna de las operaciones.
Una pregunta importante es la forma en que el sistema lleva un registro de los
objetos que pertenecen a un dominio dado. Al menos una teora, uno puede

imaginar una enorme matriz, en la que los renglones son los dominio y las
columnas son los objetos. Cada cuadro contiene los derechos correspondientes
al objeto en ese dominio. Con esta matriz y el nmero de dominio activo, el
sistema puede determinar si se permite el acceso de cierta forma a un objeto
dado desde un domino especifico.
Un dominio es un conjunto de parejas (objeto, derechos):
Cada pareja determina:
Un objeto.
Un subconjunto de las operaciones que se pueden llevar a cabo en l.
Un derecho es el permiso para realizar alguna de las operaciones.
Es posible que un objeto se encuentre en varios dominios con distintos
derechos en cada dominio.
Un proceso se ejecuta en alguno de los dominios de proteccin:
Existe una coleccin de objetos a los que puede tener acceso.
Cada objeto tiene cierto conjunto de derechos.
Los procesos pueden alternar entre los dominios durante la ejecucin.
Una llamada al S. O. provoca una alternancia de dominio.
En algunos S. O. los dominios se llaman anillos.
Una forma en la que el S. O. lleva un registro de los objetos que pertenecen a
cada dominio es mediante una matriz:
Los renglones son los dominios.
Las columnas son los objetos.
Cada elemento de la matriz contiene los derechos correspondientes al objeto
en ese dominio, por ej.: leer, escribir, ejecutar.
Matriz de acceso
El modelo de proteccin del sistema se puede ver en forma abstracta como
una matriz, la matriz de acceso.
Una matriz de acceso es una representacin abstracta del concepto de dominio
de proteccin.
Este modelo fue propuesto por Lampn como una descripcin generalizada de
mecanismos de proteccin en sistemas operativos. Es el modelo ms utilizado,
del que existen numerosas variaciones, especialmente en su implementacin.
Los elementos bsicos del modelo son los siguientes:
Sujeto: Una entidad capaz de acceder a los objetos. En general, el concepto
de sujeto es equiparable con el de proceso. Cualquier usuario o aplicacin
consigue acceder en realidad a un objeto por medio de un proceso que
representa al usuario o a la aplicacin.
Objeto: Cualquier cosa cuyo acceso debe controlarse. Como ejemplo se
incluyen los archivos, partes de archivos, programas y segmentos de memoria.
Derecho de acceso: la manera en que un sujeto accede a un objeto. Como
ejemplo est Leer, Escribir y Ejecutar.
El modelo considera un conjunto de recursos, denominados objetos, cuyo
acceso debe ser controlado y un conjunto de sujetos que acceden a dichos
objetos. Existe tambin un conjunto de permisos de acceso que especifica los
diferentes permisos que los sujetos pueden tener sobre los objetos

(normalmente lectura, escritura, etc., aunque pueden ser diferentes, en


general, dependiendo de las operaciones que puedan realizarse con el objeto).
Se trata de especificar para cada pareja (sujeto, objeto), los permisos de
acceso que el sujeto tiene sobre el objeto. Esto se representa mediante una
matriz de acceso M que enfrenta todos los sujetos con todos los objetos. En
cada celda M [i, j] se indican los permisos de acceso concretos que tiene el
sujeto i sobre el objeto j.
El mecanismo de proteccin es la matriz, junto con todos los elementos que se
han de aadir para que se cumplan de manera efectiva todas las restricciones
de acceso a los objetos.
La poltica consiste en decidir cmo rellenar las distintas celdas de la matriz.
La MA permite implementar operaciones de cambio de domino.
El objeto sobre el que trabajamos es el Dominio aparecen tantas columnas
como dominios haya en el sistema.
La operacin es la conmutacin de un dominio a otro.
Tambin la MA es un objeto que se puede modificar. De este modo podemos
definir tres operaciones:
Copiar derechos de acceso de una celda a otra dentro de la misma columna.
Consiste en pasar el derecho de acceso a un objeto de un Dominio que lo tiene,
a otro donde originalmente no lo tena. Se seala con un asterisco (*).
Copia ilimitada con propagacin del propio derecho de copia.
Copia limitada sin propagacin.
Movimiento de derecho.
Dueo. Un proceso ejecutndose en un dominio que tiene derecho de
dueo sobre un objeto, puede repartir cualquier derecho de acceso sobre
cualquier dominio para dicho objeto.
Control. Opera solo sobre dominios. Ejercer el control sobre un dominio
implica que se puede quitar cualquier derecho sobre una fila de dominio.
La MA tambin ha de ser protegida.
Implementacin de la Matriz de Acceso
Tabla Global
Sencilla. Se almacena una lista de ternas {...}.
Como el nmero de objetos y dominios es posiblemente muy grande, se
debera guardar en memoria virtual lento. Ver.
Lista de acceso para objetos (ACL)
Se expresa la MA por columnas {,...}. Se descartan las entradas vacas.
Se puede crear una lista de permisos por defecto para hacer ms fcil su uso.
Dado que cada vez que se va a usar un objeto hay que comprobar si hay o no
permiso para hacerlo, es lgico poner la ACL all donde estn descritos los
atributos del objeto.
Asocia a cada objeto una lista ordenada con:
Todos los dominios que pueden tener acceso al objeto.
La forma de dicho acceso (ej.: lectura (r), grabacin (w), ejecucin (x)).
Una forma de implementar las ACL consiste en:
Asignar tres bits (r, w, x) para cada archivo, para:
El propietario, el grupo del propietario y los dems usuarios.

Permitir que el propietario de cada objeto pueda modificar su ACL en cualquier


momento:
Permite prohibir accesos antes permitidos.
Lista de Capacidades
Se expresa la MA por filas. Cada dominio tiene una lista de la forma {,...}
Para identificar el objeto se usa o bien su nombre lgico, o un puntero a l (la
estructura de datos que le describe); a esta direccin se la llama capacidad.
Solo se podr realizar la operacin M sobre el objeto O si se dispone de la
capacidad (puntero) al objeto.
Mecanismo de Cerradura-Llave
Cada objeto tiene una lista de patrones llamados cerradura.
Cada dominio tiene una lista de patrones llamados claves.
Un proceso que se ejecuta en un dominio solo tendr acceso a un objeto si el
dominio contiene una llave que coincida con una de las cerraduras.
Comparacin
La tabla global es una matriz dispersa, es ineficiente para su almacenamiento.
ACL Cuando se accede a un objeto es fcil determinar si hay o no permiso
para usarlo.
Capacidades Las ACL estn distribuidas, es difcil saber cules son los
derechos de acceso para un proceso, cosa que si se puede hacer con la lista de
capacidades.
Los sistemas reales suelen usar una mezcla de todos.
Ej. UNIX: Se abre un fichero, se verifica en la ACL si tiene permiso o no. Si lo
tiene, se consigue un descriptor de fichero, es decir una capacidad que ser lo
que se use a partir de entonces.

Anda mungkin juga menyukai