Usar o portal de API para o VMware Tanzu
Observação
Os planos Básico, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de desativação de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira o anúncio de desativação dos Aplicativos Spring do Azure.
O plano consumo e dedicado Standard será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira Migrar o plano dedicado e consumo Standard dos Aplicativos Spring do Azure para os Aplicativos de Contêiner do Azure.
Este artigo se aplica a: ❎ Básico/Standard ✅ Enterprise
Esse artigo mostra como usar o portal API para VMware Tanzu com o plano Azure Spring Apps Enterprise.
O portal de API é um dos componentes comerciais do VMware Tanzu. O portal de API oferece suporte à visualização de definições de API do Spring Cloud Gateway para VMware Tanzu e ao teste de rotas de API específicas do navegador. Ele também dá suporte à habilitação da autenticação de SSO (logon único) por meio da configuração.
Pré-requisitos
- Uma instância do plano Enterprise do Azure Spring Apps já provisionada com portal de API habilitado. Para obter mais informações, confira Início Rápido: criar e implantar aplicativos nos Aplicativos Spring do Azure usando o plano Enterprise.
- O Spring Cloud Gateway para Tanzu é habilitado durante o provisionamento e os metadados de API correspondentes são configurados.
Configurar logon único (SSO)
O portal de API dá suporte à autenticação e à autorização usando o SSO (logon único) com um IdP (provedor de identidade) OpenID compatível com o protocolo de descoberta do OpenID Connect.
Observação
Há suporte apenas para servidores de autorização compatíveis com o protocolo de descoberta do OpenID Connect. Certifique-se de configurar o servidor de autorização externo para permitir redirecionamentos de volta ao portal da API. Veja a documentação do servidor de autorização e adicione https://<api-portal-external-url>/login/oauth2/code/sso
à lista de URIs de redirecionamento permitidos.
Propriedade | Necessário? | Descrição |
---|---|---|
issuerUri | Yes | O URI declarado pelo aplicativo como o Identificador do Emissor. Por exemplo, se o issuer-uri fornecido for "https://example.com", então uma solicitação de configuração do provedor OpenID será feita para "https://example.com/.well-known/openid-configuration". Espera-se que o resultado seja uma resposta de configuração do Provedor OpenID. |
clientId | Yes | A ID de cliente do OpenID Connect fornecida pelo IdP |
clientSecret | Yes | O segredo do cliente do OpenID Connect fornecido pelo IdP |
scope | Yes | Uma lista de escopos a incluir em tokens de identidade JWT. Essa lista deve ser baseada nos escopos permitidos pelo provedor de identidade |
Para configurar o SSO com o Microsoft Entra ID, veja Como configurar o logon único com o Microsoft Entra ID para Spring Cloud Gateway e API Portal para Tanzu.
Observação
Ao configurar a propriedade de SSO incorreta, como a senha incorreta, deve-se removê-la inteiramente e adicionar a configuração correta.
Configurar a contagem de instâncias
Use as etapas a seguir para configurar a contagem de instâncias usando o portal de API:
- Navegue até sua instância de serviço e selecione Portal de API.
- Selecione Escalar horizontalmente.
- Configure Contagem de instâncias e selecione Salvar.
Atribuir um ponto de extremidade público para o portal de API
Utilize os seguintes passos para atribuir um ponto final público ao portal API:
- Selecione Portal de API.
- Selecione Visão geral para exibir o estado em execução e os recursos alocados ao portal de API.
- Selecione Sim ao lado de Atribuir ponto de extremidade para atribuir um ponto de extremidade público. Um URL é gerado em alguns minutos.
- Salve-a para uso posterior.
Configurar o recurso de teste da API
O portal de API permite que você visualize APIs centralmente e experimente-as usando o recurso de teste de API. A teste de API está habilitada por padrão e essa configuração ajuda você a desativá-la em toda a instância do portal de API. Para obter mais informações, veja a seção Experimentar APIs no portal de API.
Use as etapas a seguir para habilitar ou desabilitar o teste de API:
- Navegue até sua instância de serviço e selecione Portal de API.
- Selecione Configuração.
- Selecione ou desmarque Habilitar teste de API e selecione Salvar.
Configurar o roteamento de API com o OpenAPI Spec no Spring Cloud Gateway para Tanzu
Esta seção descreve como exibir e experimentar as APIs com definições de esquema no portal da API. Use as etapas a seguir para configurar o roteamento de API com uma URL de especificação do OpenAPI no Spring Cloud Gateway para Tanzu.
Crie um aplicativo no Azure Spring Apps para o qual o gateway roteia o tráfego.
Gere a definição de OpenAPI e obtenha o URI para acessá-la. As duas opções de URI a seguir são aceitas:
- A primeira opção é usar um ponto de extremidade publicamente acessível, como a URI
https://petstore3.swagger.io/api/v3/openapi.json
, que inclui a especificação do OpenAPI. - A segunda opção é colocar a definição de OpenAPI no caminho relativo do aplicativo no Azure Spring Apps e construir o URI no formato
http://<app-name>/<relative-path-to-OpenAPI-spec>
. Você pode escolher ferramentas comoSpringDocs
para gerar a especificação do OpenAPI automaticamente, para que o URI possa ser semelhante ahttp://<app-name>/v3/api-docs
.
- A primeira opção é usar um ponto de extremidade publicamente acessível, como a URI
Use o comando a seguir para atribuir um ponto de extremidade público ao gateway para acessá-lo.
az spring gateway update --assign-endpoint
Use o seguinte comando para configurar as propriedades do Spring Cloud Gateway para Tanzu:
az spring gateway update \ --api-description "<api-description>" \ --api-title "<api-title>" \ --api-version "v0.1" \ --server-url "<endpoint-in-the-previous-step>" \ --allowed-origins "*"
Configure regras de roteamento para os aplicativos.
Para criar regras para acessar o aplicativo na configuração de rotas do Spring Cloud Gateway para Tanzu, salve o conteúdo a seguir no arquivo sample.json.
{ "open_api": { "uri": "https://petstore3.swagger.io/api/v3/openapi.json" }, "routes": [ { "title": "Petstore", "description": "Route to application", "predicates": [ "Path=/pet", "Method=PUT" ], "filters": [ "StripPrefix=0" ] } ] }
O valor
open_api.uri
é o ponto de extremidade público ou URI construído na segunda etapa acima. É possível adicionar predicados e filtros aos caminhos definidos na especificação do OpenAPI.Use o seguinte comando para aplicar a regra ao aplicativo criado na primeira etapa:
az spring gateway route-config create \ --name sample \ --app-name <app-name> \ --routes-file sample.json
Verifique a resposta das rotas criadas. Também é possível exibir as rotas no portal.
Exibir APIs expostas no portal de API
Observação
Demora vários minutos para sincronizar o Spring Cloud Gateway para Tanzu e o portal de API.
Selecione o endpoint URL
para acessar o portal de API. Você vê todas as rotas configuradas no Spring Cloud Gateway for Tanzu.
Experimentar APIs no portal de API
Use as seguintes etapas para experimentar as APIs:
Selecione a API que você deseja experimentar.
Selecione EXECUTE e a resposta aparecerá.
Habilitar/desabilitar o portal API após a criação do serviço
Você pode habilitar e desabilitar o portal API após a criação do serviço usando o portal do Azure ou a CLI do Azure. Antes de desativar o portal API, é necessário cancelar a atribuição do seu ponto final.
Use os seguintes passos para habilitar ou desabilitar o portal API utilizando o portal Azure:
- Navegue até seu recurso de serviço e selecione portal de API.
- Selecione Gerenciar.
- Marque ou desmarque Habilitar portal API e selecione Salvar.
- Agora você pode visualizar o estado do portal API na página do portal API.