Événements
Créer des applications intelligentes
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantCe navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Notes
Les plans Essentiel, Standard et Entreprise seront déconseillés à compter de la mi-mars 2025, avec une période de mise hors service de 3 ans. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Le plan de consommation standard et dédiée sera déconseillé à compter du 30 septembre 2024, avec un arrêt complet après six mois. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez Migrer le plan de consommation standard et dédiée Azure Spring Apps vers Azure Container Apps.
Cet article s’applique à :✅ Consommation standard et dédiée (aperçu)
Ce guide de démarrage rapide vous montre comment sécuriser la communication entre une application cliente et une application de microservices hébergée sur Azure Spring Apps et protégée par une application Spring Cloud Gateway. L’application cliente est vérifiée en tant que principal de sécurité pour établir un contact avec le microservice déployé sur Azure Spring Apps, en utilisant l’application créée avec Spring Cloud Gateway. Cette méthode utilise les fonctionnalités de relais de jetons de Spring Cloud Gateway et les fonctionnalités de serveur de ressources de Spring Security pour les processus d’authentification et d’autorisation. Ces processus sont réalisés via l’exécution du flux d’informations d’identification du client OAuth 2.0.
La liste suivante montre la composition de l’exemple de projet :
Procédez comme suit pour cloner et exécuter l’application localement :
Utilisez la commande suivante pour cloner l’exemple de projet à partir de GitHub :
git clone https://github.com/Azure-Samples/azure-spring-apps-sso-client-credential.git -b consumption-plan
Utilisez la commande suivante pour générer les services back-end Books :
cd azure-spring-apps-sso-client-credential
./mvnw clean package
Entrez le répertoire du projet SPA et utilisez la commande suivante pour installer les dépendances :
npm install @azure/msal-node
Pour exécuter cet exemple, les principales ressources requises sont une instance Azure Spring Apps et une instance Azure Database pour PostgreSQL. Cette section décrit les étapes de création de ces ressources.
Ouvrez votre navigateur web pour accéder au Portail Azure. Entrez vos informations d’identification pour vous connecter au Portail Azure. Il s’ouvre par défaut sur le tableau de bord des services.
Utilisez la procédure suivante pour créer une instance de service :
Sélectionnez Créer une ressource dans le coin du portail Azure.
Sélectionnez Calcul>Azure Spring Apps.
Remplissez le formulaire Informations de base avec les informations suivantes :
Paramètre | Valeur suggérée | Description |
---|---|---|
Abonnement | Votre nom d’abonnement | Abonnement Azure que vous souhaitez utiliser pour votre serveur. Si vous disposez de plusieurs abonnements, choisissez celui dans lequel vous souhaitez que la ressource soit facturée. |
Groupe de ressources | myresourcegroup | Un nouveau nom de groupe de ressources ou un nom de groupe existant dans votre abonnement. |
Nom | myasa | Nom unique qui identifie votre instance Azure Spring Apps. Le nom doit comporter entre 4 et 32 caractères, et contenir uniquement des lettres minuscules, des chiffres et des traits d’union. Le premier caractère du nom du service doit être une lettre, et le dernier doit être une lettre ou un chiffre. |
Planification | Consommation standard et dédiée (préversion) | Le plan tarifaire détermine les ressources et le coût associés à votre instance. |
Région | La région la plus proche de vos utilisateurs | L’emplacement géographique le plus proche de vos utilisateurs. |
Environnement Container Apps | myacaenv | Sélectionnez l’instance d’environnement Container Apps pour partager le même réseau virtuel avec d’autres services et ressources. |
Utilisez le tableau suivant comme guide pour créer l’environnement Container Apps :
Paramètre | Valeur suggérée | Description |
---|---|---|
Nom de l’environnement | myacaenv | Un nom unique pour identifier votre service d’environnement Azure Container Apps. |
Planifier | Consommation | Le plan tarifaire détermine les ressources et le coût associés à votre instance. |
Redondant interzone | Désactivé | Indique s’il faut créer votre service d’environnement Container Apps dans une zone de disponibilité Azure. |
Important
Le profil de charge de travail Consommation a un modèle de facturation de paiement à l’utilisation, sans coût de départ. Vous êtes facturé pour le profil de charge de travail dédié en fonction des ressources approvisionnées. Pour plus d’informations, consultez Profils de charge de travail dans Consommation + Environnements de structure de plan dédié dans Azure Container Apps (préversion) et Prix Azure Spring Apps.
Sélectionnez Vérifier et créer pour passer en revue vos sélections. Sélectionnez Créer pour approvisionner l’instance Azure Spring Apps.
Dans la barre d’outils, sélectionnez l’icône Notifications (en forme de cloche) pour surveiller le processus de déploiement. Une fois le déploiement terminé, vous pouvez sélectionner Épingler au tableau de bord, ce qui crée une vignette pour ce service dans votre tableau de bord du portail Azure, en tant que raccourci vers la page Vue d’ensemble du service. Sélectionnez Accéder à la ressource pour ouvrir la page Vue d’ensemble du service.
Utilisez la commande suivante pour activer le serveur Eureka. Veillez à remplacer les espaces réservés par vos propres valeurs que vous avez créées dans l’étape précédente.
az spring eureka-server enable \
--resource-group <resource-group-name> \
--name <Azure-Spring-Apps-instance-name>
Cette section décrit les étapes à suivre pour inscrire une application afin d’ajouter des rôles d’application dans Microsoft Entra ID. Cette solution est utilisée pour protéger les API RESTful dans Azure Spring Apps.
Accédez à la page d’accueil du Portail Azure.
Si vous avez accès à plusieurs locataires, utilisez le filtre Répertoire + abonnement () pour sélectionner le locataire dans lequel vous voulez inscrire une application.
Recherchez et sélectionnez Microsoft Entra ID.
Sous Gérer, sélectionnez Inscriptions d’applications>Nouvelle inscription.
Entrez un nom pour votre application dans le champ Nom, par exemple Books. Les utilisateurs de votre application peuvent voir ce nom, et vous pouvez le changer ultérieurement.
Pour les Types de comptes pris en charge, sélectionnez Comptes dans cet annuaire organisationnel.
Sélectionnez Inscrire pour créer l’application.
Dans la page Vue d’ensemble de l’application, recherchez la valeur ID d’application (client) , puis notez-la pour une utilisation ultérieure. Vous en avez besoin pour configurer le fichier de configuration YAML pour ce projet.
Sous Gérer, sélectionnez Exposer une API, trouvez l’URI de l’ID d’application au début de la page, puis sélectionnez Ajouter.
Dans la page Modifier l’URI de l’ID d’application, acceptez l’URI proposé de l’ID d’application (api://{client ID}
) ou utilisez un nom utile au lieu de l’ID client, comme api://books
, puis sélectionnez Enregistrer.
Sous Gérer, sélectionnez Rôles d’application>Créer un rôle d’application, puis entrez les informations suivantes :
Répétez l’étape précédente pour ajouter un autre rôle d’application : Books.Read
.
L’application API RESTful Books agit en tant que serveur de ressources protégé par Microsoft Entra ID. Avant d’acquérir un jeton d’accès, vous devez inscrire une autre application dans Microsoft Entra ID et accorder des autorisations à l’application cliente, nommée SPA
.
Revenez à votre locataire dans Microsoft Entra ID.
Sous Gérer, sélectionnez Inscriptions d’applications>Nouvelle inscription.
Entrez un nom pour votre application dans le champ Nom, par exemple SPA
.
Pour les Types de comptes pris en charge, utilisez les Comptes uniquement dans ce répertoire d’organisation par défaut.
Sélectionnez Inscrire pour créer l’application.
Dans la page Vue d’ensemble de l’application, recherchez la valeur ID d’application (client) , puis notez-la pour une utilisation ultérieure. Vous en avez besoin pour obtenir le jeton d'accès.
Sélectionnez Autorisations de l’API>Ajouter une autorisation>API que mon organisation utilise. Sélectionnez l’application Books
que vous avez inscrite plus tôt, sélectionnez les autorisations Books.Read et Books.Write, puis sélectionnez Ajouter des autorisations.
Sélectionnez Accorder le consentement de l’administrateur pour <votre-nom-de-locataire> afin d’accorder le consentement administrateur aux autorisations que vous avez ajoutées.
Accédez à Certificats et secrets, puis sélectionnez Nouveau secret client.
Dans la page Ajouter un secret client, entrez une description pour le secret, sélectionnez un délai d’expiration, puis sélectionnez Ajouter.
Recherchez la Valeur du secret et enregistrez-la pour une utilisation future. Vous en avez besoin pour obtenir un jeton d'accès.
Recherchez le fichier books-service/src/main/resources/application.yml pour l’application books-service
. Mettez à jour la configuration dans la section spring.cloud.azure.active-directory
pour qu’elle corresponde à l’exemple suivant. Veillez à remplacer les espaces réservés par les valeurs que vous avez créées précédemment.
spring:
cloud:
azure:
active-directory:
credential:
client-id: <your-application-ID-of-Books>
app-id-uri: <your-application-ID-URI-of-Books>
Utilisez la commande suivante pour régénérer l’échantillon de projet :
./mvnw clean package
Les étapes suivantes vous montrent comment déployer les applications sur Azure.
Utilisez les étapes suivantes pour déployer les applications sur Azure Spring Apps à l’aide du plug-in Maven pour Azure Spring Apps :
Accédez au répertoire de l’échantillon de projet et utilisez la commande suivante pour configurer l’application dans Azure Spring Apps :
./mvnw com.microsoft.azure:azure-spring-apps-maven-plugin:1.18.0:config
La liste suivante décrit les interactions de commande :
gateway-service
.Utilisez la commande suivante pour déployer l’application :
./mvnw azure-spring-apps:deploy
La liste suivante décrit l’interaction de commande :
Une fois la commande exécutée, vous pouvez voir les messages de journal suivants qui indiquent que le déploiement a réussi.
[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.
...
L’URL d’application de sortie est le point de terminaison de base permettant d’accéder à l’application d’API RESTful ToDo.
Mettez à jour la configuration dans le fichier de script de l’application SPA
spa/server.js pour qu’elle corresponde à l’exemple suivant. Veillez à remplacer les espaces réservés par vos propres valeurs que vous avez créées dans l’étape précédente.
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"]
};
Dans le répertoire du projet de SPA, utilisez la commande suivante pour exécuter localement :
node server.js
Notes
L’application SPA est une application web statique qui peut être déployée sur n’importe quel serveur web.
Vous pouvez accéder à l’application SPA Books qui communique avec les API RESTful Books via l’application gateway-service
.
Accédez à http://localhost:3000
dans votre navigateur pour accéder à l’application.
Entrez des valeurs pour Auteur et Titre, puis sélectionnez Ajouter le livre. Vous voyez une réponse similaire à l’exemple suivant :
Book added successfully: {"id":1,"author":"Jeff Black","title":"Spring In Action"}
Vous pouvez supprimer le groupe de ressources Azure qui inclut toutes les ressources du groupe de ressources. Pour supprimer l’intégralité du groupe de ressources, y compris le serveur que vous venez de créer, utilisez les étapes suivantes :
Localisez votre groupe de ressources dans le portail Azure.
Sélectionnez Groupes de ressources, puis le nom de votre groupe de ressources, par exemple myresourcegroup.
Dans la page de votre groupe de ressources, sélectionnez Supprimer. Entrez le nom de votre groupe de ressources dans la zone de texte pour confirmer la suppression.
Sélectionnez Supprimer.
Pour plus d’informations, consultez les articles suivants :
Événements
Créer des applications intelligentes
17 mars, 21 h - 21 mars, 10 h
Rejoignez la série de rencontres pour créer des solutions IA évolutives basées sur des cas d’usage réels avec d’autres développeurs et experts.
S’inscrire maintenantEntrainement
Module
Déployer des microservices Spring sur Azure - Training
Découvrez comment déployer des microservices Spring Boot sur Azure Spring Apps (ASA).
Certification
Microsoft Certified: Azure Developer Associate - Certifications
Générez des solutions de bout en bout dans Microsoft Azure pour créer des fonctions Azure Functions, implémenter et gérer des applications web, développer des solutions qui utilisent le Stockage Azure, et bien plus encore.
Documentation
Démarrage rapide : Déployer une application API RESTful sur Azure Spring Apps
Découvrez comment déployer une application API RESTful sur Azure Spring Apps.
Accéder à Config Server et Service Registry - Azure Spring Apps
Comment accéder aux points de terminaison de Config Server et Service Registry avec le contrôle d’accès en fonction du rôle d’Azure de Microsoft Entra.
Introduction à Azure Spring Apps
Découvrez les fonctionnalités et les avantages d’Azure Spring Apps pour déployer et gérer des applications Spring Java dans Azure.