Access Matrix es un modelo de seguridad del estado de protección en el sistema informático. Se representa como una array. La array de acceso se utiliza para definir los derechos de cada proceso que se ejecuta en el dominio con respecto a cada objeto. Las filas de la array representan dominios y las columnas representan objetos. Cada celda de la array representa un conjunto de derechos de acceso que se otorgan a los procesos del dominio significa que cada entrada (i, j) define el conjunto de operaciones que un proceso que se ejecuta en el dominio Di puede invocar en el objeto Oj.
F1 | F2 | F3 | Impresora |
---|---|---|---|
D1 | leer | leer | |
D2 | impresión | ||
D3 | leer | ejecutar | |
D4 | leer escribir | leer escribir |
Según la array anterior: hay cuatro dominios y cuatro objetos: tres archivos (F1, F2, F3) y una impresora. Un proceso que se ejecuta en D1 puede leer los archivos F1 y F3. Un proceso que se ejecuta en el dominio D4 tiene los mismos derechos que D1 pero también puede escribir en archivos. Solo se puede acceder a la impresora mediante un proceso que se ejecuta en el dominio D2. El mecanismo de array de acceso consta de muchas políticas y propiedades semánticas. Específicamente, debemos asegurarnos de que un proceso que se ejecuta en el dominio Di pueda acceder solo a aquellos objetos que se especifican en la fila i.
Las políticas de array de acceso en materia de protección implican qué derechos deben incluirse en la (i, j)-ésima entrada. También debemos decidir el dominio en el que se ejecuta cada proceso. Esta política generalmente la decide el sistema operativo. Los Usuarios deciden el contenido de las entradas de la array de acceso.
La asociación entre el dominio y los procesos puede ser estática o dinámica. La array de acceso proporciona un mecanismo para definir el control de esta asociación entre el dominio y los procesos. Cuando cambiamos un proceso de un dominio a otro, ejecutamos una operación de cambio en un objeto (el dominio). Podemos controlar el cambio de dominio al incluir dominios entre los objetos de la array de acceso. Los procesos deben poder cambiar de un dominio (Di) a otro dominio (Dj) si y solo se otorga un derecho de cambio para acceder (i, j).
F1 | F2 | F3 | Impresora | D1 | D2 | D3 | D4 |
---|---|---|---|---|---|---|---|
D1 | leer | leer | cambiar | ||||
D2 | impresión | cambiar | cambiar | ||||
D3 | leer | ejecutar | |||||
D4 | leer escribir | leer escribir | cambiar |
Según la array: un proceso que se ejecuta en el dominio D2 puede cambiar al dominio D3 y D4. Un proceso que se ejecuta en el dominio D4 puede cambiar al dominio D1 y el proceso que se ejecuta en el dominio D1 puede cambiar al dominio D2.