es

Controles de acceso, permisos y privilegios de usuario

19 de enero de 2016

Dave Piscitello

Además de estar disponible en los seis idiomas de las Naciones Unidas, este contenido también está disponible en

null

En mi último post, ¿Qué es la autorización y el control de acceso?, expliqué que utilizamos la autenticación para verificar la identidad ―para demostrar que una persona es quien dice ser― y también para permitir una política de autorización con el fin de definir qué es lo que determinada identidad puede "ver y hacer". Luego implementamos estas políticas de autorización utilizando medidas de seguridad para conceder o denegar el acceso a los recursos que deseamos controlar o proteger.

Las medidas que utilizamos para implementar las políticas de autorización son llamadas controles de acceso de usuario, permisos de usuario o privilegios de usuario. El control de acceso de usuario es comúnmente utilizado en el sistema operativo Windows, en la documentación del enrutador o cortafuegos, mientras que el privilegio de usuario o el permiso de usuario son más comunes en la documentación de Linux. Puede encontrar conversaciones enteramente discutiendo las diferencias entre estos términos, pero a los fines de su presentación, se los puede tratar como si fuesen intercambiables. Utilice el término con el cual se sienta más cómodo o que encuentre más frecuentemente en la literatura que resulta más relevante para usted.

Cuando se define una política de autorización, se define a un individuo o grupos de usuarios, aplicaciones o procesos que pueden realizar acciones sobre un recurso, tal como una base de datos. Una política de autorización puede tener un gran nivel de detalle. Se pueden controlar las acciones ―ya sean individuales o de grupos de individuos respecto a lo que pueden leer, crear, modificar (escribir) o borrar― en las entradas de base de datos individuales, o incluso los elementos individuales (campos) de una entrada de la base de datos.

Ejemplo de Política de Autorización

Imaginemos una base de datos comercial de registros en la cual cada registro contiene una información de nombre, domicilio, teléfono y tarjeta de crédito. El personal de Tecnologías de la Información del comerciante define una política de autorización que organiza el acceso de los empleados del comerciante en tres clases de privilegio:

  1. Los administradores de la base de datos, Joe y Terry, pueden realizar cualquier acción en cualquier registro del cliente de la base de datos. Por ejemplo: pueden crear un registro, modificar cualquier elemento de cualquier registro y borrar cualquier registro.

    Este es un ejemplo de acceso completo.

  2. El personal de contabilidad, Charlotte y Bert, puede leer cualquier campo de cualquier registro del cliente que incluye la información de tarjeta de crédito, pero no puede crear, modificar ni borrar registros o campos dentro de los registros.

    Aquí, permitimos el acceso a todo el conjunto de registros, pero denegamos la capacidad de crear, alterar o borrar cualquier registro o campos dentro de los registros.

  3. El personal de comercialización, Ahmed y Carlo, puede leer cualquier registro del cliente, pero no puede leer la información de la tarjeta de crédito y no tiene permitido crear, modificar ni borrar cualquier registro o campo.

    Aquí, permitimos el acceso a todo el conjunto de registros, pero denegamos el acceso a los datos específicos dentro de cada registro.

Estos ejemplos ilustran un importante concepto de seguridad, el principio de privilegios mínimos (POLP), bajo el cual una organización otorga a los usuarios sólo los privilegios que ellos necesitan para realizar el trabajo que se les ha asignado. Por ejemplo: nuestra empresa ficticia ha decidido que el personal de comercialización no necesita acceder a las tarjetas de crédito. Nuestros ejemplos también ilustran el control de acceso basado en roles (RBAC). En los ejemplos, la compañía ha establecido privilegios basados en el conjunto de roles {administrador de la base de datos, personal de contabilidad, personal de comercialización...}.

Preparando el escenario

Teniendo en cuenta los controles de acceso de nuestro ejemplo, pregúntese: "Si usted fuese un atacante y quisiese robar información de las tarjetas de crédito para usarla de manera fraudulenta, ¿a qué cuentas de usuario desearía tener acceso?"

En nuestra próxima entrada de blog observaremos la forma en que los atacantes intentan obtener acceso y escalar privilegios.

Dave Piscitello