Skip to content

Tema:

Autenticación en Rancher Manager: Usuarios y Roles


Introducción

La autenticación es un componente esencial en la gestión de acceso a sistemas y plataformas, ya que garantiza que solo los usuarios autorizados puedan interactuar con los recursos disponibles. En el contexto de Rancher Manager, una solución de administración de clústeres Kubernetes, la autenticación permite implementar un control de acceso robusto mediante la creación y gestión de usuarios, roles y permisos. Esta funcionalidad asegura que las operaciones en los clústeres sean realizadas de manera segura, organizada y acorde con las políticas corporativas.

En Rancher Manager, la autenticación y la gestión de roles están diseñadas para integrar fácilmente diferentes mecanismos de inicio de sesión, como proveedores de identidad externos (LDAP, Active Directory, SAML, entre otros) o cuentas locales. Además, los roles predefinidos y personalizados permiten una asignación precisa de permisos, ajustándose a las necesidades específicas de la organización y los equipos involucrados en la operación.


Objetivo

Objetivo General:

  • Proporcionar una comprensión integral del funcionamiento de la autenticación en Rancher Manager y de los mecanismos para gestionar usuarios y roles, con el propósito de establecer una estrategia efectiva de control de acceso que garantice la seguridad, la eficiencia y la colaboración en la administración de clústeres Kubernetes.

Autenticación, Usuarios y Grupos en Rancher Server

Rancher depende de los usuarios y grupos para determinar quién puede iniciar sesión en Rancher y a qué recursos pueden acceder. Cuando configura un proveedor de autenticación externo, los usuarios de ese proveedor podrán iniciar sesión en su servidor Rancher. Cuando un usuario inicia sesión, el proveedor de autenticación proporcionará a su servidor de Rancher una lista de grupos a los que pertenece el usuario.

El acceso a clústeres, proyectos, aplicaciones de múltiples clústeres y proveedores y entradas de DNS globales se puede controlar agregando usuarios individuales o grupos a estos recursos. Cuando agrega un grupo a un recurso, todos los usuarios que son miembros de ese grupo en el proveedor de autenticación podrán acceder al recurso con los permisos que ha especificado para el grupo

La autenticación local es la predeterminada hasta que configure un proveedor de autenticación externo. La autenticación local es donde Rancher almacena la información del usuario, es decir, nombres y contraseñas, de quién puede iniciar sesión en Rancher. De forma predeterminada, el adminusuario que inicia sesión en Rancher por primera vez es un usuario local.

Laboratorio: Adición de usuarios locales

Descripción

Independientemente de si usa la autenticación externa, debe crear algunos usuarios de autenticación local para que pueda continuar usando Rancher si su servicio de autenticación externa encuentra problemas.

Objetivos

  • Crear un usuario con permisos de administración Global en Rancher
  • Crear un usuario con permisos de administración unicamente en un cluster de Kubernetes
  • Crear un usuario Developer en un cluster de Kubernetes

Antes de comenzar

  • Contar con el acceso al ambiente de laboratorio
  • Haber completado los laboratorios de instalación de Rancher Server y Cluster de Rancher Kubernetes Engine (RKE)

Inicio de laboratorio

Antes de comenzar puede explorar todas las opciones en la sección Users & Authentication:

  • Users Rancher_Manager
  • Roles Templates: Globals, Cluster, Project/Namespaces Rancher_Manager
  • Groups Rancher_Manager
  • Auth Provider Rancher_Manager

Crear un usuario con permisos de administración Global en Rancher

  1. Ingrese con el usuario admin y la contraseña colocada a este usuario durante la instalación
  2. En la esquina superior izquierda, haga clic en el menú ☰ y luego seleccionar Users & Authentication
  3. En el menú de navegación izquierdo, haga clic en Users y puedes verificar los usuarios creados o existentes en este momento.
  4. Haz clic en Create
  5. En Username coloque rancheradmin
  6. En New Password y Confirm Password, colocar RancherAdmin123
  7. En Global Permissions elegir Administrator
  8. Haz clic en el botón Create Rancher_Manager
  9. Verificar que el nuevo usuario rancheradmin aparezca en la lista de usuarios

Crear un usuario con permisos de administración unicamente en un cluster de Kubernetes

  1. Haz clic en Create
  2. En Username coloque clusteradmin
  3. En New Password y Confirm Password, colocar ClusterAdmin123
  4. En Global Permissions elegir Standard User
  5. Haz clic en el botón Create Rancher_Manager
  6. Verificar que el nuevo usuario clusteradmin aparezca en la lista de usuarios

Crear un usuario Developer en un cluster de Kubernetes

  1. Haz clic en Create
  2. En Username coloque developer
  3. En New Password y Confirm Password, colocar Developer123
  4. En Global Permissions elegir Standard User
  5. Haz clic en el botón Create Rancher_Manager
  6. Verificar que el nuevo usuario developer aparezca en la lista de usuarios
  7. Ahora puede verificar el acceso a Rancher Web Console con cada uno de los usuarios creados anteriormente

Rancher_Manager

Otorgando permisos de administración a un usuario en un cluster de Kubernetes

  1. Ingrese a Rancher Server Web Console con el usuario rancheradmin y la contraseña colocada durante la creación del usuario
  2. En la esquina superior izquierda, haga clic en el menú ☰ y a continuación Cluster Management
  3. Elija el cluster de Kubernetes llamado cluster1, y luego Explore.
  4. Dirijase al menú Cluster and Project Members y en Cluster Membership dar clic en el botón Add Rancher_Manager
  5. En Select Member escriba clusteradmin y seleccione el usuario local creado anteriormente
  6. En Cluster Permissions elija la opción Owner
  7. Dar clic en el botón Create Rancher_Manager
  8. Verifique que en Cluster Members se lista el usuario clusteradmin con rol Cluster Owner Rancher_Manager Puede ingresar con el usuario clusteradmin y comprobar que unicamente tiene acceso al cluster de Kubernetes llamado cluster1 Rancher_Manager

Otorgando permisos sobre un Proyecto a un usuario "Developer" en un cluster de Kubernetes

  1. Ingrese a Rancher Server Web Console con el usuario clusteradmin y la contraseña colocada durante la creación del usuario
  2. Verifique que cuente con acceso al cluster de Kubernetes llamado: cluster1
  3. Elija el cluster de Kubernetes cluster1
  4. Dirijase a Projects/Namespaces
  5. Dar clic en el botón Create Project
  6. En Name colocar my-project y dar click en el botón Create Rancher_Manager
  7. En la sección de Cluster and Project Members dar clic en la pestaña Project Membership
  8. A continuación, ubicar En my-project y dar click en el botón Add: Rancher_Manager
  9. En Add Project Member escribe developer y seleccione el usuario local "developer" creado anteriormente, en Project Permissions seleccionar Owner
  10. Dar clic en el botón Create Rancher_Manager
  11. Verificar que los permisos se agregaron correctamente: Rancher_Manager Puede ingresar con el usuario developer y contraseña Developer123 para comprobar que unicamente tiene acceso a los recursos a los cuales se les ha proporcionado permisos.

Ingresar a un Proyecto con un usuario "Developer" en un cluster de Kubernetes

  1. Ingrese a Rancher Server Web Console con el usuario developer y la contraseña Developer123 colocada durante la creación del usuario
  2. Verifique que cuente con acceso al cluster cluster1
  3. Elija el cluster cluster1
  4. Dirijase a Projects/Namespaces
  5. Dar clic en el botón Create Project
  6. En Name colocar test-project
  7. Dar clic en el botón Create
  8. Verifique que no es posible crear nuevos proyectos con el mensaje similar al siguiente: projects.management.cattle.io is forbidden: User "u-n25cl" cannot create resource "projects" in API group "management.cattle.io" in the namespace "cluster-users"
  9. Dirijase a Projects/Namespaces
  10. Dar clic en el botón Create Namespace
  11. En Name colocar my-namespace
  12. Dar clic en el botón Create
  13. Verifique que el nuevo Namespace aparece listado dentro del proyecto my-project
  14. Dar clic en el botón Create Namespace
  15. En Name colocar test-namespace
  16. Dar clic en el botón Create
  17. Verifique que el nuevo Namespace aparece listado dentro del proyecto my-project

Realizar un despligue básico de una aplicación

  1. Dar clic sobre my-namespace
  2. Dirijase a Workloads
  3. Dar clic en el botón Create
  4. Elejir la opción Deployment
  5. En Name colocar test-deployment
  6. En General > Image > Conatiner Image colocar nginx:latest
  7. Dar clic en el botón Create
  8. Verificar que el Deployment aparece en estado Active
  9. Dar clic en el Deployment test-deployment
  10. Verificar que el Pod aparece en estado Running
  11. Dar clic en los tres puntos
  12. Elegir la opción View Logs para comprobar que el Pod de NGINX s eencuentra en ejecución correctamente.

Realizar Limpieza del Ambiente

  1. Ingrese con el usuario admin y la contraseña colocada a este usuario durante la instalación
  2. En la esquina superior izquierda, haga clic en el menú ☰ y a continuación Cluster Management
  3. Elija el cluster de Kubernetes llamado cluster1, y luego Explore.
  4. Dirijase a Projects/Namespaces
  5. Eliminar los Namespaces llamados my-namespace y test-namespace
  6. Eliminar el Proyecto llamado my-project
  7. (Opcional) Se lo deseas, puedes eliminar los usuarios creados anteriormente (rancheradmin, clusteradmin y developer) desde la esquina superior izquierda, haga clic en el menú ☰ y luego seleccionar Users & Authentication, luego en el menú de navegación izquierdo, haga clic en Users, ubicar el usuario y en el menú de los tres puntos seleccionar Delete, pedirá confirmación y el usuario será eliminado.