Asignación de roles a usuarios y grupos en Openshift

La gestión de qué puede hacer quién en un cluster de Openshift o Kubernetes es una de las principales tareas para una correcta gestión de la seguridad.

Openshift utiliza un sistema RBAC, donde una serie de roles pueden ser asignados a usuarios y grupos, habilitando ciertas posibilidades.

En este artículo veremos qué es un grupo, cómo asignar usuarios a grupos y la asignación de roles.

User

Un user es la representación lógica de una persona o entidad que puede interactuar con Openshift para solicitar determinados recursos.

La gestión de usuarios fue descrita en el artículo anterior de la presente serie de artículos: Configuración de HTPasswd en Openshift para gestión de usuarios

Groups

Un grupo es la representación de una serie de usuarios que comparten una misma serie de permisos.

Creación de un grupo de usuarios

Los grupos de usuarios se crean con el comando oc adm groups. A continuación, vemos cómo crear un grupo llamado developers:

oc adm groups new developers

Añadir usuarios a un grupo

Una vez creado el grupo, ya podemos añadirle usuarios. En este ejemplo, vamos a añadir el usuario Bob al grupo developers.

oc adm groups add-users developers Bob

Role

Un role representa una determinada acción como ver, editar, crear proyectos, etc. Por defecto, Openshift ofrece un listado de errores.

La lista completa de roles y sus descripción, puede ser visualizada en el siguiente enlace: default-roles_using-rbac

Default cluster role
admin
basic-user
cluster-admin
cluster-status
cluster-reader
edit
self-provisioner
view

Cuando asignamos un role a un usuario o grupo, se asigna permisos para realizar la acción o acciones que el role habilita. Por ejemplo, si damos el role view al grupo developers sobre el proyecto boxes, estaremos dando permisos de visión a todos los usuarios de dicho grupo sobre el proyecto boxes.

Este ejemplo se realizaría con el siguiente comando:

oc adm policy add-role-to-group view boxes

En caso de querer asignar un role a un solo usuario, el comando a utilizar sería el mismo pero con la opción add-role-to-user.

References


Ver también