evento
17/03, 21 - 21/03, 10
Junte-se à série meetup para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registe-se agoraEste browser já não é suportado.
Atualize para o Microsoft Edge para tirar partido das mais recentes funcionalidades, atualizações de segurança e de suporte técnico.
Nota
Os planos Basic, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de aposentadoria de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.
O plano de consumo padrão e dedicado 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 obter mais informações, consulte Migrar consumo padrão e plano dedicado do Azure Spring Apps para Aplicativos de Contêiner do Azure.
Este artigo aplica-se a:✅ Consumo padrão e dedicado (Pré-visualização)
Este guia de início rápido mostra como proteger a comunicação entre um aplicativo cliente e um aplicativo de microsserviço hospedado no Azure Spring Apps e protegido com um aplicativo Spring Cloud Gateway. O aplicativo cliente é verificado como uma entidade de segurança para iniciar contato com o microsserviço implantado no Azure Spring Apps, usando o aplicativo criado com o Spring Cloud Gateway. Este método emprega os recursos Token Relay do Spring Cloud Gateway e Resource Server do Spring Security para os processos de autenticação e autorização, realizados através da execução do fluxo de credenciais do cliente OAuth 2.0.
A lista a seguir mostra a composição do projeto de exemplo:
Use as seguintes etapas para clonar e executar o aplicativo localmente:
Use o seguinte comando para clonar o projeto de exemplo do GitHub:
git clone https://github.com/Azure-Samples/azure-spring-apps-sso-client-credential.git -b consumption-plan
Use o seguinte comando para criar os serviços de back-end do Books:
cd azure-spring-apps-sso-client-credential
./mvnw clean package
Insira o diretório do projeto SPA e use o seguinte comando para instalar as dependências:
npm install @azure/msal-node
Os principais recursos necessários para executar este exemplo são uma instância do Azure Spring Apps e uma instância do Banco de Dados do Azure para PostgreSQL. Esta seção fornece as etapas para criar esses recursos.
Abra seu navegador da Web e vá para o portal do Azure. Introduza as suas credenciais para iniciar sessão no portal do Azure. A vista predefinida é o dashboard de serviço.
Use as seguintes etapas para criar uma instância de serviço:
Selecione Criar um recurso no canto do portal do Azure.
Selecione Compute>Azure Spring Apps.
Preencha o formulário Básico com as seguintes informações:
Definição | Valor sugerido | Description |
---|---|---|
Subscrição | o nome da subscrição | A subscrição do Azure que quer utilizar para o servidor. Se tiver várias subscrições, escolha a subscrição na qual pretende ser cobrado pelo recurso. |
Grupo de recursos | myresourcegroup | Um nome de grupo de recursos novo ou um já existente na sua subscrição. |
Nome | Miasa | Um nome exclusivo que identifica seu serviço Azure Spring Apps. O nome deve ter entre 4 e 32 caracteres e pode conter apenas letras minúsculas, números e hífenes. O primeiro caractere do nome do serviço deve ser uma letra e o último caractere deve ser uma letra ou um número. |
Planear | Consumo padrão e dedicado (pré-visualização) | O plano de preços determina os recursos e o custo associados à sua instância. |
Região | A região mais próxima dos seus utilizadores | A localização que esteja mais próxima dos seus utilizadores. |
Ambiente de aplicativos de contêiner | Myacaenv | Selecione qual instância do ambiente Container Apps compartilhar a mesma rede virtual com outros serviços e recursos. |
Use a tabela a seguir como um guia para criar o Ambiente de Aplicativos de Contêiner:
Definição | Valor sugerido | Description |
---|---|---|
Nome do ambiente | Myacaenv | Um nome exclusivo que identifica seu serviço de Ambiente de Aplicativos de Contêiner do Azure. |
Planear | Consumo | O plano de preços determina os recursos e o custo associados à sua instância. |
Zona redundante | Desativado | Se deseja criar seu serviço de Ambiente de Aplicativos de Contêiner em uma zona de disponibilidade do Azure. |
Importante
O perfil de carga de trabalho de Consumo tem um modelo de faturamento pré-pago, sem custo inicial. Você é cobrado pelo perfil de carga de trabalho dedicada com base nos recursos provisionados. Para obter mais informações, consulte Perfis de carga de trabalho em Consumo + Ambientes de estrutura de plano dedicado em Aplicativos de Contêiner do Azure (visualização) e Preços do Azure Spring Apps.
Selecione Rever e Criar para rever as suas seleções. Selecione Criar para provisionar a instância do Azure Spring Apps.
Na barra de ferramentas, selecione o ícone Notificações (um sino) para monitorizar o processo de implementação. Depois que a implantação for concluída, você poderá selecionar Fixar no painel, que cria um bloco para esse serviço no painel do portal do Azure como um atalho para a página Visão geral do serviço. Selecione Ir para recurso para abrir a página Visão geral do serviço.
Use o seguinte comando para ativar o servidor Eureka. Certifique-se de substituir os espaços reservados por seus próprios valores criados na etapa anterior.
az spring eureka-server enable \
--resource-group <resource-group-name> \
--name <Azure-Spring-Apps-instance-name>
Esta seção fornece as etapas para registrar um aplicativo para adicionar funções de aplicativo no Microsoft Entra ID, que é usado para proteger as APIs RESTful no Azure Spring Apps.
Vá para a página inicial do portal do Azure.
Se você tiver acesso a vários locatários, use o filtro Diretório + assinatura ( ) para selecionar o locatário no qual deseja registrar um aplicativo.
Procure e selecione Microsoft Entra ID.
Em Gerir, selecione Registos de>aplicações Novo registo.
Introduza um nome para a sua aplicação no campo Nome, por exemplo Livros. Os usuários do seu aplicativo podem ver esse nome e você pode alterá-lo mais tarde.
Em Tipos de conta suportados, selecione Contas somente neste diretório organizacional.
Selecione Registar para criar a aplicação.
Na página Visão geral do aplicativo, procure o valor da ID do aplicativo (cliente) e registre-o para uso posterior. Você precisa dele para configurar o arquivo de configuração YAML para este projeto.
Em Gerenciar, selecione Expor uma API, localize o URI da ID do Aplicativo no início da página e selecione Adicionar.
Na página Editar URI da ID do aplicativo, aceite o URI da ID do Aplicativo proposto (api://{client ID}
) ou use um nome significativo em vez da ID do cliente, como api://books
, e selecione Salvar.
Em Gerir, selecione Funções>de aplicação Criar função de aplicação e, em seguida, introduza as seguintes informações:
Repita a etapa anterior para adicionar outra função de aplicativo: Books.Read
.
O aplicativo Books RESTful API atua como um servidor de recursos, que é protegido pelo Microsoft Entra ID. Antes de adquirir um token de acesso, é necessário registrar outro aplicativo no Microsoft Entra ID e conceder permissões ao aplicativo cliente, chamado SPA
.
Volte para o seu locatário no Microsoft Entra ID.
Em Gerir, selecione Registos de>aplicações Novo registo.
Introduza um nome para a sua aplicação no campo Nome , por exemplo SPA
.
Para Tipos de conta suportados, use as Contas padrão somente neste diretório organizacional.
Selecione Registar para criar a aplicação.
Na página Visão geral do aplicativo, procure o valor da ID do aplicativo (cliente) e registre-o para uso posterior. Você precisa dele para adquirir o token de acesso.
Selecione Permissões>de API Adicione uma permissão>APIs que minha organização usa. Selecione o Books
aplicativo que você registrou anteriormente, selecione as permissões Books.Read e Books.Write e, em seguida, selecione Adicionar permissões.
Selecione Conceder consentimento de administrador para <seu nome> de locatário para conceder consentimento de administrador para as permissões adicionadas.
Navegue até Certificados & segredos e selecione Novo segredo do cliente.
Na página Adicionar um segredo do cliente, insira uma descrição para o segredo, selecione uma data de validade e selecione Adicionar.
Procure o valor do segredo e, em seguida, grave-o para uso posterior. Você precisa dele para adquirir um token de acesso.
Localize o arquivo books-service/src/main/resources/application.yml para o books-service
aplicativo. Atualize a spring.cloud.azure.active-directory
configuração na seção para corresponder ao exemplo a seguir. Certifique-se de substituir os espaços reservados pelos valores criados anteriormente.
spring:
cloud:
azure:
active-directory:
credential:
client-id: <your-application-ID-of-Books>
app-id-uri: <your-application-ID-URI-of-Books>
Use o seguinte comando para reconstruir o projeto de exemplo:
./mvnw clean package
As etapas a seguir mostram como implantar os aplicativos no Azure.
Use as seguintes etapas para implantar os aplicativos no Azure Spring Apps usando o plug-in Maven para Azure Spring Apps:
Navegue até o diretório de projeto de exemplo e use o seguinte comando para configurar o aplicativo no Azure Spring Apps:
./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:config
A lista a seguir descreve as interações de comando:
gateway-service
.Use o seguinte comando para implantar o aplicativo:
./mvnw azure-spring-apps:deploy
A lista a seguir descreve a interação de comando:
Depois que o comando for executado, você poderá ver as seguintes mensagens de log, que indicam que a implantação foi bem-sucedida.
[INFO] Getting public url of app(gateway-service)...
[INFO] Application url: https://gateway-service.xxxxxxxxxxxxxx-xxxxxxxx.eastasia.azurecontainerapps.io
...
[INFO] Artifact(books-service-0.0.1-SNAPSHOT.jar) is uploaded and deployment(default) is successfully updated.
...
A URL do aplicativo de saída é o ponto de extremidade base para acessar o aplicativo ToDo RESTful API.
Atualize a configuração no SPA
arquivo de script de aplicativo spa/server.js para corresponder ao exemplo a seguir. Certifique-se de substituir os espaços reservados por seus próprios valores criados na etapa anterior.
const SpringCloudGatewayURL = "<URL exposed by app gateway-service>"
const msalConfig = {
auth: {
clientId: "< SPA App Registration ClientId>",
authority: "https://login.microsoftonline.com/< TenantId >/",
clientSecret: "<SPA App Registration ClientSecret>",
},
};
const tokenRequest = {
scopes: ["<Application ID URI of Books>/.default"]
};
No diretório do projeto SPA, use o seguinte comando para executar localmente:
node server.js
Nota
O aplicativo SPA é um aplicativo Web estático, que pode ser implantado em qualquer servidor Web.
Você pode acessar o aplicativo Books SPA que se comunica com as APIs RESTful do Books por meio do gateway-service
aplicativo.
Aceda ao http://localhost:3000
seu browser para aceder à aplicação.
Introduza valores para Autor e Título e, em seguida, selecione Adicionar Livro. Você verá uma resposta semelhante ao exemplo a seguir:
Book added successfully: {"id":1,"author":"Jeff Black","title":"Spring In Action"}
Pode eliminar o grupo de recursos do Azure, que inclui todos os recursos no grupo de recursos. Use as seguintes etapas para excluir todo o grupo de recursos, incluindo o serviço recém-criado:
Localize o grupo de recursos no portal do Azure.
Selecione Grupos de recursos e, em seguida, selecione o nome do seu grupo de recursos, por exemplo, myresourcegroup.
Na página do grupo de recursos, selecione Eliminar. Digite o nome do seu grupo de recursos na caixa de texto para confirmar a exclusão.
Selecione Eliminar.
Para obter mais informações, consulte os seguintes artigos:
evento
17/03, 21 - 21/03, 10
Junte-se à série meetup para criar soluções de IA escaláveis com base em casos de uso do mundo real com outros desenvolvedores e especialistas.
Registe-se agoraFormação
Módulo
Implantar microsserviços do Spring no Azure - Training
Saiba como implantar microsserviços do Spring Boot no Azure Spring Apps (ASA).
Certificação
Certificado pela Microsoft: Azure Developer Associate - Certifications
Crie soluções completas no Microsoft Azure para criar o Azure Functions, implementar e gerenciar aplicativos Web, desenvolver soluções utilizando o armazenamento do Azure e muito mais.