Tous les produits
Search
Centre de documentation

Container Service for Kubernetes:Restrict worker RAM role permissions

Dernière mise à jour :Sep 16, 2026

Restreignez les autorisations du rôle Resource Access Management (RAM) attribué aux nœuds de calcul en appliquant le principe du moindre privilège afin d'améliorer la sécurité de vos clusters ACK managés.

Important

La modification des politiques RAM peut entraîner des défaillances des applications ou des modules complémentaires si des autorisations requises sont supprimées. Effectuez des tests dans un environnement de préproduction avant d'appliquer les modifications en production.

Prérequis

Avant de commencer, assurez-vous que :

Étape 1 : Évaluer les autorisations actuelles

Déterminez si le rôle RAM des nœuds de calcul dispose d'autorisations excessives qui doivent être restreintes.

  1. Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom du cluster cible. Sous l'onglet Basic Information, cliquez sur le lien situé à côté de Worker RAM Role.

  3. Dans la console RAM, accédez à l'onglet Permissions de la page Role.

    • Si aucune politique n'est associée, aucune action supplémentaire n'est requise. Le rôle RAM des nœuds de calcul ne dispose pas d'autorisations supplémentaires.

    • Si des politiques sont associées (par exemple, k8sWorkerRolePolicy-db8ad5c7***), le rôle peut disposer d'autorisations supérieures au nécessaire. Évaluez la situation en fonction de vos besoins métier et du principe du moindre privilège, puis passez à l'étape suivante.

Remarque

Examinez chaque politique associée pour identifier les actions API Alibaba Cloud qu'elle accorde. Cela établit une base de référence avant toute modification.

Étape 2 : Mettre à niveau les modules complémentaires

Historiquement, les modules complémentaires ACK s'appuyaient sur le rôle RAM des nœuds de calcul pour accéder aux ressources cloud. Les modules complémentaires ACK actuels utilisent l'authentification basée sur des jetons (rôles de service managés). Mettez à niveau les modules complémentaires de votre cluster et analysez les journaux d'audit afin de supprimer les autorisations inutiles du rôle RAM des nœuds de calcul et de limiter l'impact d'éventuels incidents de sécurité.

Important

Mettez à niveau les modules complémentaires un par un. Assurez-vous que chaque mise à niveau aboutit avant de lancer la suivante. Lisez les remarques relatives à chaque module complémentaire avant la mise à niveau.

Pour plus d'informations, consultez la rubrique Gérer les modules complémentaires.

Modules complémentaires installés via Add-ons

Sur la page Add-ons, mettez à niveau chaque module complémentaire installé vers au moins la version minimale indiquée ci-dessous. Pour les modules complémentaires déjà à la version minimale ou supérieure, redéployez-les à l'aide de la commande répertoriée dans le tableau, ou redéployez-les via la console.

Surveillance et observabilité

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

metrics-server

v0.3.9.4-ff225cd-aliyun

kubectl -n kube-system rollout restart deployment/metrics-server

Aucune

alicloud-monitor-controller

v1.5.5

kubectl -n kube-system rollout restart deployment/alicloud-monitor-controller

Aucune

arms-prometheus

1.1.11

kubectl -n arms-prom rollout restart deployment/arms-prometheus-ack-arms-prometheus

Aucune

ack-cost-exporter

1.0.10

kubectl -n kube-system rollout restart deployment/ack-cost-exporter

Avant la mise à niveau, accordez des autorisations pour le rôle de gestion des coûts.

ack-node-problem-detector

1.2.16

kubectl -n kube-system rollout restart deployment/ack-node-problem-detector-eventer

Aucune

Mise en réseau

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

terway

v1.0.10.333-gfd2b7b8-aliyun

kubectl -n kube-system rollout restart daemonset/terway

Mettez à niveau Terway selon le mode Terway de votre cluster. Pour plus d'informations, consultez la rubrique Utiliser le plug-in réseau Terway. Après la mise à niveau, vérifiez la configuration Terway.

terway-eni

v1.0.10.333-gfd2b7b8-aliyun

kubectl -n kube-system rollout restart daemonset/terway-eni

Consultez les remarques pour terway.

terway-eniip

v1.0.10.333-gfd2b7b8-aliyun

kubectl -n kube-system rollout restart daemonset/terway-eniip

Consultez les remarques pour terway.

terway-controlplane

v1.2.1

kubectl -n kube-system rollout restart deployment/terway-controlplane

Aucune

mse-ingress-controller

1.1.5

kubectl -n mse-ingress-controller rollout restart deployment/ack-mse-ingress-controller

Avant la mise à niveau, accordez des autorisations pour le rôle Microservices Engine (MSE) managé.

Stockage

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

csi-plugin

v1.18.8.45-1c5d2cd1-aliyun

kubectl -n kube-system rollout restart daemonset/csi-plugin

Aucune

csi-provisioner

v1.18.8.45-1c5d2cd1-aliyun

kubectl -n kube-system rollout restart deployment/csi-provisioner

Aucune

storage-operator

v1.18.8.55-e398ce5-aliyun

kubectl -n kube-system rollout restart deployment/storage-auto-expanderkubectl -n kube-system rollout restart deployment/storage-cnfskubectl -n kube-system rollout restart deployment/storage-monitorkubectl -n kube-system rollout restart deployment/storage-snapshot-managerkubectl -n kube-system rollout restart deployment/storage-operator

Aucune

alicloud-disk-controller

v1.14.8.51-842f0a81-aliyun

kubectl -n kube-system rollout restart deployment/alicloud-disk-controller

Aucune

flexvolume

v1.14.8.109-649dc5a-aliyun

kubectl -n kube-system rollout restart daemonset/flexvolume

Migrez FlexVolume vers CSI.

Journalisation

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

logtail-ds

v1.0.29.1-0550501-aliyun

kubectl -n kube-system rollout restart daemonset/logtail-dskubectl -n kube-system rollout restart deployment/alibaba-log-controller

Aucune

loongcollector

v3.0.2

kubectl -n kube-system rollout restart daemonset/loongcollector-dskubectl -n kube-system rollout restart deployment/loongcollector-operator

Aucune

Sécurité et gestion des images

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

aliyun-acr-credential-helper

v23.02.06.2-74e2172-aliyun

kubectl -n kube-system rollout restart deployment/aliyun-acr-credential-helper

Avant la mise à niveau, accordez des autorisations pour le rôle Container Registry (ACR) managé. Si vous ne disposez pas d'autorisations RAM personnalisées et n'avez pas besoin de tirer des images entre comptes, accédez à Add-ons et définissez tokenMode sur managedRole. Si vous n'avez pas besoin de tirer des images privées sans identifiants, désinstallez ce module complémentaire.

ack-onepilot

3.0.11

kubectl -n ack-onepilot rollout restart deployment/ack-onepilot-ack-onepilot

Avant la mise à niveau, accordez des autorisations pour le rôle MSE managé.

Cluster Autoscaler (installé via un pool de nœuds)

Module complémentaire

Version minimale

Commande de redéploiement

Remarques

cluster-autoscaler

v1.3.1-bcf13de9-aliyun

kubectl -n kube-system rollout restart deployment/cluster-autoscaler

Pour vérifier la version actuelle, utilisez l'une des méthodes suivantes :

Vérifier la configuration Terway

Si votre cluster a installé terway, terway-eni ou terway-eniip, vérifiez que le ConfigMap Terway contient le chemin d'accès correct aux identifiants.

  1. Exécutez la commande suivante pour modifier le ConfigMap Terway :

       kubectl edit cm eni-config -n kube-system
  2. Dans la section eni_conf, recherchez la ligne suivante :

       "credential_path": "/var/addon/token-config",
    • Si cette ligne est présente, aucune modification n'est nécessaire.

    • Si cette ligne est absente, ajoutez-la sous la configuration min_pool_size.

  3. Redéployez la charge de travail Terway en exécutant la commande de redéploiement correspondante du tableau de mise en réseau ci-dessus.

Étape 3 : Collecter les journaux d'audit

Configurez la journalisation d'audit pour suivre les opérations API Alibaba Cloud effectuées par le rôle RAM des nœuds de calcul. Ces données vous indiquent quelles autorisations sont encore utilisées et lesquelles peuvent être supprimées en toute sécurité.

Remarque

Collectez les journaux d'audit pendant au moins une semaine.

  1. Connectez-vous à la console ActionTrail.

  2. Créez une piste mono-compte pour la région où se trouve le cluster. Lors de la création de la piste, sélectionnez Delivery to Log Service. Pour plus d'informations, consultez la rubrique Créer une piste mono-compte.

Pour obtenir la liste complète des services pris en charge par ActionTrail, consultez la rubrique Services Alibaba Cloud pris en charge.

Étape 4 : Tester les fonctionnalités du cluster

Après avoir mis à niveau les modules complémentaires et redéployé les charges de travail, vérifiez que les fonctionnalités principales du cluster fonctionnent toujours correctement.

Catégorie

Cas de test

Référence

Calcul

Effectuez un scale-out et un scale-in des nœuds.

Mettre à l'échelle manuellement un pool de nœuds

Réseau

Vérifiez que les adresses IP sont attribuées aux pods.

Déploiements et versions

Stockage

Déployez des charges de travail utilisant un stockage externe (le cas échéant).

Stockage - CSI

Surveillance

Confirmez la disponibilité des données de surveillance et d'alerte.

Observabilité

Élasticité

Déclenchez la mise à l'échelle automatique des nœuds (le cas échéant).

Activer la mise à l'échelle automatique des nœuds

Sécurité

Tirez une image privée sans identifiants (le cas échéant).

Utiliser aliyun-acr-credential-helper pour tirer des images sans utiliser de secret

Important

En plus des tests ci-dessus, testez la logique métier des applications déployées dans votre cluster.

Étape 5 : Analyser les journaux d'audit

Après avoir collecté les journaux pendant au moins une semaine, interrogez les données pour identifier les opérations API effectuées par le rôle RAM des nœuds de calcul.

  1. Connectez-vous à la console Simple Log Service (SLS).

  2. Dans la section Projects, cliquez sur le projet spécifié à l'étape 3.

    image

  3. Sous l'onglet Log Storage > Logstore, cliquez sur le Logstore de destination. Le Logstore est nommé actiontrail_<trail_name>.

  4. Exécutez la requête suivante pour répertorier les opérations API appelées via le jeton Security Token Service (STS) du rôle RAM des nœuds de calcul. Remplacez <worker_role_name> par le nom du rôle RAM des nœuds de calcul de votre cluster. Les résultats affichent les services Alibaba Cloud et les opérations API appelés. Utilisez ces données à l'étape 6 pour décider des autorisations à conserver et de celles à supprimer.

       * and event.userIdentity.userName: <worker_role_name> | select "event.serviceName", "event.eventName", count(*) as total GROUP BY "event.eventName", "event.serviceName"

Étape 6 : Supprimer les autorisations inutilisées

Sur la base de l'analyse des journaux d'audit, supprimez les autorisations dont le rôle RAM des nœuds de calcul n'a pas besoin.

  1. Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom du cluster cible. Sous l'onglet Basic Information, cliquez sur le lien situé à côté de Worker RAM Role.

  3. Sous l'onglet Permissions de la page Role, cliquez sur la stratégie d'accès cible pour accéder à l'onglet Policy Content. Cliquez sur Modify Policy.

    Important

    Avant de modifier le document de stratégie, effectuez une sauvegarde. Cela vous permettra de revenir à la configuration d'autorisation précédente si nécessaire.

  4. Supprimez les autorisations inutiles en vous basant sur l'analyse des journaux d'audit de l'étape 5. Par exemple, supprimez de la stratégie les autorisations Action qui n'ont pas été invoquées pendant votre période d'audit. Si la requête n'a renvoyé aucun résultat, vous pouvez détacher la stratégie entière du rôle en toute sécurité.

  5. Redéployez les charges de travail à l'aide des commandes répertoriées à l'étape 2.

  6. Répétez les étapes 4, 5 et 6 jusqu'à ce que le rôle RAM des nœuds de calcul ne dispose que des autorisations minimales requises par les modules complémentaires ou les applications.

Références