Tous les produits
Search
Centre de documentation

API Gateway:Utiliser RAM pour gérer les autorisations d'API

Dernière mise à jour :Aug 09, 2026

Utilisez Resource Access Management (RAM) pour accorder à vos employés des autorisations spécifiques sur les ressources API Gateway, telles que les groupes d'API, les API, les plug-ins et les applications.

Remarque

Ignorez cette rubrique si vous n'avez pas besoin de gérer les autorisations pour les API.

  • Les utilisateurs RAM peuvent consulter, créer ou supprimer des groupes d'API, des API ou des plug-ins dans API Gateway. Ils ne sont pas propriétaires de ces ressources : le compte Alibaba Cloud peut révoquer leurs autorisations à tout moment.

  • L'autorisation basée sur les tags permet d'isoler les ressources entre le compte Alibaba Cloud et les utilisateurs RAM.

  • Avant de gérer les autorisations d'API avec RAM, familiarisez-vous avec RAM et API Gateway. Le centre d'aide Alibaba Cloud propose une documentation sur ces services pour vous aider à les prendre en main.

Aperçu des politiques

Une politique définit les autorisations à l'aide de quatre éléments : Effect, Resource, Action et Condition.

1. Politique système

API Gateway fournit deux politiques système intégrées. Consultez-les sur la page Policies de la console RAM. image

  • AliyunApiGatewayFullAccess : accorde des autorisations de gestion complètes sur toutes les ressources API Gateway, y compris les groupes d'API, les API, les politiques de limitation du débit et les applications.

  • AliyunApiGatewayReadOnlyAccess : accorde un accès en lecture seule à toutes les ressources API Gateway, y compris les groupes d'API, les API, les politiques de limitation du débit et les applications. Toutefois, l'utilisateur RAM ne peut pas gérer les ressources.

2. Politique personnalisée

Créez une politique personnalisée pour accorder des autorisations plus fines sur des actions ou des ressources spécifiques. Par exemple, créez une politique personnalisée pour accorder des autorisations de modification sur GetUsers. Pour consulter vos politiques personnalisées, connectez-vous à la console RAM, choisissez Permissions > Policies, puis sélectionnez Custom Policy dans la liste déroulante Policy Type.

Syntaxe des politiques

Une politique utilise une syntaxe spécifique pour définir les autorisations. Attachez une politique à un utilisateur ou à un groupe pour accorder des autorisations sur des ressources spécifiques.

Exemple :

{
  "Version": "1",
  "Statement": [
    {
  "Action": "apigateway:Describe*",
      "Resource": "*",
      "Effect": "Allow"
    }
  ]
}
                

Cette politique permet à un utilisateur RAM d'interroger toutes les ressources API Gateway.

The Action element describes one or more API operations. The parameters in the Action element must be specified in the following format:

 "Action":"<service-name>:<action-name>"

Paramètres :

  • service-name : le nom du service Alibaba Cloud. Définissez la valeur sur apigateway pour API Gateway.

  • action-name : le nom d'une opération d'API. Prend en charge le caractère générique (*). La section « Syntaxe des ressources » répertorie toutes les opérations disponibles.

    Si vous définissez « Action » sur « apigateway:Describe* », l'utilisateur RAM autorisé dispose des autorisations nécessaires pour interroger toutes les ressources dans API Gateway.

    Si vous définissez « Action » sur « apigateway:* », l'utilisateur RAM autorisé dispose des autorisations nécessaires pour gérer toutes les ressources dans API Gateway.

Syntaxe des ressources

L'élément Resource spécifie les objets couverts par une instruction. Dans API Gateway, vous pouvez spécifier des groupes d'API, des politiques de limitation du débit et des applications. Utilisez le format suivant :

acs:<service-name>:<region>:<account-id>:<relative-id>

Paramètres :

  • acs : l'espace de noms du cloud public Alibaba Cloud.

  • service-name : le nom du service Alibaba Cloud. Définissez la valeur sur apigateway pour API Gateway.

  • region : la région où la politique s'applique. Utilisez le caractère générique (*) pour toutes les régions.

  • account-id : l'ID du compte, par exemple 123456789012****. Prend en charge le caractère générique (*).

  • relative-id : l'identifiant de la ressource, spécifié dans un format semblable à un chemin de fichier.

Un RDPath se présente sous l'un des formats suivants :

acs:apigateway:$regionid:$accountid:apigroup/$groupId

Exemple :

acs:apigateway:*:*:apigroup/cbd157704e624ab58a204fd3e0b5ad79

Le tableau suivant répertorie les opérations d'API disponibles pour le paramètre action-name dans les politiques API Gateway. Pour plus d'informations, consultez la « Référence de l'API API Gateway ».

action-name

Description

Resource

CreateApiGroup

Crée un groupe d'API.

acs:apigateway:$regionid:$accountid:apigroup/*

ModifyApiGroup

Modifie un groupe d'API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeleteApiGroup

Supprime un groupe d'API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeApiGroups

Interroge les groupes d'API.

acs:apigateway:$regionid:$accountid:apigroup/*

CreateApi

Crée une API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeployApi

Publie une API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

AbolishApi

Dépublie une API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DeleteApi

Supprime une API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeApis

Interroge les API.

acs:apigateway:$regionid:$accountid:apigroup/*

CreatePlugin

Crée un plug-in.

acs:apigateway:$regionid:$accountid:plugin/*

ModifyPlugin

Modifie un plug-in.

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DeletePlugin

Supprime un plug-in.

acs:apigateway:$regionid:$accountid:plugin/$pluginId

AttachPlugin

Lie un plug-in à une API.

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DetachPlugin

Détache un plug-in d'une API.

acs:apigateway:$regionid:$accountid:plugin/$pluginId

DescribePluginsByApi

Interroge les plug-ins liés à une API.

acs:apigateway:$regionid:$accountid:plugin/$pluginId

CreateApp

Crée une application.

acs:apigateway:$regionid:$accountid:app/*

ModifyApp

Modifie une application.

acs:apigateway:$regionid:$accountid:app/$appId

DeleteApp

Supprime une application.

acs:apigateway:$regionid:$accountid:app/$appId

DescribeAppAttributes

Interroge les applications.

acs:apigateway:$regionid:$accountid:app/$appId

SetApisAuthorities

Autorise une application à appeler des API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

DescribeAuthorizedApps

Interroge les applications autorisées à appeler une API.

acs:apigateway:$regionid:$accountid:apigroup/$groupId

SetVpcAccess

Crée une autorisation d'accès au réseau privé virtuel (VPC).

acs:apigateway:$regionid:$accountid:vpcaccess/*

RemoveVpcAccess

Supprime une autorisation d'accès VPC.

acs:apigateway:$regionid:$accountid:vpcaccess/*

DescribeVpcAccesses

Interroge les autorisations d'accès VPC.

acs:apigateway:$regionid:$accountid:vpcaccess/*

DescribeInstances

Interroge les instances dédiées.

acs:apigateway:$regionid:$accountid:instance/$instanceId

Exemples

Autoriser un utilisateur RAM à interroger toutes les API :

{
          "Version": "1",
          "Statement": [
            {
                      "Action": "apigateway:Describe*",
                      "Resource":"acs:apigateway:$regionid:$accountid:apigroup/*",
                      "Effect": "Allow"
            }
          ]
}                        

Autoriser un utilisateur RAM à interroger tous les groupes d'API auxquels le tag version:v1 est associé :

{
	  "Version": "1",
	  "Statement": [
	    {
      		"Action": "apigateway:Describe*",
	      	"Resource":"acs:apigateway:$regionid:$accountid:apigroup/*",
	      	"Effect": "Allow", 
                 "Condition": {
                        "StringEquals": {
                             "apigateway:tag/version": "v1"
                        }
                 }
             }
	  ]
}			

Autoriser un utilisateur RAM à gérer toutes les API d'un groupe d'API :

{
          "Version": "1",
          "Statement": [
            {
                      "Action": "apigateway:*",
                      "Resource": [
                              "acs:apigateway:$regionid:$accountid:apigroup/$groupId",
                              "acs:apigateway:$regionid:$accountid:app/$appId",
                              "acs:apigateway:$regionid:$accountid:vpcaccess/*"
                      ],
                      "Effect": "Allow"
            }
          ]
}

Note: In the preceding examples, you can specify the wildcard character (*) for variables based on your business requirements.