Classes de CAPI em MID Server inclusões de script

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 6 min. de leitura
  • Cloud Provisioning and Governance fornece várias classes JavaScript que fazem chamadas REST para provedores de nuvem. Essas classes são chamadas de MID Server script includes (para Azure por padrão) ou de chamadas Java no sistema (para AWS por padrão). Se você criar provedores personalizados, interfaces ou APIs de CAPI (para qualquer provedor de nuvem), poderá usar MID Server inclusões de script para chamar as classes.

    Nota:
    Nas APIs de CAPI, não há MID Server inclusões de script (em mapeadores de método) que você pode personalizar para chamar as classes de AWS. Por padrão, as APIs de CAPI para AWS fazem chamadas Java para chamar as classes de AWS. No entanto, se você criar APIs de CAPI, também poderá criar inclusões de script personalizadas para chamar as classes.

    Exibir classes de CAPI navegando até MID Servers > Inclusões de script na interface da instância sistema base (não o Portal de Administração de Nuvem). Você pesquisa o nome de uma classe na caixa Ir para pesquisa usando a coluna Nome :

    Procurando MID Server script includes

    Classes base

    Essas classes base estão disponíveis por padrão. Eles formam uma base para as classes do Azure e do AWS que fazem as chamadas REST reais.

    CloudAPIBase

    CloudAPIBase é uma API independente de provedor que se comunica com todos os tipos de APIs de nuvem. Ele fornece funções para depuração básica e registro em log e para coletar informações de proxy no MID Server. Ele também define Cabeçalhos, Parâmetros, Endpoints e this.parameter.

    AWSCloudAPIBase
    Esta classe é estendida de CloudAPIBase e fornece funções que chamam o invocador para fazer solicitações GET, PUT, POST e DELETE. A classe fornece a opção de um método executeAction, que é uma implementação da AWS de GET, ou o método invoke, que fornece chamadas de REST API.
    AzureCloudAPIBase

    Esta classe é estendida de CloudAPIBase e fornece funções que executam estas ações:

    • Buscar IDs de recurso.
    • Buscar propriedades do endpoint.
    • Listar recursos.
    • Chame o invocador para fazer solicitações GET, PUT, POST e DELETE.

    AzureCloudAPIBase utiliza o método _invokeRequest para fazer chamadas de REST API para o Azure usando as chamadas de REST API padrão.

    Figura 1. APIs base
    CloudAPIBase

    Classes de invocador

    As classes de invocador executam as chamadas REST reais para o provedor de nuvem. Se você criar uma interface CAPI e API personalizadas, deverá estender CloudRestAPIInvoker para criar suas chamadas REST.

    CloudRestAPIInvoker

    Esta classe é uma classe abstrata para fazer chamadas de REST API. Se houver cabeçalhos e/ou parâmetros a serem enviados com uma solicitação, as classes que implementam o invocador devem estender este objeto. Eles também devem fornecer substituições para getEndpointUrl retornar o endpoint de destino e para getHeaders e getParameters. Por exemplo, com REST APIs do Azure, a autenticação requer a passagem de um token como um cabeçalho. A extensão que a implementa deve fornecer uma resposta de getHeaders que executa a criação ou a recuperação do token e a define. Este objeto base invoca getHeaders e envia tudo o que recebe de volta com a solicitação. Esta classe também fornece um método getResponse para lidar com a resposta do provedor de nuvem.

    Se você criar uma API CAPI personalizada, deverá estender CloudRestAPIInvoker para fazer chamadas REST para o provedor de nuvem.

    AmazonWebServicesAPIInvoker
    Esta classe é estendida de CloudRestAPIInvoker e fornece métodos para fazer chamadas de REST API para o provedor de nuvem.
    AzureAPIInvoker
    Esta classe é estendida de CloudRestAPIInvoker e fornece funções que fazem estas chamadas de REST API para o Azure Resource Manager:
    • Define a entidade de serviço, os cabeçalhos e os parâmetros para chamadas REST.
    • Obtém a URL do endpoint, o token (ID do cliente, ID do locatário e chave secreta) e cabeçalhos/parâmetros.
    • Recupera e decodifica o corpo da resposta JSON do provedor de nuvem.
    AzureEAAPIInvoker
    Esta classe retorna o token para acesso à REST API do Azure Enterprise Agreement (EA).
    AzureStorageAPIInvoker
    Esta classe faz chamadas REST para armazenamento do Azure. As funções nesta classe podem obter o token, a resposta, os cabeçalhos e os parâmetros.

    Este gráfico ilustra como essas classes base são usadas para estender classes específicas da AWS e específicas do Azure:

    Figura 2. Invocando chamadas REST
    CloudRestAPIInvoker

    Exceções

    RESTAPIException
    Esta classe base lida com exceções que podem ocorrer durante a chamada REST. Ele retorna o código de resposta do provedor de nuvem.
    AWSAPIException
    Esta classe lida com exceções que podem ocorrer durante a chamada REST.
    AzureAPIException
    Esta classe gera uma exceção de tempo de execução quando necessário durante a invocação da API do Azure.
    Figura 3. Manipulação de exceções
    RESTAPIException

    Classes para credenciais

    CloudRESTRequestSigningUtil

    Esta classe usa substituições que são especificadas em Substituições de configuração de API de CAPI. A classe AmazonWebServicesRequestSigner estende esta classe. Para o Azure, muitos signatários são integrados às inclusões de script MID Server para mapeadores de métodos nas APIs de CAPI do Azure.

    AmazonWebServicesRequestSigner
    Esta classe configura uma sessão segura para a chamada de REST API, obtendo informações sobre uma solicitação e criando uma cadeia de caracteres de assinatura v4para a solicitação. Esta classe é estendida de CloudRESTRequestSigningUtil.

    Outras classes do Azure

    Tabela 1. Classes que estendem AzureCloudAPIBase
    Classe Descrição
    AzureAlertRule Classe para criar e excluir regras de alerta do Azure.
    AzureAuthorizationPolicy Classe para atribuir políticas de marcador.
    AzureComputeAvailabilitySet Classe para buscar conjuntos de disponibilidade do Azure. Consulte: https://docs.microsoft.com/en-us/rest/api/compute/availabilitysets
    AzureComputeHardware Classe para buscar tamanhos do Azure. Consulte: https://docs.microsoft.com/en-us/rest/api/compute/virtualmachinesizes
    AzureComputeImage Classe para lidar com chamadas de API do Azure em relação à imagem. Consulte: https://docs.microsoft.com/en-us/rest/api/manageddisks/images/images-rest-api
    AzureComputeVirtualMachine Classe para lidar com chamadas de API do Azure em máquinas virtuais. Consulte: https://docs.microsoft.com/en-us/rest/api/compute/virtualmachines Tamanho e capacidades da VM: 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 Versões compatíveis com Cloud-Init: https://docs.microsoft.com/en -us/azure/virtual-machines/linux/using-cloud-init
    AzureDeployment Classe para lidar com a implantação do modelo do Azure ARM.
    AzureDeploymentOperation Classe para lidar com a operação de implantação do modelo do Azure ARM.
    Imagens do Azure Classe para lidar com imagens do Azure.
    AzureLoadBalancer Classe para lidar com chamadas de API do Azure em balanceadores de carga. Consulte: https://msdn.microsoft.com/en-us/library/azure/mt163651.aspx
    AzureLocalNetworkGateway Classe para criar e recuperar gateways de rede local.
    AzureNetworkNIC Classe para lidar com chamadas de API do Azure em relação aos cartões de interface de rede. Consulte: https://msdn.microsoft.com/en-us/library/azure/mt163579.aspx
    AzureNetworkPublicIP Classe para lidar com chamadas de API do Azure em endereços IP públicos. Consulte: https://msdn.microsoft.com/en-us/library/azure/mt163638.aspx
    AzureNetworkRouter Classe para lidar com chamadas de API do Azure em relação à tabela de rotas. Consulte: https://docs.microsoft.com/en-us/rest/api/network/route-tables
    AzureNetworkSecurityGroup Classe para lidar com chamadas de API do Azure em relação aos cartões de interface de rede. Consulte: https://msdn.microsoft.com/en-us/library/azure/mt163579.aspx
    AzureNetworkVirtualNetwork Classe para lidar com chamadas de API do Azure em redes virtuais.
    AzureProvider Classe para obter detalhes do provedor do Azure, como a URL e a versão do provedor.
    Região do Azure Classe para buscar regiões do Azure.
    Recurso do Azure Lida com o objeto referenciado por ObjectID nos parâmetros. Ele também busca a versão da API. Esta classe é Destina-se principalmente a obter tipos sem suporte ou excluir recursos.
    AzureResourceGroupManager Classe para lidar com grupos de recursos do Azure ARM.
    AzureResponseUtil Classe para traduzir a resposta da API do Azure em objeto DTO.
    AzureStorageAccount Classe para lidar com chamadas de API do Azure em relação à conta de armazenamento. Consulte: //https://msdn.microsoft.com/en-us/library/azure/mt163638.aspx
    AzureStorageBlob Classe para criar e manipular contêineres de armazenamento e blobs.
    AzureStorageManagedDisk Classe para lidar com chamadas de API do Azure em disco gerenciado. Consulte: https://docs.microsoft.com/en-us/rest/api/manageddisks/disks/disks-create-or-update
    Assinatura do Azure Classe para buscar assinaturas do Azure.
    AzureVirtualNetworkGateway Classe para criar e manipular gateways de rede virtual.
    AzureCloudEAAPIBase Objeto base para manipuladores de API do EA do Azure. As APIs do Azure EA têm um URL base de https://consumption.azure.com e exigem o número de inscrição no caminho. Esta classe lida com o empacotamento dos parâmetros EnrollmentNumber e EnrollmentToken.

    Outras classes da AWS

    Classe Descrição
    Imagens da Amazon

    Classe para lidar com imagens de máquinas da Amazon.

    http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html

    AmazonResponseProcessorUtil Classe para lidar com a resposta da REST API da AWS.
    AWSAutoScalingGroups

    Classe para lidar com chamadas de API da AWS para criar e manipular grupos de escala automática.

    AWSCloudFormation Manipulador de chamadas de API do AWS CloudFormation.
    AWSEC2 Manipulador de chamadas de API do AWS EC2.
    AWSKeyValuePair Classe para importar e manipular pares de chaves.
    Configurações do AWSLaunch Classe auxiliar.
    AWSS3 Manipulador de chamadas de API do AWS S3.
    AWSTópicos Classe com tópicos do AWS.