Microservices Engine (MSE) vous permet d'accorder des autorisations opérationnelles sur MSE aux utilisateurs RAM, évitant ainsi les risques de sécurité liés à l'exposition des AccessKeys de votre compte Alibaba Cloud. Créez un utilisateur RAM et accordez-lui des autorisations pour qu'il puisse utiliser MSE.
Cas d'utilisation
Votre entreprise utilise Microservices Engine (MSE) et doit gérer les autorisations des employés en fonction de leurs rôles :
Pour des raisons de sécurité, vous ne souhaitez pas exposer directement les AccessKeys de votre compte Alibaba Cloud aux employés. Vous préférez accorder des autorisations à leurs comptes respectifs.
Les utilisateurs n'ont accès qu'aux ressources pour lesquelles ils sont autorisés. Tous les coûts sont facturés au compte principal de l'entreprise ; les comptes individuels ne nécessitent donc pas de facturation séparée.
Vous pouvez révoquer les autorisations d'un compte utilisateur ou supprimer le compte à tout moment.
En tant que produit managé, MSE implique deux rôles principaux : les développeurs et le personnel opérationnel. Le personnel opérationnel gère les clusters, les namespaces et les autorisations, tandis que les développeurs gèrent les configurations et les services.
Utilisation
La figure suivante illustre le lien de gestion du moteur et ses autorisations d'accès. Une fois qu'un compte Alibaba Cloud a accordé des autorisations à un utilisateur RAM, celui-ci dispose des autorisations correspondantes dans la console et via l'OpenAPI.

Pour configurer l'authentification d'accès au lien de connexion directe au moteur, qui permet à un client Nacos d'accéder au moteur Nacos de MSE en tant qu'utilisateur RAM, consultez Autoriser l'accès SDK.
Étape 1 : Créer un utilisateur RAM
Connectez-vous à la console RAM avec votre compte Alibaba Cloud et créez un utilisateur RAM.
Connectez-vous à la console RAM avec votre compte Alibaba Cloud (compte principal) ou un utilisateur RAM disposant d'autorisations administratives (
AliyunRAMFullAccess).Dans le volet de navigation de gauche, choisissez .
Sur la page Users, cliquez sur Create User.
-
Sur la page Create User, dans la section User Account Information, définissez les informations de base de l'utilisateur.
Logon Name (obligatoire) : Le nom peut contenir des lettres, des chiffres, des points (.), des traits d'union (-) et des underscores (_). Sa longueur maximale est de 64 caractères.
Display Name (facultatif) : Le nom peut comporter jusqu'à 128 caractères.
Tag (facultatif) : Cliquez sur
, puis saisissez une clé de tag et une valeur de tag. Les tags vous aident à gérer les utilisateurs.
RemarqueCliquez sur Add User pour créer plusieurs utilisateurs RAM simultanément.
-
Dans la section Access Method, sélectionnez Console Password Logon ou Programmatic Access.
-
Console Password Logon : Configurez les paramètres de sécurité de base pour la connexion à la console, tels que la génération automatique ou la personnalisation d'un mot de passe de connexion, l'exigence de réinitialisation du mot de passe lors de la prochaine connexion et l'authentification multifacteur (MFA).
RemarqueSi vous définissez un mot de passe de connexion personnalisé, celui-ci doit respecter les règles de complexité configurées sous . Pour plus d'informations sur la définition des règles de complexité des mots de passe, consultez Définir une politique de mot de passe pour les utilisateurs RAM.
Programmatic Access : Une paire AccessKey est automatiquement générée pour l'utilisateur RAM afin d'accéder à Alibaba Cloud via une API ou d'autres outils de développement.
RemarqueNous vous recommandons de sélectionner uniquement l'accès à la console pour les utilisateurs RAM. Cela empêche les anciens employés d'accéder aux ressources Alibaba Cloud avec une AccessKey.
-
Cliquez sur OK.
Étape 2 : Ajouter des autorisations à l'utilisateur RAM
Vous devez accorder les autorisations requises à un utilisateur RAM avant qu'il ne puisse utiliser les services Alibaba Cloud.
Connectez-vous à la console RAM en tant qu'administrateur RAM.
Dans le volet de navigation de gauche, choisissez Identities > Users.
-
Sur la page Users, recherchez l'utilisateur RAM cible et cliquez sur Add Permissions dans la colonne Actions.
Vous pouvez également sélectionner plusieurs utilisateurs RAM et cliquer sur Add Permissions sous la liste des utilisateurs pour accorder des autorisations par lots.
-
Dans le panneau Grant Permission, sélectionnez Policies. Dans la zone de texte, saisissez le nom de la politique que vous souhaitez ajouter, cliquez sur la politique dans les résultats de recherche, puis cliquez sur OK.
-
Politiques système (autorisation à grain grossier)
MSE propose deux politiques système pour l'autorisation à grain grossier.
Policy name
Description
AliyunMSEFullAccess
Accorde à un utilisateur RAM des autorisations de gestion complètes dans la console.
AliyunMSEReadOnlyAccess
Accorde à un utilisateur RAM un accès en lecture seule à toutes les ressources du compte Alibaba Cloud.
RemarqueAccordez AliyunMSEFullAccess au personnel opérationnel qui doit créer et supprimer des ressources, et AliyunMSEReadOnlyAccess aux développeurs qui n'ont besoin que de visualiser les ressources. Pour un contrôle plus granulaire des autorisations des développeurs, utilisez des politiques personnalisées.
-
Politiques personnalisées (autorisation à grain fin)
RemarquePour une autorisation plus fine, créez des politiques personnalisées.
Pour obtenir des informations sur la granularité des autorisations et les configurations des registres Nacos, consultez Autorisation à grain fin pour les registres. Pour obtenir des informations sur la granularité des autorisations et les configurations des centres de configuration Nacos, consultez Autorisation à grain fin pour les centres de configuration.
Le tableau suivant établit une correspondance entre les actions MSE et les permissions RAM pour vous aider à créer des politiques personnalisées.
Action
Description
Read-only
CreateCluster
Crée un cluster.
No
DeleteCluster
Supprime un cluster.
No
QueryClusterDetail
Récupère les détails d'un cluster.
Yes
RestartCluster
Redémarre un cluster.
No
RetryCluster
Réessaie une opération de cluster.
No
UpdateCluster
Met à jour un cluster.
No
CreateNacosConfig
Crée une configuration Nacos.
No
DeleteNacosConfig
Supprime une configuration Nacos.
No
DeleteNacosConfigs
Supprime des configurations Nacos par lot.
No
GetNacosConfig
Récupère une configuration Nacos.
Yes
GetNacosHistoryConfig
Récupère l'historique d'une configuration Nacos.
Yes
UpdateNacosConfig
Met à jour une configuration Nacos.
No
UpdateNacosInstance
Met à jour une instance.
No
DeleteNacosService
Supprime un service.
No
CreateNacosService
Crée un service.
No
UpdateNacosService
Met à jour un service.
No
CreateNacosInstance
Crée une instance.
No
UpdateNacosCluster
Met à jour un cluster de services.
No
Les opérations API suivantes prennent en charge uniquement l'autorisation au niveau du compte et ne permettent pas le filtrage par instance.
Action
Description
Read-only
ListClusters
Récupère une liste de clusters.
Yes
ListServiceQuotas
Interroge les limites de quota. Nous vous recommandons d'accorder cette autorisation.
Yes
Les opérations API suivantes prennent en charge uniquement l'autorisation au niveau de l'instance et ne permettent pas un filtrage à grain fin.
Action
Description
Read-only
ListNacosConfigs
Récupère une liste de configurations Nacos.
Yes
ListNacosHistoryConfigs
Récupère l'historique des versions des configurations Nacos.
Yes
ListAnsServices
Récupère une liste de tous les services.
Yes
ListAnsServiceClusters
Récupère les clusters au sein d'un service.
Yes
ListAnsInstances
Récupère les instances d'un service.
Yes
Exemple 1 : Accorder à un utilisateur RAM des autorisations de lecture et d'écriture sur l'instance
mse-cn-0pp1j8om80a.RemarqueDans ce document,
mse-cn-0pp1j8om80afait référence à un InstanceId, et non à un ClusterId.{ "Statement": [ { "Action": "mse:ListClusters", "Resource": "acs:mse:*:*:*", "Effect": "Allow" }, { "Action": "mse:*", "Resource": "acs:mse:*:*:instance/mse-cn-0pp1j8om80a", "Effect": "Allow" } ], "Version": "1" }Exemple 2 : Accorder à un utilisateur RAM des autorisations de lecture sur toutes les instances.
{ "Statement": [ { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": "acs:mse:*:*:*", "Effect": "Allow" } ], "Version": "1" }Exemple 3 : Accorder à un utilisateur RAM des autorisations de lecture et d'écriture sur les configurations de l'instance
mse-cn-0pp1j8om80a, limitées au namespace3fd98c48-a709-4061-bba1-e341d79d681b.Ce scénario complexe nécessite les autorisations suivantes :
L'autorisation de lister les clusters, qui permet à l'utilisateur de trouver le cluster cible.
Toutes les autorisations de lecture sur le cluster, qui permettent à l'utilisateur d'accéder à l'instance et de visualiser toutes ses ressources.
L'autorisation de créer et de modifier des configurations dans le namespace spécifié.
{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b" ], "Effect": "Allow" } ] }Exemple 4 : Accorder à un utilisateur RAM des autorisations de lecture et d'écriture sur la configuration avec un DataId spécifique dans l'instance
mse-cn-0pp1j8om80a.Ce scénario complexe nécessite les autorisations suivantes :
L'autorisation de lister les clusters, qui permet à l'utilisateur de trouver le cluster cible.
Toutes les autorisations de lecture sur le cluster, qui permettent à l'utilisateur d'accéder à l'instance et de visualiser toutes ses ressources.
L'autorisation de créer et de modifier des configurations dans le namespace spécifié.
L'autorisation de créer et de modifier des configurations dans le groupe spécifié.
Format ARN de la ressource :
acs:mse:*:*:instance/${instanceId}/${namespaceId}/${groupId}/${dataId}
{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b/DEFAULT_GROUP/prod.yaml" ], "Effect": "Allow" } ] }Exemple 5 : Accorder à un utilisateur RAM des autorisations de lecture et d'écriture sur la configuration d'un service spécifique dans l'instance
mse-cn-0pp1j8om80a.Ce scénario complexe nécessite les autorisations suivantes :
L'autorisation de lister les clusters, qui permet à l'utilisateur de trouver le cluster cible.
Toutes les autorisations de lecture sur le cluster, qui permettent à l'utilisateur d'accéder à l'instance et de visualiser toutes ses ressources.
L'autorisation de créer et de modifier des configurations dans le namespace spécifié.
L'autorisation de créer et de modifier des configurations dans le groupe spécifié.
-
Format ARN de la ressource :
acs:mse:*:*:instance/${instanceId}/${namespaceId}/${groupId}/${serviceName}{ "Version": "1", "Statement": [{ "Action": [ "mse:ListClusters" ], "Resource": [ "acs:mse:*:*:*" ], "Effect": "Allow" }, { "Action": [ "mse:List*", "mse:Query*", "mse:Get*" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8" ], "Effect": "Allow" }, { "Action": [ "mse:CreateNacosConfig", "mse:UpdateNacosConfig" ], "Resource": [ "acs:mse:*:*:instance/mse-cn-0pp1j8om8/3fd98c48-a709-4061-bba1-e341d79d681b/DEFAULT_GROUP/test-service" ], "Effect": "Allow" } ] }
-
Dans le panneau Grant Permission, une fois les autorisations accordées, cliquez sur Close.
Étapes suivantes
Après avoir créé un utilisateur RAM, partagez ses identifiants de connexion (nom d'utilisateur et mot de passe) ou son AccessKey. L'utilisateur peut ensuite utiliser ces identifiants pour se connecter à la console ou effectuer des appels API.
-
Se connecter à la console
Accédez à la page RAM User Logon.
-
Sur la page RAM User Logon, saisissez le nom d'utilisateur RAM et cliquez sur Next. Saisissez le mot de passe de l'utilisateur RAM, puis cliquez sur Log On.
RemarqueLe nom de connexion de l'utilisateur RAM est au format
<$username>@<$AccountAlias>ou<$username>@<$AccountAlias>.onaliyun.com. <$AccountAlias> est l'alias du compte. Si aucun alias de compte n'est défini, l'ID du compte Alibaba Cloud est utilisé par défaut. Depuis la page d'accueil de l'utilisateur, cliquez sur un produit auquel vous êtes autorisé à accéder.
-
Appeler des opérations API
Utilisez l'AccessKey ID et l'AccessKey Secret de l'utilisateur RAM dans votre code pour effectuer des appels API.