Classes CAPI dans les script includes de Serveur MID
Cloud Provisioning and Governance fournit plusieurs classes JavaScript qui effectuent des appels REST vers des fournisseurs dans le cloud. Ces classes sont appelées à partir de script includes de Serveur MID (pour Azure par défaut) ou d'appels Java dans le système (pour AWS par défaut). Si vous créez des fournisseurs, interfaces ou API CAPI personnalisés (pour n'importe quel fournisseur dans le cloud), vous pouvez utiliser des script includes de Serveur MID pour appeler les classes.
Afficher les classes CAPI en naviguant vers dans l’interface d’instance (et non dans le système de baseportail d'administration du cloudfichier ). Recherchez le nom d'une classe dans la zone de recherche Accéder à à l'aide de la colonne Nom :
Classes de base
Ces classes de base sont disponibles par défaut. Elles constituent une base pour les classes Azure et AWS qui effectuent les appels REST réels.
- CloudAPIBase
CloudAPIBase est une API indépendante du fournisseur qui communique avec tous les types d'API dans le cloud. Elle fournit des fonctions pour le débogage et la journalisation de base, ainsi que pour la collecte d'informations de proxy sur le Serveur MID. Elle définit également les en-têtes, les paramètres, les points de terminaison et
this.parameter.- AWSCloudAPIBase
- Cette classe est étendue à partir de CloudAPIBase et fournit des fonctions qui appellent le demandeur pour effectuer des demandes GET, PUT, POST et DELETE. La classe fournit l'option d'une méthode
executeAction, qui est une implémentation AWS de GET, ou la méthode d'appel, qui fournit des appels d'API REST. - AzureCloudAPIBase
Cette classe est étendue à partir de CloudAPIBase et fournit des fonctions qui effectuent les actions suivantes :
- Extraire les ID de ressources.
- Extraire les propriétés du point de terminaison.
- Répertorier les ressources.
- Appeler le demandeur pour effectuer des demandes GET, PUT, POST et DELETE.
AzureCloudAPIBase utilise la méthode _invokeRequest pour effectuer des appels d'API REST vers Azure à l'aide des appels d'API REST standard.
Classes de demandeurs
Les classes de demandeurs effectuent les appels REST réels vers le fournisseur dans le cloud. Si vous créez une interface CAPI et une API personnalisées, vous devez étendre CloudRestAPIInvoker pour créer vos appels REST.
- CloudRestAPIInvoker
Cette classe est une classe abstraite pour effectuer des appels d'API REST. S'il existe des en-têtes et/ou des paramètres à envoyer avec une demande, les classes qui implémentent le demandeur doivent étendre cet objet. Elles doivent également fournir des remplacements pour que getEndpointUrl puisse renvoyer le point de terminaison ciblé, mais aussi pour getHeaders et getParameters. Par exemple, avec les API REST Azure, l'authentification nécessite le passage d'un jeton en tant qu'en-tête. L'extension qui s'occupe de la mise en œuvre doit fournir une réponse à partir du getHeaders qui effectue la création ou la récupération du jeton et la définit. Cet objet de base appelle getHeaders et envoie tout ce qu'il récupère avec la demande. Cette classe fournit également une méthode getResponse pour gérer la réponse du fournisseur dans le cloud.
Si vous créez une API CAPI personnalisée, vous devez étendre CloudRestAPIInvoker pour effectuer des appels REST vers le fournisseur dans le cloud.
- AmazonWebServicesAPIInvoker
- Cette classe est étendue à partir de CloudRestAPIInvoker et fournit des méthodes pour effectuer des appels d'API REST vers le fournisseur dans le cloud.
- AzureAPIInvoker
- Cette classe est étendue à partir de CloudRestAPIInvoker et fournit des fonctions qui effectuent ces appels d'API REST vers Azure Resource Manager :
- Définit le principal de service, les en-têtes et les paramètres pour les appels REST.
- Obtient l'URL du point de terminaison, le jeton (ID client, ID de locataire et clé secrète) et les en-têtes/paramètres.
- Récupère et décode le corps de la réponse JSON à partir du fournisseur dans le cloud.
- AzureEAAPIInvoker
- Cette classe renvoie le jeton d'accès à l'API REST Azure Enterprise Agreement (EA).
- AzureStorageAPIInvoker
- Cette classe effectue des appels REST pour le stockage Azure. Les fonctions de cette classe peuvent obtenir le jeton, la réponse, les en-têtes et les paramètres.
Ce graphique illustre la façon dont ces classes de base sont utilisées pour étendre des classes spécifiques à AWS et à Azure :
Exceptions
- RESTAPIException
- Cette classe de base gère les exceptions qui peuvent se produire pendant l'appel REST. Elle renvoie le code de réponse du fournisseur dans le cloud.
- AWSAPIException
- Cette classe gère les exceptions qui peuvent se produire pendant l'appel REST.
- AzureAPIException
- Cette classe génère une exception d'exécution si nécessaire pendant l'appel de l'API Azure.
Classes pour les informations d'identification
- CloudRESTRequestSigningUtil
Cette classe utilise des remplacements spécifiés dans les remplacements de configuration d'API CAPI. La classe AmazonWebServicesRequestSigner étend cette classe. Pour Azure, de nombreux signataires sont intégrés dans les script includes de Serveur MID pour les mappeurs de méthode dans les API CAPI Azure.
- AmazonWebServicesRequestSigner
- Cette classe définit une session sécurisée pour l'appel d'API REST en prenant des informations sur une demande et en créant une chaîne signée par signature v4 pour la demande. Cette classe est étendue à partir de CloudRESTRequestSigningUtil.
Autres classes Azure
| Classe | Description |
|---|---|
| AzureAlertRule | Classe pour créer et supprimer des règles d'alerte Azure. |
| AzureAuthorizationPolicy | Classe pour affecter des politiques de balises. |
| AzureComputeAvailabilitySet | Classe pour extraire des ensembles de disponibilité Azure. Consultez : https://docs.microsoft.com/en-us/rest/api/compute/availabilitysets |
| AzureComputeHardware | Classe pour extraire les tailles Azure. Consultez : https://docs.microsoft.com/en-us/rest/api/compute/virtualmachinesizes |
| AzureComputeImage | Classe pour gérer les appels d'API Azure par rapport à l'image. Consultez : https://docs.microsoft.com/en-us/rest/api/manageddisks/images/images-rest-api |
| AzureComputeVirtualMachine | Classe pour gérer les appels d'API Azure par rapport aux ordinateurs virtuels. Consultez : https://docs.microsoft.com/en-us/rest/api/compute/virtualmachines Taille et capacité en ressources des ordinateurs virtuels : https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-windows-sizes https://docs.microsoft.com/en-us/azure/virtual-machines/virtual-machines-linux-sizes Versions de Cloud-Init prises en charge : https://docs.microsoft.com/en-us/azure/virtual-machines/linux/using-cloud-init |
| AzureDeployment | Classe pour gérer le déploiement du modèle ARM Azure. |
| AzureDeploymentOperation | Classe pour gérer l'opération de déploiement de modèle ARM Azure. |
| AzureImages | Classe pour gérer les images Azure. |
| AzureLoadBalancer | Classe pour gérer les appels d'API Azure par rapport aux équilibreurs de charge. Consultez : https://msdn.microsoft.com/en-us/library/azure/mt163651.aspx |
| AzureLocalNetworkGateways | Classe pour créer et récupérer des passerelles réseau locales. |
| AzureNetworkNIC | Classe pour gérer les appels d'API Azure par rapport aux cartes d'interface réseau. Consultez : https://msdn.microsoft.com/en-us/library/azure/mt163579.aspx |
| AzureNetworkPublicIP | Classe permettant de gérer les appels d'API Azure par rapport aux adresses IP publiques. Consultez : https://msdn.microsoft.com/en-us/library/azure/mt163638.aspx |
| AzureNetworkRouter | Classe pour gérer les appels d'API Azure par rapport à la table de routage. Consultez : https://docs.microsoft.com/en-us/rest/api/network/route-tables |
| AzureNetworkSecurityGroup | Classe pour gérer les appels d'API Azure par rapport aux cartes d'interface réseau. Consultez : https://msdn.microsoft.com/en-us/library/azure/mt163579.aspx |
| AzureNetworkVirtualNetwork | Classe pour gérer les appels d'API Azure par rapport aux réseaux virtuels. |
| AzureProvider | Classe permettant d'obtenir les détails du fournisseur Azure, tels que l'URL et la version du fournisseur. |
| AzureRegion | Classe pour extraire les régions Azure. |
| AzureResource | Traite de l'objet référencé par ObjectID dans les paramètres. Elle récupère également la version de l'API. Cette classe est principalement destinée à obtenir des types non pris en charge ou à supprimer des ressources. |
| AzureResourceGroupManager | Classe pour gérer les groupes de ressources ARM Azure. |
| AzureResponseUtil | Classe pour traduire la réponse API Azure en objet DTO. |
| AzureStorageAccount | Classe pour gérer les appels d'API Azure par rapport au compte de stockage. Consultez : //https://msdn.microsoft.com/en-us/library/azure/mt163638.aspx |
| AzureStorageBlob | Classe permettant de créer et de manipuler des conteneurs de stockage et des objets blob. |
| AzureStorageManagedDisk | Classe pour gérer les appels d'API Azure par rapport au disque géré. Consultez : https://docs.microsoft.com/en-us/rest/api/manageddisks/disks/disks-create-or-update |
| AzureSubscription | Classe pour extraire les abonnements Azure. |
| AzureVirtualNetworkGateways | Classe pour créer et manipuler des passerelles de réseau virtuelles. |
| AzureCloudEAAPIBase | Objet de base pour les gestionnaires d'API Azure EA. Les API EA Azure disposent d'une URL de base https://consumption.azure.com et nécessitent le numéro d'inscription dans le chemin d'accès. Cette classe gère le tri des paramètres EnrollmentNumber et EnrollmentToken. |
Autres classes AWS
| Classe | Description |
|---|---|
| AmazonImages | Classe pour gérer les images d'ordinateurs Amazon. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html |
| AmazonResponseProcessorUtil | Classe pour gérer la réponse d'API REST AWS. |
| AWSAutoScalingGroups | Classe permettant de gérer les appels d'API AWS pour créer et manipuler des groupes de mise à l'échelle automatique. |
| AWSCloudFormation | Gestionnaire pour les appels d'API CloudFormation AWS. |
| AWSEC2 | Gestionnaire pour les appels d'API EC2 AWS. |
| AWSKeyValuePair | Classe pour importer et manipuler des paires de clés. |
| AWSLaunchConfigurations | Classe d'aide. |
| AWSS3 | Gestionnaire pour les appels d'API S3 AWS. |
| AWSTopics | Classe avec des rubriques AWS. |