Los derechos de acceso definen que acceso tienen varios sujetos sobre varios objetos. Los sujetos a acceden a los objetos. Los objetos son entidades que contienen información.
Los
objetos pueden ser:
- Concretos:
- Ej.: discos, cintas, procesadores, almacenamiento, etc.
- Abstractos:
- Ej.: estructuras de datos, de procesos, etc.
Los
objetos están 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 mas comunes son:
- Acceso de lectura.
- Acceso de escritura.
- Acceso de ejecución.
Una
forma de implementación 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 protección
Un
sistema de cómputos contiene muchos objetos que necesitan protección. 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 semáforos.
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 semáforo.
Es
evidente que se necesita una vía para prohibir el acceso de los procesos a los
objetos a los que no tiene permitido dicho acceso. Además, este mecanismo debe
posibilitar la restricción 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 protección, 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 teoría, uno puede
imaginar una enorme matriz, en la que los renglones son los dominios y las
columnas son los objetos. Cada cuadro contiene los derechos correspondientes al
objeto en ese dominio. Con esta matriz y el número 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 el.
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 protección:
- Existe una colección de objetos a los que puede tener acceso.
- Cada objeto tiene cierto conjunto de derechos.
Los
procesos pueden alternar entre los dominios durante la ejecución. 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 protección del sistema se puede ver en forma abstracta como una
matriz, la matriz de acceso.
Una matriz
de acceso es una representación abstracta del concepto de dominio de protección.
Este
modelo fue propuesto por Lampson [4] como una descripción generalizada de
mecanismos de protección en sistemas operativos. Es el modelo más utilizado,
del que existen numerosas variaciones, especialmente en su implementación.
Los
elementos básicos 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 aplicación consigue acceder en realidad a un objeto por medio de un proceso que representa al usuario o a la aplicación.
- 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án 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 también
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.
La
figura 6.3.2 representa una matriz de acceso, y la figura 6.3.3 es una matriz
de acceso derivada de la figura 6.3.1 de dominios de protección.
No hay comentarios.:
Publicar un comentario