Вы находитесь на странице: 1из 5

1.

1 MATRIZ DE ACCESO Nuestro modo de proteccin puede visualizarse de forma abstracta como una matriz, llamada matriz de acceso. Las filas de la matriz de acceso representan dominios, y las columnas, objetos. Cada entrada de la matriz consiste en un conjunto de derechos de acceso. Dado de que la columna define explcitamente el objeto, podemos omitir el nombre del objeto en el derecho de acceso. La entrada a acceso(i,j) define el conjunto de operaciones que un proceso que se ejecuta en el dominio D i puede invocar con el objeto Oj. Para ilustrar estos conceptos, consideremos la matriz de acceso que se muestra en la Figura 2. Hay cuatro dominios y cuatro objetos: tres archivos (F 1, F2 y F3) y una Cuando un proceso se ejecuta en el dominio D 1, puede leer los Un proceso que se ejecuta en el dominio D 4 , tiene los mismos impresora lser. archivos F1 y F3.

privilegios que en el dominio D1, pero adems, puede escribir en los archivos F1 y F3. Slo los procesos que se ejecutan en el dominio D2 tienen acceso a la impresora. OBJETOS F2

DOMINIOS D1 D2 D3 D4

F1 leer

F3 leer ejecutar leer/escribir

Impresora imprimir

leer leer/escribir

Figura 2. Matriz de Acceso El esquema de matriz de acceso nos proporciona el mecanismo para especificar diversas asegurar un proceso de polticas. El mecanismo consiste en implementar la matriz de acceso y que se cumplan realmente las propiedades semnticas que bosquejemos. En trminos ms especficos, debemos asegurar que que se ejecuta en el dominio Di, pueda acceder slo a los objetos especificados en la fila i, y slo como lo especifican las entradas de la matriz acceso.

Las decisiones de poltica relativas a la proteccin se pueden implementar con la matriz de acceso. Dichas decisiones se refieren a qu derechos deben incluirse en la (i,j)-sima entrada. proceso. operativo. Tambin debemos decidir en qu dominio se ejecutar cada Esta ltima decisin de poltica generalmente corresponde al sistema

Los usuarios normalmente deciden el contenido de las entradas de la matriz de acceso. Cuando un usuario crea un objeto nuevo Oj, se aade la columna Oj a la matriz de acceso con las entradas iniciales apropiadas, a gusto del creador. El usuario podra decidir colocar algunos derechos en algunas entradas de la columna j y otros derechos en otras entradas, segn sus necesidades. La matriz de acceso proporciona un mecanismo apropiado para definir e implementar un control estricto de la asociacin tanto esttica como dinmica entre procesos y dominios. Cuando conmutamos un proceso de un dominio a otro, estamos ejecutando una operacin (conmutar) con un objeto (el dominio). Podemos controlar la conmutacin de dominios incluyendo dominios entre los objetos de la matriz de acceso. As mismo, cuando modificamos el contenido de la matriz de acceso, estamos realizando una operacin con un objeto: la matriz de acceso. Una vez ms, podemos controlar estos cambios incluyendo la matriz de acceso misma como un objeto. En realidad, puesto que cada entrada de la matriz de acceso se puede modificar individualmente, debemos considerar cada entrada de la matriz de acceso como un objeto que debe protegerse. Ahora bien, slo tenemos que considerar las operaciones que son posibles con estos nuevos objetos (dominios y la matriz de acceso) y decidir cmo queremos que los procesos puedan ejecutar dichas operaciones. Los procesos debern poder cambiar de un dominio a otro. Se permite la puede conmutacin del dominio Di al dominio D j si y slo si el derecho de acceso conmutar acceso(i,j). As, en la Figura 3, un proceso que se ejecuta en el dominio D del dominio D 1 puede cambiar al dominio D 2. OBJETOS Impresora D1 imprimir leer leer/escribir ejecutar leer/escribir conmutar
2

cambiar al dominio D 3 o al D 4. Un proceso del dominio D 4 puede cambiar a D 1 , y uno

DOMINIOS D1 D2 D3 D4

F1 leer

F2

F3 leer

D2 conmutar

D3

D4

conmutar conmutar

Figura 3. Matriz de Acceso de la Figura 2 con dominios como objetos. Para poder modificar de forma controlada el contenido de las entradas de la matriz de acceso se requieren tres operaciones adicionales: copiar (copy), dueo (owner) y control. La capacidad para copiar un derecho de acceso de un dominio (fila) de la matriz de acceso a otro se denota con un asterisco (*) aadido al derecho de acceso. El derecho copiar permite copiar el derecho de acceso slo dentro de la columna

(esto es, el objeto) para la cual se define el derecho. Por ejemplo, en la Figura 4.a, un proceso que se ejecuta en el dominio D2 puede copiar la operacin de leer en cualquier entrada asociada al archivo F2 . As, la matriz de acceso de la Figura 4.a se puede modificar a la que se muestra en la Figura 4.b. OBJETOS F2 Leer*

DOMINIOS D1 D2 D3

F1 Ejecutar Ejecutar Ejecutar a.

F3 Escribir* Ejecutar

DOMINIOS D1 D2 D3

F1 Ejecutar Ejecutar Ejecutar b.

OBJETOS F2 Leer* Leer

F3 Escribir* Ejecutar

Figura 4. Matriz de Acceso con derechos de copiar. Este esquema tiene dos variantes: 1. Se copia un derecho de acceso(i,j) a acceso(k,j); luego se elimina de acceso(i,j); esta accin es una transferencia de un derecho, ms que una copia. 2. La propagacin del derecho de copiar podra estar limitada. Es decir, cuando el derecho R* se copia de acceso(i,j) a acceso(k,j), slo se crea el derecho R (No R*). Un proceso que se ejecute en el dominio Dk no podr copiar el derecho R. Un sistema podra seleccionar solo uno de estos tres derechos de copiar, o podra ofrecer los tres identificndolos como derechos distintos: copiar, transferir y copiar limitado. El derecho copiar permite a un proceso copiar algunos derechos de una entrada de una columna a otra entrada de la misma columna. Tambin necesitamos un mecanismo para aadir nuevos derechos y quitar algunos derechos. El derecho de dueo controla estas operaciones. Si acceso(i,j) incluye el derecho dueo, un proceso que se ejecuta en el dominio Di puede quitar y agregar derechos en cualquier entrada de la columna j. Por ejemplo, en la Figura 5.a, el dominio D 1 es el dueo de F1 , por lo tanto, puede agregar y eliminar cualquier derecho vlido de la columna F 1. De

forma similar, el dominio D2 , es el dueo de F2 y F3, y por lo tanto, puede agregar y quitar cualquier derecho vlido dentro de estas dos columnas. As, la matriz de acceso de la figura 5.a se puede transformar en la que se muestra en la Figura 5.b. OBJETOS F2

DOMINIOS D1 D2 D3

F1 Dueo Ejecutar

F3 Escribir Leer*/Escribir* Dueo

Leer* Dueo Ejecutar a. OBJETOS F2

DOMINIOS D1 D2 D3

F1 Dueo Ejecutar

F3

Leer*/Escribir* Dueo Escribir b.

Leer*/Escribir* Dueo Escribir

Figura 5. Matriz de Acceso con derechos de dueo.

Los derechos copiar y dueo permiten a un proceso modificar las entradas de una columna. Tambin se requiere un mecanismo para modificar las entradas de una fila. El derecho control solo aplica a los objetos dominio. Si acceso(i,j), incluye el derecho control, un proceso que se ejecuta en el dominio D i, puede quitar cualquier derecho de acceso a la fila j. Por ejemplo, supongamos que, en la Figura 6 incluimos el derecho control en acceso(D2, D4). Entonces un Proceso que se ejecuta en el dominio D2 podra modificar al dominio D4 , como se muestra en la Figura 6. Aunque los derechos copiar y dueo proporcionan un mecanismo para limitar la propagacin de los derechos de acceso, no ofrecen las herramientas apropiadas para evitar la propagacin de informacin (es decir, la revelacin de informacin). El problema de garantizar que ninguna informacin que inicialmente est contenida en un objeto pueda migrar fuera de su entorno de ejecucin se denomina problema de confinacin. Este problema no puede resolverse en el caso general.

DOMINIOS D1 D2

F1 leer

F2

F3 leer

OBJETOS Impresora D1 imprimir

D2 conmutar

D3 conmutar

D4 Conmutar Control

leer Ejecutar D3 escribir Ejecutar D4 Figura 6. Matriz de Acceso modificada de la Figura 3.

conmutar

En s, estas operaciones con los dominios y la matriz de acceso no son demasiado importantes. Lo que es ms importante es que ilustran la capacidad del modelo de la matriz de acceso para implementar y controlar las necesidades de proteccin dinmica. Es posible crear dinmicamente objetos y dominios nuevos e incluirlos en le modelo de la matriz de acceso. Sin embargo, slo hemos mostrado la existencia del mecanismo bsico; bajo las decisiones de poltica sobre qu dominios habrn de tener acceso a qu objetos y de qu maneras corresponden a los diseadores y usuarios del sistema. 2.4 IMPLEMENTACION DE LA MATRIZ DE ACCESO Cmo puede implementarse de forma efectiva la matriz de acceso? En general, la matriz estar poco poblada; es decir, la mayor parte de las entradas estarn vacas. Aunque existen tcnicas de estructuras de datos para representar matrices poco pobladas, no son muy tiles para esta aplicacin a causa de la forma en que se usa el recurso de proteccin.