Cet article explique comment utiliser le rôle RAM de l'instance via l'API après l'activation du service RAM et se concentre sur les étapes.
Utilisation du rôle RAM d'instance via l'API
Restrictions d'utilisation
Les restrictions suivantes s'appliquent à l'utilisation du rôle RAM d'instance :
Seules les instances ECS de type réseau privé (VPC) peuvent utiliser le rôle RAM d'instance.
Une instance ECS ne peut se voir attribuer le rôle RAM qu'à une seule instance à la fois.
Lorsque vous avez accordé le rôle RAM d'instance à une instance ECS et que vous souhaitez accéder à l'API du produit cloud dans une application déployée au sein de l'instance ECS, vous devez obtenir le jeton d'autorisation temporaire du rôle RAM d'instance via les métadonnées de l'instance. Voir 5. (Facultatif) Obtenez un jeton d'autorisation temporaire.
Si vous utilisez le sous-compte utilisateur RAM pour utiliser le rôle RAM d'instance, vous devez autoriser l'utilisateur RAM à utiliser le rôle RAM d'instance via le compte cloud 6. (Facultatif).
Prérequis
Vous avez activé le service RAM Veuillez vous référer au document RAM pour connaître la méthode d'activation pour activer le service RAM.
1. Créez un rôle RAM d'instance
Appelez l'interface CreateRole pour créer un rôle RAM d'instance.
Définissez le paramètre RoleName, par exemple, définissez sa valeur sur EcsRamRoleDocumentTesting.
Définissez AssumeRolePolicyDocument selon la politique suivante :
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "ecs.aliyuncs.com" ] } } ], "Version": "1" }
2. Rôle RAM de l'instance d'autorisation
Appelez l'interface. CreatePolicy pour créer une nouvelle stratégie d'autorisation.
Définissez le paramètre RoleName, par exemple, définissez sa valeur sur EcsRamRoleDocumentTestingPolicy.
Définissez PolicyDocument selon la stratégie suivante :
{ "Statement": [ { "Action": [ "oss:Get*", "oss:List*" ], "Effect": "Allow", "Resource": "*" } ], "Version": "1" }
Appelez la stratégie de rôle d'autorisation AttachPolicyToRole de l'interface.
Définissez le paramètre PolicyType sur Custom.
Définissez le paramètre PolicyName, tel que EcsRamRoleDocumentTestingPolicy.
Définissez le paramètre RoleName, tel que EcsRamRoleDocumentTesting.
3. Accordez le rôle RAM à l'instance
Appelez l'interface AttachInstanceRamRole pour accorder le rôle RAM à l'instance.
Définissez les paramètres RegionId et InstanceIds pour spécifier une instance ECS.
Définissez le paramètre RamRoleName, tel que EcsRamRoleDocumentTesting.
4. (Facultatif) Récupérez le rôle RAM de l'instance
Appelez l'interface DetachInstanceRamRole pour récupérer le rôle RAM de l'instance.
Définissez les paramètres RegionId et InstanceIds pour spécifier une instance ECS.
Définissez le paramètre RamRoleName, tel que EcsRamRoleDocumentTesting.
5. (Facultatif) Obtenez un jeton d'autorisation temporaire
Vous pouvez obtenir un jeton d'autorisation temporaire pour le rôle RAM de l'instance. Le jeton peut exécuter les autorisations et les ressources du rôle RAM de l'instance, et le jeton d'autorisation temporaire est automatiquement mis à jour périodiquement. Exemple :
Récupérer le jeton d'autorisation temporaire du rôle RAM de l'instance nommé EcsRamRoleDocumentTesting :
Instance Linux : Exécuter la commande curl http://100.100.100.200/latest/meta-data/Ram/ informations d'identification de sécurité/EcsRamRoleDocumentTesting.
Instances Windows : consultez la documentation pour les métadonnées de l'instance.
Obtenez un jeton d'autorisation temporaire. L'exemple renvoyé est le suivant :
{ "AccessKeyId" : "XXXXXXXXX", "AccessKeySecret" : "XXXXXXXXX", "Expiration" : "2017-11-01T05:20:01Z", "SecurityToken" : "XXXXXXXXX", "LastUpdated" : "2017-10-31T23:20:01Z", "Code" : "Success" }
6. (Facultatif) Autoriser les utilisateurs de RAM à utiliser le rôle RAM d'instance
Description
Lorsque vous autorisez un utilisateur RAM à utiliser un rôle RAM d'instance, vous devez accorder à l'utilisateur RAM les autorisations PassRole pour le rôle RAM d'instance. Parmi eux, PassRole détermine si l'utilisateur RAM peut exécuter directement les autorisations accordées par la stratégie de rôle.
Connectez-vous à la console RAM et référez-vous à la documentation pour autoriser les utilisateurs de RAM à compléter l'autorisation comme suit :
{ "Version": "2016-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecs: [ECS RAM Action]", "ecs: CreateInstance", "ecs: AttachInstanceRamRole", "ecs: DetachInstanceRAMRole" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ram:PassRole", "Resource": "*" } ] }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!