Para aplicar el principio de mínimo privilegio, asigne un rol de Resource Access Management (RAM) personalizado a node pools específicos de su clúster de ACK. En lugar de compartir un único rol predeterminado entre todos los nodos, lo cual puede generar permisos excesivos, los roles personalizados aíslan los permisos en cada node pool.
Un rol de RAM de worker personalizado solo se puede asignar al crear un clúster o un nuevo node pool. No es posible modificar el rol de RAM de worker de un node pool existente.
Requisitos previos
Antes de empezar, asegúrese de cumplir con a continuación requisitos:
Versión del clúster: un clúster administrado de ACK que ejecute Kubernetes 1.22 o posterior. Consulte Create an ACK managed cluster.
-
Permisos del operador: el usuario o rol de RAM utilizado para crear el node pool debe contar con el permiso
ram:PassRole.NotaSi el usuario o rol de RAM ya tiene el permiso
AliyunCSFullAccess, no se requiere el permisoram:PassRole.
Paso 1: Cree un rol de RAM personalizado
Cree el rol de RAM que desea asignar a su node pool. Este rol debe cumplir dos requisitos:
Nombre: el nombre del rol no debe comenzar con
KubernetesMasterRole-ni conKubernetesWorkerRole-.Entidad de confianza: el servicio de confianza debe ser Cloud Service.
Use cualquiera de a continuación métodos para crear el rol.
Console
Siga las instrucciones de Create a regular service role.
OpenAPI o Terraform
Cree el rol mediante OpenAPI o Terraform. Después, configure la política de confianza como se muestra a continuación. Para más detalles sobre cómo editar la política de confianza, consulte Edit the trust policy of a RAM role.
{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"ecs.aliyuncs.com"
]
}
}
],
"Version": "1"
}
Paso 2: Asigne el rol a un nuevo node pool
Una vez creado el rol, adjúntelo durante la creación de un clúster o de un node pool.
Inicie sesión en la consola de ACK.
Vaya a la página de creación del clúster o del node pool.
Expanda la sección Advanced Options y establezca Worker RAM Role con el rol que creó en Step 1.
Para obtener instrucciones detalladas, consulte:
Pasos siguientes
Un rol de RAM recién creado no tiene permisos de forma predeterminada. Otorgue los permisos que requiera cada node pool y revoque los innecesarios.
Otorgar permisos
Console: Create a custom policy y Grant permissions to a RAM role
OpenAPI: CreatePolicy y AttachPolicyToRole
Terraform: Create a RAM role and grant permissions using Terraform
Revocar permisos
Revoque cuanto antes los permisos que ya no sean necesarios. Consulte Revoke permissions from a RAM role.