Acceso a los clústeres desde herramientas de automatización

Utiliza una clave de API de IAM de IBM Cloud o un ID de servicio para iniciar sesión en un clúster desde flujos de trabajo automatizados, herramientas de CI/CD o scripts que se ejecutan de forma no interactiva.

Iniciar sesión con una clave de API

Se recomienda utilizar una clave API de IAM para la automatización y los procesos de CI/CD.

  1. Crea una clave de API y guarda el resultado; el valor de la clave no se podrá recuperar posteriormente.
    ibmcloud iam api-key-create <name>
    
  2. Inicie la sesión con su clave de API.
    ibmcloud login --apikey API_KEY
    
  3. Establezca el contexto del clúster.
    ibmcloud oc cluster config -c CLUSTER_NAME_OR_ID
    
  4. Inicie una sesión en el clúster.
    oc login -u apikey -p API_KEY [--server=PRIVATE_SERVICE_ENDPOINT]
    

Iniciar sesión con un ID de servicio

Utilice un identificador de servicio cuando las aplicaciones de otros clústeres o nubes necesiten acceder a los servicios de su clúster, o cuando necesite credenciales que no estén vinculadas a un usuario concreto.

  1. Crear un ID de servicio.
    ibmcloud iam service-id-create CLUSTER_NAME-id --description "Service ID for cluster CLUSTER_NAME"
    
  2. Asigna una política de IAM al ID del servicio.
    ibmcloud iam service-policy-create SERVICE_ID --service-name containers-kubernetes --roles ROLE --service-instance CLUSTER_ID
    
  3. Cree una clave de API para el ID de servicio.
    ibmcloud iam service-api-key-create CLUSTER_NAME-key SERVICE_ID
    
  4. Utilice la clave de API para iniciar sesión siguiendo los pasos que se indican en Cómo iniciar sesión con una clave de API.

Protección de clústeres mediante restricciones basadas en el contexto

Ya no se admiten las listas de permitidos de puntos finales de servicios privados. Migre lo antes posible de las listas de permisos de puntos de conexión de servicios privados a restricciones basadas en el contexto. Para conocer los pasos específicos de la migración, consulta Migración de una lista de puntos de conexión permitidos de un servicio privado a restricciones basadas en el contexto(CBR).

Controle el acceso a los puntos finales de sus servicios públicos y privados mediante reglas de restricción basadas en el contexto (CBR).

Una vez que hayas concedido a los usuarios acceso a tu clúster a través de IAM de IBM Cloud, puedes añadir una capa secundaria de seguridad creando reglas CBR para los puntos de conexión de servicio públicos y privados de tu clúster. Solo se permitirán las solicitudes autorizadas dirigidas al nodo maestro de su clúster que procedan de subredes incluidas en las reglas CBR.

Si desea permitir solicitudes procedentes de una VPC distinta a aquella en la que se encuentra su clúster, debe incluir la dirección IP del punto de conexión del servicio en la nube correspondiente a esa VPC en las reglas CBR.

Por ejemplo, para acceder al punto final de servicio en la nube privado del clúster, debe conectarse a la red clásica o a la red de VPC de IBM Cloud mediante una VPN o IBM Cloud Direct Link. Puedes especificar únicamente la subred para el túnel VPN o de Direct Link en tus reglas CBR, de modo que solo los usuarios autorizados de tu organización puedan acceder al punto final del servicio de nube privada desde esa subred.

Las reglas CBR públicas (si su clúster tiene un punto final de servicio público) también pueden ayudar a evitar que los usuarios accedan a su clúster una vez revocada su autorización. Cuando un usuario abandone la organización, eliminará sus permisos de IBM Cloud IAM que le otorgan acceso al clúster. Sin embargo, es posible que el usuario haya copiado el archivo kubeconfig de administración de un clúster, lo que le da acceso a dicho clúster. Si dispone de una regla CBR pública que solo permite el acceso a los servidores maestros de su clúster desde subredes públicas conocidas que pertenecen a su organización, se bloqueará cualquier intento de acceso del usuario desde otra dirección IP pública.

Las subredes de los nodos de trabajo se añaden y se eliminan automáticamente de la implementación de CBR del backend (pero no de las reglas ni de las zonas de CBR), de modo que los nodos de trabajo siempre puedan acceder al nodo maestro del clúster y los usuarios no tengan que añadirlas específicamente a sus propias reglas de CBR.

Para obtener más información sobre cómo proteger su clúster con reglas CBR, consulte Protección de los recursos del clúster con restricciones basadas en el contexto y Ejemplos de escenarios de restricciones basadas en el contexto.