Vous êtes sur la page 1sur 218

LAB : Créer une application Xamarin.

Forms avec Azure


Ce Lab vous montre comment ajouter un service principal cloud à une application
Xamarin.Forms en utilisant la fonctionnalité Azure Mobile Apps d’Azure App Service en
tant que back end. Vous allez créer un serveur principal d’applications mobiles et une
simple application Xamarin.Forms de liste de tâches qui stocke les données
d’application dans Azure.

Vous devez suivre ce didacticiel avant de pouvoir suivre tous les autres didacticiels
Mobile Apps pour les applications Xamarin.Forms.
Prérequis
Pour réaliser ce LAB, vous avez besoin des éléments suivants :

 Un compte Azure actif. Si vous n'avez pas de compte, vous pouvez vous inscrire
pour une évaluation d'Azure et obtenir jusqu'à 10 applications mobiles gratuites
que vous pourrez conserver après l'expiration de votre période d'évaluation. Pour
plus d’informations, consultez la page Version d’évaluation gratuite d’Azure.
 Visual Studio Tools pour Xamarin, dans Visual Studio 2017 ou Visual Studio pour
Mac.Consultez la page d’installation de Xamarin pour obtenir des instructions.
 (facultatif) Pour générer une application iOS, un Mac avec Xcode 9.0 ou une
version ultérieure est requis. Visual Studio pour Mac ou Visual Studio 2017
peuvent être utilisés pour développer des applications iOS (tant que le Mac est
disponible sur le réseau).

Créer un back end Mobile Apps


Pour créer un nouveau back end Mobile Apps, procédez comme suit :

1. Connectez-vous au Portail Azure.


2. Cliquez sur Créer une ressource.
3. Dans la zone de recherche, entrez Mobile Apps.
4. Dans la liste des résultats, sélectionnez Démarrage rapide Mobile Apps, puis
sélectionnez Créer.
5. Choisissez un Nom de l’application unique. Celui-ci fera également partie du nom
de domaine de votre App Service.
6. Dans Groupe de ressources, sélectionnez un groupe de ressources
existant ou créez-en un (en utilisant le même nom que votre application).
7. Cliquez sur Créer. Patientez quelques minutes jusqu’au déploiement du service,
puis continuez. Regardez l’icône de Notifications (cloche) dans l’en-tête de portail
à la recherche de mises à jour de l’état.

Vous avez maintenant configuré un back end Mobile App que vos applications mobiles
peuvent utiliser. Vous allez ensuite télécharger un projet de serveur pour un simple back
end de liste de tâches et le publier dans Azure.
Configurer le projet de serveur
Pour configurer le projet de serveur de sorte qu’il utilise le back end Node.js ou .NET,
procédez comme suit :

1. Cliquez sur le bouton App Services, sélectionnez les back end Mobile Apps,
choisissez Démarrage rapide et sélectionnez votre plateforme client (iOS,
Android, Xamarin, Cordova).
2. Si une connexion à une base de données n’est pas configurée, créez-en une en
procédant comme suit :

a. Créez une base de données SQL Database et un serveur. Vous devrez peut-être
laisser le champ du nom de la chaîne de connexion sur la valeur par défaut
MS_TableConnectionString afin de terminer l’étape 3 ci-dessous.

b. Attendez que la connexion de données soit créée.


c. La connexion de données doit être réussie.

3. Sous 2. Créer une API de table, sélectionnez Node.js pour Langage du serveur
principal.
4. Acceptez l’accusé de réception, puis sélectionnez Créer une table
TodoItem. Cette action crée une table d’éléments de tâche dans votre base de
données.
Important

Basculer un back end existant vers Node.js remplace tout le contenu. Pour créer un
back end .NET, consultez l’article Travailler avec le SDK d’un serveur principal
.NET pour Mobile Apps.

Télécharger et exécuter la solution Xamarin.Forms


Visual Studio Tools pour Xamarin est requis pour ouvrir la solution, consultez
les instructions d’installation de Xamarin. Si les outils sont déjà installés, suivez ces
étapes pour télécharger et ouvrir la solution :
Visual Studio
1. Accédez au portail Azure.
2. Dans le panneau Paramètres de votre application mobile, cliquez
sur Quickstart (sous Deployment) > Xamarin.Forms. À l’Étape 3, cliquez
sur Create a new app si cette option n’est pas déjà sélectionnée. Cliquez ensuite
sur le bouton Download .

Cette action télécharge un projet qui contient une application cliente connectée à
votre application mobile. Enregistrez le fichier projet compressé sur votre
ordinateur local et notez l'emplacement où vous l'avez enregistré.

3. Extrayez le projet que vous avez téléchargé, puis ouvrez-le dans Visual Studio
2017.

4. Suivez les instructions ci-dessous pour exécuter les projets Android ou Windows,
et, s’il existe un ordinateur Mac en réseau disponible, le projet iOS.
Visual Studio pour Mac

1. Accédez au portail Azure.


2. Dans le panneau Paramètres de votre application mobile, cliquez
sur Quickstart (sous Deployment) > Xamarin.Forms. À l’Étape 3, cliquez
sur Create a new app si cette option n’est pas déjà sélectionnée. Cliquez ensuite
sur le bouton Download .

Cette action télécharge un projet qui contient une application cliente connectée à
votre application mobile. Enregistrez le fichier projet compressé sur votre
ordinateur local et notez l'emplacement où vous l'avez enregistré.

3. Extrayez le projet que vous avez téléchargé, puis ouvrez-le dans Visual Studio pour
Mac.

4. Suivez les instructions ci-dessous pour exécuter les projets Android ou iOS.
(Facultatif) Exécuter le projet Android
Dans cette section, vous exécutez le projet Xamarin.Android. Vous pouvez ignorer cette
section si vous n’utilisez pas d’appareils Android.
Visual Studio
1. Cliquez avec le bouton droit sur le projet Android (Droid), puis cliquez sur Définir
comme projet de démarrage.
2. Dans le menu Générer, cliquez sur Gestionnaire de configuration.
3. Dans la boîte de dialogue Gestionnaire de configuration, cochez les
cases Générer et Déployer situées à côté du projet Android, et assurez-vous que
la case Générer du projet de code partagé est cochée.
4. Appuyez sur la touche F5 ou le bouton Démarrer pour générer le projet et
démarrer l’application dans l’émulateur Android.
Visual Studio pour Mac

1. Cliquez avec le bouton droit sur le projet Android, puis cliquez sur Définir comme
projet de démarrage.
2. Pour générer le projet et démarrer l’application dans l’émulateur Android, cliquez
sur le menu Exécuter, puis sur Démarrer le débogage.

Dans l’application, tapez un texte explicite, tel que Découvrir Xamarin, puis cliquez sur le
bouton « + » (+).
Cette action envoie une demande post vers le back end Mobile Apps qui est hébergé
dans Azure. Les données de la requête sont insérées dans la table TodoItem. Les
éléments stockés dans cette table sont renvoyés par le backend Mobile Apps et les
données sont affichées dans la liste.
Note

Le code qui vous permet d’accéder à votre back end Mobile Apps se trouve dans le
fichier C# TodoItemManager.cs du projet de code partagé de la solution.
(Facultatif) Exécuter le projet iOS
Dans cette section, vous exécutez le projet Xamarin.iOS pour les appareils iOS. Vous
pouvez ignorer cette section si vous n’utilisez pas d’appareils iOS.
Visual Studio

1. Cliquez avec le bouton droit sur le projet iOS, puis cliquez sur Définir comme
projet de démarrage.
2. Dans le menu Générer, cliquez sur Gestionnaire de configuration.
3. Dans la boîte de dialogue Gestionnaire de configuration, cochez les
cases Générer et Déployer situées à côté du projet iOS, et assurez-vous que la
case Générer du projet de code partagé est cochée.
4. Pour générer le projet et démarrer l’application dans l’émulateur iPhone, appuyez
sur la touche F5.
Visual Studio pour Mac

1. Cliquez avec le bouton droit sur le projet iOS, puis cliquez sur Définir comme
projet de démarrage.
2. Dans le menu Exécuter, cliquez sur Démarrer le débogage pour créer le projet et
démarrer l’application dans l’émulateur iPhone.

Dans l’application, tapez un texte explicite, tel que Découvrir Xamarin, puis cliquez sur le
bouton « + » (+).
Cette action envoie une demande post vers le back end Mobile Apps qui est hébergé
dans Azure. Les données de la requête sont insérées dans la table TodoItem. Les
éléments stockés dans cette table sont renvoyés par le backend Mobile Apps et les
données sont affichées dans la liste.
Note

Vous trouverez le code qui vous permet d’accéder à votre back end Mobile Apps dans le
fichier C# TodoItemManager.cs du projet de code partagé de la solution.
(Facultatif) Exécuter le projet Windows
Dans cette section, vous exécutez le projet UWP (plateforme Windows universelle)
Xamarin.Forms pour les appareils Windows. Vous pouvez ignorer cette section si vous
n’utilisez pas d’appareils Windows.
Visual Studio
1. Cliquez avec le bouton droit un projet UWP, puis cliquez sur Définir comme
projet de démarrage.
2. Dans le menu Générer, cliquez sur Gestionnaire de configuration.
3. Dans la boîte de dialogue Gestionnaire de configuration, cochez les
cases Générer et Déployer situées à côté du projet Windows que vous avez choisi,
et assurez-vous que la case Générer du projet de code partagé est cochée.
4. Appuyez sur la touche F5 ou le bouton Démarrer (qui doit indiquer Ordinateur
local) pour générer le projet et démarrer l’application dans l’émulateur Android.
Note

Le projet Windows ne peut pas être exécuté sur macOS.

Dans l’application, tapez un texte explicite, tel que Découvrir Xamarin, puis cliquez sur le
bouton « + » (+).

Cette action envoie une demande post vers le back end Mobile Apps qui est hébergé
dans Azure. Les données de la requête sont insérées dans la table TodoItem. Les
éléments stockés dans cette table sont renvoyés par le backend Mobile Apps et les
données sont affichées dans la liste.

Note
Vous trouverez le code qui vous permet d’accéder à votre back end Mobile Apps dans le
fichier C# TodoItemManager.cs du projet de bibliothèque de classes portables de
votre solution.

Résolution de problèmes
Si vous avez des problèmes pour générer la solution, exécutez le gestionnaire de
package NuGet et mettez à jour vers la dernière version de Xamarin.Forms, et dans le
projet Android, mettez à jour les packages de support Xamarin.Android. Les projets de
démarrage rapide n’incluent pas toujours les dernières versions.

Notez que tous les packages de support référencés dans votre projet Android doivent
avoir la même version. Le package NuGet Azure Mobile Apps comporte une
dépendance Xamarin.Android.Support.CustomTabs à la plateforme Android. Par
conséquent, si votre projet utilise des packages de support plus récents, vous devez
installer directement ce package avec la version requise pour éviter les conflits.
LAB : Créer une application mobile avec
Azure Mobile APP

Prérequis
Pour réaliser ce LAB, vous avez besoin des éléments suivants :

 Outils de développement Android, qui incluent l’environnement de développement


intégré Android Studio et la dernière plateforme Android.
 Kit de développement logiciel (SDK) Azure Mobile Android, qui est automatiquement
inclus dans le projet de démarrage rapide que vous téléchargez.
 Un compte Azure actif.

Exercice 1 : Créer le backend de l’application mobile

Cet exercice montre comment ajouter un backend cloud à une application mobile
Android à l’aide d’un backend d’application mobile Azure. Vous allez créer un backend
d’application mobile et une simple application Android Todo list qui stocke les données
d’application dans Azure.

Le suivi de ce LAB est un prérequis pour tous les autres LABs Android sur l’utilisation de
la fonctionnalité Mobile Apps dans Azure App Service.

Créer un serveur principal d'applications mobiles Azure

1. Connectez-vous au Portail Azure.


2. Cliquez sur Créer une ressource.
3. Dans la zone de recherche, entrez Mobile Apps.
4. Dans la liste des résultats, sélectionnez Démarrage rapide Mobile Apps, puis
sélectionnez Créer.
5. Choisissez un Nom de l’application unique. Celui-ci fera également partie du nom
de domaine de votre App Service.
6. Dans Groupe de ressources, sélectionnez un groupe de ressources
existant ou créez-en un (en utilisant le même nom que votre application).
7. Cliquez sur Créer. Patientez quelques minutes jusqu’au déploiement du service,
puis continuez. Regardez l’icône de Notifications (cloche) dans l’en-tête de portail
à la recherche de mises à jour de l’état.

Configurer le projet de serveur

1. Cliquez sur le bouton App Services, sélectionnez les back end Mobile Apps,
choisissez Démarrage rapide et sélectionnez votre plateforme client (iOS,
Android, Xamarin, Cordova).
2. Si une connexion à une base de données n’est pas configurée, créez-en une en
procédant comme suit :

a. Créez une base de données SQL Database et un serveur. Vous devrez peut-être
laisser le champ du nom de la chaîne de connexion sur la valeur par défaut
MS_TableConnectionString afin de terminer l’étape 3 ci-dessous.

b. Attendez que la connexion de données soit créée.


c. La connexion de données doit être réussie.

3. Sous 2. Créer une API de table, sélectionnez Node.js pour Langage du serveur
principal.
4. Acceptez l’accusé de réception, puis sélectionnez Créer une table
TodoItem. Cette action crée une table d’éléments de tâche dans votre base de
données.
Important

Basculer un back end existant vers Node.js remplace tout le contenu. Pour créer un
back end .NET, consultez l’article Travailler avec le SDK d’un serveur principal
.NET pour Mobile Apps.
Exercice 2 : Créer une application mobile Android, iOS et Cordova
Ce LAB présente l’ajout d’App Service Mobile Apps, un service principal cloud, à une
application iOS. La première étape consiste à créer un nouveau serveur principal mobile
sur Azure. Téléchargez ensuite un exemple d’application iOS Todo list simple qui stocke
les données dans Azure.

Télécharger et exécuter l’application Android

1. Visitez le portail Azure. Cliquez sur Parcourir tout > Applications mobiles > le serveur
principal que vous venez de créer. Dans les paramètres de l’application mobile, cliquez
sur Démarrage rapide > Android. Sous Configurer votre application cliente, cliquez
sur Télécharger. Un projet Android complet pour une application préconfigurée pour se
connecter à votre serveur principal est téléchargé.
2. Ouvrez le projet avec Android Studio, en utilisant Importer un projet (Eclipse ADT,
Gradle, etc.). Assurez-vous d’éviter toute erreur JDK avec ce choix d’importation.
3. Appuyez sur le bouton Exécuter l’application pour générer le projet et démarrer
l’application dans le simulateur Android.
4. Dans l’application, tapez un texte explicite, comme Suivre le LAB , puis cliquez sur
l’icône Ajouter. Cette action envoie une requête POST au serveur principal Azure
déployé précédemment. Le backend insère les données de la requête dans la table
SQL TodoItem et renvoie des informations sur les éléments récemment stockés à
l’application mobile. L’application mobile affiche ces données dans la liste.
Télécharger et exécuter l’application iOS

1. Sur votre Mac, accédez au Portail Azure. Cliquez sur Tous les services > App
Services > le serveur principal que vous venez de créer. Dans les paramètres de
l’application mobile, choisissez votre langue par défaut :
 Objective-C – Démarrage rapide > iOS (Objective-C)
 Swift – Démarrage rapide > iOS (Swift)

Sous 3. Configurer votre application cliente, cliquez sur Télécharger. Cette


opération télécharge un projet Xcode complet préconfiguré pour se
connecter à votre serveur principal. Ouvrez le projet à l’aide de Xcode.

2. Appuyez sur le bouton Exécuter pour générer le projet et démarrer l’application


dans le simulateur iOS.
3. Dans l’application, tapez un texte explicite, comme Suivre le lab, puis cliquez sur
l’icône plus (+). Cette action envoie une requête POST au serveur principal Azure
déployer précédemment. Le backend insère les données de la requête dans la
table SQL TodoItem et renvoie des informations sur les éléments récemment
stockés à l’application mobile. L’application mobile affiche ces données dans la
liste.
Télécharger et exécuter l'application Apache Cordova

1. Visitez le portail Azure.


2. Cliquez sur App Services > serveur principal que vous avez créé.
3. Dans les paramètres de l’application mobile, cliquez sur Démarrage
rapide > Cordova.

4. Sous Configurer votre application client, sélectionnez Création d'une application, puis
cliquez sur Télécharger.
5. Décompressez le fichier ZIP téléchargé dans un répertoire sur votre disque dur, accédez au
fichier de solution (.sln) et ouvrez-le à l’aide de Visual Studio.
6. Dans Visual Studio, choisissez la plateforme de solution (Windows, iOS ou Android) dans
la liste déroulante en regard de la flèche de démarrage. Sélectionnez un périphérique de
déploiement spécifique ou un émulateur en cliquant sur le menu déroulant sur la flèche
verte. Vous pouvez utiliser la plateforme Android par défaut et l’émulateur Ripple.Certains
didacticiels plus avancés (les notifications push, par exemple) vous demanderont de
sélectionner un émulateur ou un périphérique pris en charge.
7. Pour générer et exécuter votre application Cordova, appuyez sur F5 ou cliquez sur la
flèche verte. Si vous voyez apparaître dans l’émulateur une boîte de dialogue de sécurité
demandant l’accès au réseau, acceptez.
8. Après le démarrage de l’application sur le périphérique ou l’émulateur, tapez un texte
explicite dans Entrer un nouveau texte, tel que Suivre le didacticiel, puis cliquez sur le
bouton Ajouter.

Le serveur principal insère les données de la requête dans la table SQL TodoItem dans la
base de données SQL et renvoie des informations sur les éléments récemment stockés à
l’application mobile. L’application mobile affiche ces données dans la liste.

Vous pouvez répéter les étapes 3 à 5 pour les autres plateformes.


Lab : Créer une application web PHP dans Azure

Azure Web Apps offre un service d’hébergement web hautement évolutif appliquant

des mises à jour correctives automatiques. Ce guide de démarrage rapide vous indique

comment déployer une application PHP dans Azure Web Apps. Vous créez l’application

web dans Cloud Shell grâce à l’interface Azure CLI, et vous utilisez Git pour déployer

l’exemple de code PHP dans l’application web.

Vous pouvez suivre ces étapes en utilisant un ordinateur Mac, Windows ou Linux. Une

fois les composants requis installés, l’exécution de cette procédure prend environ cinq

minutes.

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

Téléchargez l’exemple localement

Exécutez les commandes suivantes dans une fenêtre de terminal. Cette action va cloner

l’exemple d’application sur votre ordinateur local et vous faire accéder au répertoire

contenant l’exemple de code.


bashCopier

git clone https://github.com/Azure-Samples/php-docs-hello-world

cd php-docs-hello-world

Exécutez l’application localement.

Exécutez l’application localement pour voir à quoi elle devrait ressembler lorsque vous la

déploierez sur Azure. Ouvrez une fenêtre de terminal et utilisez la commande php pour

lancer le serveur web PHP intégré.

php -S localhost:8080

Ouvrez un navigateur web et accédez à l’application exemple à l’adresse

http://localhost:8080.

Vous voyez apparaître sur la page le message Hello World ! de l’exemple d’application.

Dans la fenêtre de terminal, appuyez sur Ctrl + C pour quitter le serveur web.
Ouvrir Azure Cloud Shell

Azure Cloud Shell est un interpréteur de commandes interactif et gratuit que vous

pouvez utiliser pour exécuter les étapes de cet article. Il contient des outils Azure

courants préinstallés et configurés pour être utilisés avec votre compte. Cliquez

simplement sur le bouton Copier pour copier le code, collez-le dans Cloud Shell, puis

appuyez sur Entrée pour l’exécuter. Cloud Shell peut être ouvert de plusieurs façons :

Sélectionnez Essayer dans le coin supérieur

droit d’un bloc de code.

Ouvrez Cloud Shell dans votre navigateur.

Sélectionnez le bouton Cloud Shell du

menu situé en haut à droite du portail

Azure.

Créer un utilisateur de déploiement

Dans Cloud Shell, créez des informations d’identification de déploiement avec la

commande az webapp deployment user set. Cet utilisateur de déploiement est requis

pour les déploiements FTP et Git en local sur une application web. Le nom d’utilisateur

et le mot de passe par défaut sont tous les deux au niveau du compte. Ils sont différents

des informations d’identification de votre abonnement Azure.

Dans l’exemple suivant, remplacez <username> et <password> (parenthèses comprises)

par le nom et le mot de passe du nouvel utilisateur. Le nom d’utilisateur doit être unique
au sein de Azure. Le mot de passe doit comporter au moins huit caractères et inclure

deux des trois éléments suivants : lettres, chiffres et symboles.

az webapp deployment user set --user-name <username> --password <password>

Vous devez obtenir une sortie JSON, avec le mot de passe indiqué comme étant null. Si

vous obtenez une erreur 'Conflict'. Details: 409, modifiez le nom d’utilisateur. Si

vous obtenez une erreur 'Bad Request'. Details: 400, utilisez un mot de passe plus

fort. Vous ne devez créer cet utilisateur de déploiement qu’une fois. Vous pouvez

l’utiliser pour tous vos déploiements Azure.

1. Créer un groupe de ressources

Un groupe de ressources est un conteneur logique dans lequel les ressources Azure

comme les applications web, les bases de données et les comptes de stockage sont

déployés et gérés. Par exemple, vous pouvez choisir de supprimer le groupe de

ressources complet ultérieurement en une seule étape.

Dans Cloud Shell, créez un groupe de ressources avec la commande az group create.

L’exemple suivant crée un groupe de ressources nommé myResourceGroup à

l’emplacement Europe de l’Ouest. Pour afficher tous les emplacements pris en charge

pour App Service au niveau Gratuit, exécutez la commande az appservice list-

locations --sku FREE.

Azure CLICopierEssayer

az group create --name myResourceGroup --location "West Europe"


Vous créez généralement votre groupe de ressources et les ressources dans une région

proche de chez vous.

Une fois la commande terminée, une sortie JSON affiche les propriétés du groupe de

ressources.

2. Créer un plan Azure App Service

Dans Cloud Shell, créez un plan App Service avec la commande az appservice plan

create.

L’exemple suivant crée un plan App Service nommé myAppServicePlan dans le niveau

tarifaire Gratuit :

az appservice plan create --name myAppServicePlan --resource-group


myResourceGroup --sku FREE

Lorsque le plan App Service est créé, l’interface Azure CLI affiche des informations

similaires à l’exemple suivant :

JSONCopier

"adminSiteName": null,

"appServicePlanName": "myAppServicePlan",

"geoRegion": "West Europe",

"hostingEnvironmentProfile": null,

"id": "/subscriptions/0000-
0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myApp
ServicePlan",
"kind": "app",

"location": "West Europe",

"maximumNumberOfWorkers": 1,

"name": "myAppServicePlan",

< JSON data removed for brevity. >

"targetWorkerSizeId": 0,

"type": "Microsoft.Web/serverfarms",

"workerTierName": null

3. Créer une application web

Dans Cloud Shell, créez une application web dans le plan App Service myAppServicePlan

avec la commande az webapp create.

Dans l’exemple suivant, remplacez <app_name> par un nom d’application unique (les

caractères autorisés sont a-z, 0-9 et -). Le runtime est défini sur PHP|7.0. Pour voir tous

les runtimes, exécutez az webapp list-runtimes.

# Bash

az webapp create --resource-group myResourceGroup --plan myAppServicePlan --


name <app_name> --runtime "PHP|7.0" --deployment-local-git

# PowerShell

az --% webapp create --resource-group myResourceGroup --plan myAppServicePlan


--name <app_name> --runtime "PHP|7.0" --deployment-local-git

Une fois l’application web créée, Azure CLI affiche une sortie similaire à l’exemple

suivant :
JSONCopier

Local git is configured with url of


'https://<username>@<app_name>.scm.azurewebsites.net/<app_name>.git'

"availabilityState": "Normal",

"clientAffinityEnabled": true,

"clientCertEnabled": false,

"cloningInfo": null,

"containerSize": 0,

"dailyMemoryTimeQuota": 0,

"defaultHostName": "<app_name>.azurewebsites.net",

"enabled": true,

< JSON data removed for brevity. >

Vous avez créé une application web vide, avec le déploiement Git activé.

L’URL du Git distant est indiquée dans la propriété deploymentLocalGitUrl, avec le

format https://<username>@<app_name>.scm.azurewebsites.net/<app_name>.git.

Enregistrez cette URL, car vous en aurez besoin ultérieurement.

Accédez à votre nouvelle application web. Remplacez <nom de l’application > par le

nom d’application unique créé à l’étape précédente.

http://<app name>.azurewebsites.net

Voici à quoi doit ressembler votre nouvelle application web :


4. Effectuer une transmission de type push vers

Azure à partir de Git

De retour dans la fenêtre du terminal local, ajoutez un référentiel distant Azure dans

votre référentiel Git local. Remplacez <deploymentLocalGitUrl-from-create-step> par

l’URL du Git distant que vous avez enregistrée à la section Créer une app web.

bashCopier

git remote add azure <deploymentLocalGitUrl-from-create-step>


Effectuez une transmission de type push vers le référentiel distant Azure pour déployer

votre application à l’aide de la commande suivante. Quand Git Credential Manager vous

invite à entrer vos informations d’identification, veillez à entrer celles que vous avez

créées dans la section Configurer un utilisateur de déploiement, et non pas celles vous

permettant de vous connecter au portail Azure.

git push azure master

L’exécution de cette commande peut prendre quelques minutes.

5. Accéder à l’application

Accédez à l’application déployée à l’aide de votre navigateur web.


http://<app_name>.azurewebsites.net

L’exemple de code PHP s’exécute dans une application web Azure App Service.

Félicitations ! Vous avez déployé votre première application en PHP dans App Service.
6. Mettre à jour et redéployer le code

À l’aide d’un éditeur de texte local, ouvrez le fichier index.php dans l’application PHP et modifiez une
petite partie du texte contenu dans la chaîne en regard de l’élément echo :

echo "Hello Azure!";


Dans la fenêtre du terminal local, validez vos modifications dans Git, puis envoyez les modifications de
code à Azure.

git commit -am "updated output"

git push azure master

Une fois le déploiement terminé, revenez à la fenêtre du navigateur que vous avez

ouverte à l’étape Accéder à l’application, puis actualisez la page.

Gérer votre nouvelle application web Azure

Accédez au Portail Azure pour gérer l’application web que vous avez créée.

Dans le menu de gauche, cliquez sur App Services, puis cliquez sur le nom de votre application web
Azure.
La page Vue d’ensemble de votre application web s’affiche. Ici, vous pouvez également des tâches de
gestion de base (parcourir, arrêter, démarrer, redémarrer et supprimer des éléments, par exemple).

Le menu de gauche fournit différentes options vous permettant de configurer votre

application.
7. Supprimer des ressources

Au cours des étapes précédentes, vous avez créé des ressources Azure au sein d’un

groupe de ressources. Si vous ne pensez pas avoir besoin de ces ressources à l’avenir,

supprimez le groupe de ressources en exécutant la commande suivante dans Cloud

Shell :

az group delete --name myResourceGroup

L’exécution de cette commande peut prendre une minute ou plus.


LAB : créer un flux de travail automatisé
(Workflow) avec Azure Logic Apps et
Visual Studio
Avec Azure Logic Apps et Visual Studio, vous pouvez créer des workflows pour

automatiser des tâches et des processus qui intègrent des applications, des données,

des systèmes et des services dans les entreprises et organisations. Ce démarrage rapide

montre comment vous pouvez concevoir et générer ces workflows en créant des

applications logiques dans Visual Studio et en déployant ces applications sur Azure dans

le cloud. Et bien que vous puissiez effectuer ces tâches dans le portail Azure, Visual

Studio vous permet d’ajouter des applications logiques pour le contrôle de code source,

la publication de différentes versions et la création de modèles Azure Resource Manager

pour divers environnements de déploiement.

Ici, vous créez la même application logique que dans le démarrage rapide de portail

Azure, mais avec Visual Studio. Cette application logique surveille les flux RSS d’un site

web et envoie un e-mail chaque fois qu’un élément est publié sur le site. Lorsque vous

avez terminé, votre application logique ressemble au workflow de niveau élevé suivant :
Avant de commencer, vérifiez que vous disposez des éléments ci-après :

 Si vous n’avez pas d’abonnement Azure, inscrivez-vous pour bénéficier d’un compte

Azure gratuit.

 Téléchargez et installez ces outils, si vous ne les avez pas déjà :

o Visual Studio 2017 ou Visual Studio 2015 - édition Community ou supérieure. Ce

démarrage rapide utilise Visual Studio Community 2017, qui est gratuit.

o Microsoft Azure SDK pour .NET (2.9.1 ou version ultérieure) et Azure PowerShell. En

savoir plus sur Azure SDK pour .NET.

o Outils Azure Logic Apps pour Visual Studio 2017 ou Visual Studio 2015

Vous pouvez télécharger et installer les outils Azure Logic Apps directement à partir de

Visual Studio Marketplace ou en apprendre davantage sur l’installation de cette

extension dans Visual Studio. Veillez à redémarrer Visual Studio après l’installation.

 Un compte de messagerie pris en charge par Logic Apps, par exemple Office 365

Outlook, Outlook.com ou Gmail. Pour les autres fournisseurs, passez en revue la liste des

connecteurs ici. Cette application logique utilise Office 365 Outlook. Si vous utilisez un
autre fournisseur, les étapes générales sont identiques, mais votre interface utilisateur

peut être légèrement différente.

 Accès au web lors de l’utilisation du Concepteur d’application logique intégré

Le Concepteur requiert une connexion Internet pour créer des ressources dans Azure et

pour lire les propriétés et les données à partir de connecteurs dans votre application

logique. Par exemple, si vous utilisez le connecteur Dynamics CRM Online, le

Concepteur recherche les propriétés par défaut et personnalisées disponibles dans votre

instance CRM.

Créer un projet de groupe de ressources Azure

Pour commencer, créez un projet de groupe de ressources Azure. En savoir plus sur les

ressources et groupes de ressources Azure.

1. Démarrez Visual Studio et connectez-vous avec votre compte Azure.

2. Dans le menu Fichier, sélectionnez Nouveau > Projet. (Clavier : Ctrl + Maj + N)

3. Sous Installé, sélectionnez Visual C# ou Visual Basic. Sélectionnez Cloud > Groupe de

ressources Azure. Nommez votre projet, par exemple :


4. Sélectionnez le modèle Application logique.
Une fois votre projet créé par Visual Studio, l’Explorateur de solutions s’ouvre et affiche

votre solution.

Dans votre solution, le fichier LogicApp.json ne stocke pas seulement la définition de

votre application logique, mais est également un modèle Azure Resource Manager que

vous pouvez configurer pour le déploiement.

Créer une application logique vide

Après avoir créé votre projet de groupe de ressources Azure, créez et générez votre

application logique à partir du modèle Application logique vide.

1. Dans l’Explorateur de solutions, ouvrez le menu contextuel pour le fichier

LogicApp.json. Sélectionnez Open With Logic App Designer (Ouvrir avec le

Concepteur d’application logique). (Clavier : Ctrl + L)


2. Dans Abonnement, sélectionnez l’abonnement Azure que vous voulez utiliser. Pour

Groupe de ressources, sélectionnez Créer nouveau..., afin de créer un groupe de

ressources Azure.

Visual Studio a besoin de votre abonnement Azure et d’un groupe de ressources pour

créer et déployer des ressources associées à votre application logique et à vos

connexions.
Paramètre Exemple de valeur Description

Liste de profils Contoso Par défaut, le compte que vous avez utilisé

utilisateur jamalhartnett@contoso.com pour vous connecter

Abonnement Pay-As-You-Go Le nom de votre abonnement Azure et le

(jamalhartnett@contoso.com) compte associé

Groupe de MyLogicApp-RG Le groupe de ressources Azure et

ressources (USA Ouest) l’emplacement de stockage et de

déploiement des ressources pour votre

application logique

Lieu MyLogicApp-RG2 Un autre emplacement si vous ne souhaitez

(USA Ouest) pas utiliser l’emplacement du groupe de

ressources

3. Le Concepteur d’application logique s’ouvre et affiche une page contenant une vidéo de

présentation et les déclencheurs couramment utilisés. Faites défiler la vidéo et les

déclencheurs. Sous Modèles, sélectionnez Application logique vide.


Générer un workflow d’application logique

Ensuite, ajoutez un déclencheur qui s’active lorsqu’un nouvel élément de flux RSS

apparaît. Chaque application logique doit commencer avec un déclencheur, qui s’active

quand des critères spécifiques sont remplis. Chaque fois que le déclencheur est activé, le

moteur Logic Apps crée une instance d’application logique qui exécute votre workflow.
1. Dans le Concepteur d’application logique, entrez « rss » dans la zone de recherche.

Sélectionnez le déclencheur suivant : Lors de la publication d’un élément de flux

Le déclencheur s’affiche désormais dans le Concepteur :

2. Pour terminer de générer l’application logique, suivez les étapes du workflow dans le

démarrage rapide du portail Azure, puis revenez à cet article.

Une fois que vous avez terminé, votre application logique ressemble à cet exemple :
3. Pour enregistrer votre application logique, enregistrez votre solution Visual Studio.

(Clavier : Ctrl + S)

Maintenant, avant de pouvoir tester votre application logique, déployez votre

application dans Azure.

Déployer l’application logique dans Azure

Avant de pouvoir exécuter votre application logique, déployez l’application à partir de

Visual Studio dans Azure ; pour ce faire, seules quelques étapes doivent être effectuées.
1. Dans l’Explorateur de solutions, dans le menu contextuel de votre projet, sélectionnez

Déployer > Nouveau. Si vous y êtes invité, connectez-vous à votre compte Azure.

2. Pour ce déploiement, gardez l’abonnement Azure, le groupe de ressources et les autres

paramètres par défaut. Quand vous êtes prêt, choisissez Déployer.


3. Si le champ Modifier les paramètres s’affiche, indiquez le nom de la ressource pour

l’application logique à utiliser au moment du déploiement, puis enregistrez vos

paramètres, par exemple :

Lorsque le déploiement commence, l’état du déploiement de votre application s’affiche

dans la fenêtre Sortie de Visual Studio. Si l’état n’apparaît pas, ouvrez la liste Afficher la

sortie à partir de et sélectionnez votre groupe de ressources Azure.


Si les connecteurs que vous avez sélectionnés nécessitent une intervention de votre

part, une fenêtre PowerShell peut s’ouvrir en arrière-plan et vous demander de saisir les

mots de passe ou les clés secrètes nécessaires. Le déploiement se poursuit dès que vous

avez saisi ces informations.

Une fois le déploiement terminé, votre application logique est en ligne dans le portail

Azure et vérifie le flux RSS en fonction de la planification que vous avez spécifiée

(chaque minute). Si le flux RSS a de nouveaux éléments, votre application logique envoie

un e-mail pour chaque nouvel élément. Dans le cas contraire, votre application logique

attend jusqu’à l’intervalle suivant avant de procéder à une nouvelle vérification.

Par exemple, voici des e-mails classiques envoyés par cette application logique. Si vous

ne recevez aucun e-mail, vérifiez votre dossier Courrier indésirable.


Techniquement, lorsque le déclencheur vérifie le flux RSS et trouve de nouveaux

éléments, le déclencheur s’active et le moteur Logic Apps crée une instance de workflow

d’application logique qui exécute les actions dans le workflow. Si le déclencheur ne

trouve pas de nouveaux éléments, il ne s’active pas et « ignore » l’instanciation du

workflow.

Félicitations, vous avez maintenant correctement généré et déployé votre application

logique avec Visual Studio ! Pour gérer votre application logique et examiner son

historique des exécutions, consultez Manage logic apps with Visual Studio (Gérer des

applications logiques avec Visual Studio).

Supprimer des ressources

Quand vous n’en avez plus besoin, supprimez le groupe de ressources qui contient

votre application logique et les ressources associées.

1. Connectez-vous au portail Azure avec le même compte que celui utilisé pour créer votre

application logique.

2. Dans le menu Azure principal, choisissez Groupes de ressources. Sélectionnez le

groupe de ressources pour votre application logique, puis sélectionnez Vue

d’ensemble.

3. Dans la page Vue d’ensemble, choisissez Supprimer un groupe de ressources.

Confirmez le nom du groupe de ressources, puis choisissez Supprimer.


4. Supprimez la solution Visual Studio de votre ordinateur local.
LAB : créer un flux de travail automatisé
avec Azure Logic Apps - portail Azure
Ce guide de démarrage rapide explique comment créer votre premier flux de travail
automatisé avec Azure Logic Apps. Dans cet article, vous créez une application logique
qui vérifie régulièrement le flux RSS d’un site web et recherche de nouveaux éléments. Si
de nouveaux éléments existent, l’application logique envoie un e-mail pour chacun
d’eux.Lorsque vous avez terminé, votre application logique ressemble au flux de travail
suivant à un niveau élevé :

Pour suivre ce guide de démarrage rapide, vous avez besoin d’un compte de messagerie
d’un fournisseur pris en charge par Logic Apps, par exemple Office 365 Outlook,
Outlook.com ou Gmail. Pour les autres fournisseurs, passez en revue la liste des
connecteurs ici. Cette application logique utilise un compte Office 365 Outlook. Si vous
utilisez un autre compte de messagerie, les étapes générales sont identiques, mais votre
interface utilisateur peut-être légèrement différente.

Connectez-vous au portail Azure.


Connectez-vous au portail Azure avec les informations d’identification de votre compte
Azure.
Créer votre application logique
1. Dans le menu principal Azure, choisissez Créer une
ressource > Intégration > Application logique.
2. Sous Créer une application logique, indiquez les détails de votre application
logique comme indiqué ici. Lorsque c’est fait, choisissez Épingler au tableau de
bord > Créer.
Propriété Valeur Description
Nom MyFirstLogicApp Nom de l’application logique.
Abonnement <your-Azure- Nom de votre abonnement Azure.
subscription-name>
Groupe de My-First-LA-RG Nom du groupe de ressources Azure utilisé
ressources pour organiser les ressources connexes.
Lieu USA Ouest Région dans laquelle stocker les informations
sur votre application logique.
Log Analytics Off Maintenez le paramètre de journalisation des
diagnostics Désactivé.

3. Une fois qu’Azure a déployé votre application, le Concepteur d’applications


logiques s’ouvre et affiche une page contenant une vidéo de présentation et les
déclencheurs couramment utilisés. Sous Modèles, choisissez Application logique
vide.
Ensuite, ajoutez un déclencheur qui s’active lorsqu’un nouvel élément de flux RSS
apparaît.Chaque application logique doit démarrer avec un déclencheur, qui s’active
lorsqu’un événement spécifique se produit ou lorsqu’une condition particulière est
remplie. Chaque fois que le déclencheur s’active, le moteur Logic Apps crée une
instance d’application logique qui démarre et exécute votre flux de travail.
Vérifier le flux RSS avec un déclencheur
1. Dans le concepteur, entrez « rss » dans la zone de recherche. Sélectionnez le
déclencheur suivant : RSS - Lors de la publication d’un élément de flux
2. Fournissez ces informations pour votre déclencheur, comme illustré et décrit :

Propriété Valeur Description


URL du flux http://feeds.reuters.com/reuters/topNews Lien du flux RSS que vous
RSS souhaitez surveiller.
Intervalle 1 Nombre d’intervalles
d’attente entre les
vérifications.
Fréquence Minute Unité de temps de chaque
intervalle entre les
vérifications.

Ensemble, l’intervalle et la fréquence définissent la planification du déclencheur de


votre application logique. Cette application logique vérifie le flux toutes les
minutes.
3. Pour masquer les informations du déclencheur pour le moment, cliquez dans sa
barre de titre.

4. Enregistrez votre application logique. Dans la barre d’outils du concepteur,


choisissez Enregistrer.

Votre application logique est à présent en ligne mais elle ne fait rien d’autre que vérifier
le flux RSS. Par conséquent, ajoutez une action qui répond à l’activation du déclencheur.
Envoyer un e-mail à l’aide d’une action
Ajoutez une action qui envoie un e-mail lorsqu’un nouvel élément apparaît dans le flux
RSS.

1. Sous le déclencheur Lors de la publication d’un élément de flux, choisissez +


Nouvelle étape > Ajouter une action.

2. Sous Choisir une action, entrez « envoyer un e-mail » comme filtre. Dans la liste
d’actions, sélectionnez l’action « envoyer un e-mail » pour le fournisseur de
messagerie de votre choix.
Pour filtrer la liste d’actions pour un service ou une application spécifique, vous
pouvez commencer par sélectionner ce service ou cette application :

 Pour les comptes Azure professionnels ou scolaires, sélectionnez Office 365


Outlook.
 Pour les comptes Microsoft personnels, sélectionnez Outlook.com.
3. Si vous êtes invité à entrer vos informations d’identification, connectez-vous à
votre compte de messagerie afin que Logic Apps puisse établir une connexion
avec votre compte de messagerie.
4. Dans l’action Envoyer un e-mail, spécifiez les données que vous souhaitez inclure
dans l’e-mail.
. Dans la zone À, entrez l’adresse e-mail du destinataire. À des fins de test, vous
pouvez utiliser votre propre adresse e-mail.

Pour l’instant, ignorez la liste Ajouter du contenu dynamique qui


s’affiche. Lorsque vous cliquez dans certaines zones d’édition, cette liste
apparaît et affiche les paramètres disponibles de l’étape précédente que vous
pouvez inclure en tant qu’entrées dans votre flux de travail.

a. Dans la zone Objet, entrez ce texte avec un espace vide de fin : New RSS item:.
b. Dans la liste Ajouter du contenu dynamique, sélectionnez Titre du flux pour
inclure le titre de l’élément RSS.

Lorsque vous avez terminé, l’objet de l’e-mail ressemble à l’exemple suivant :


Si une boucle « For Each » s’affiche dans le concepteur, c’est que vous avez
sélectionné un jeton qui contient un tableau, par exemple, le jeton categories-
Item.Pour ces types de jeton, le concepteur ajoute automatiquement cette
boucle autour de l’action qui référence ce jeton. De cette façon, votre
application logique effectue la même action sur chaque élément du
tableau. Pour supprimer la boucle, choisissez le bouton points de
suspension (...) sur la barre de titre de la boucle, puis Supprimer.

c. Dans la zone Corps, entrez ce texte, puis sélectionnez ces jetons pour le corps
de l’e-mail. Pour ajouter des lignes vides dans une zone d’édition, appuyez sur
Maj + Entrée.

Propriété Description

Titre du flux Titre de l’élément.

Flux publié le Date et heure de publication de l’élément.

Lien du flux principal URL de l’élément.

5. Enregistrez votre application logique.

À présent, testez votre application logique.


Exécuter votre application logique
Pour lancer manuellement votre application logique, sélectionnez Exécuter dans la
barre d’outils du concepteur. Vous pouvez également attendre que votre application
logique vérifie le flux RSS selon la planification que vous avez spécifiée (toutes les
minutes). Si le flux RSS a de nouveaux éléments, votre application logique envoie un e-
mail pour chaque nouvel élément. Dans le cas contraire, votre application logique
attend jusqu’à l’intervalle suivant avant de procéder à une nouvelle vérification.

Par exemple, voici un e-mail classique envoyé par cette application logique. Si vous ne
recevez aucun e-mail, vérifiez votre dossier Courrier indésirable.

Techniquement, lorsque le déclencheur vérifie le flux RSS et trouve de nouveaux


éléments, le déclencheur s’active et le moteur Logic Apps crée une instance de workflow
d’application logique qui exécute les actions dans le workflow. Si le déclencheur ne
trouve pas de nouveaux éléments, il ne s’active pas et « ignore » l’instanciation du
workflow.

Félicitations, vous avez correctement généré et exécuté votre première application


logique avec le portail Azure !
Supprimer des ressources
Quand vous n’en avez plus besoin, supprimez le groupe de ressources qui contient
votre application logique et les ressources associées.
1. Dans le menu Azure principal, accédez à Groupes de ressources, puis sélectionnez
le groupe de ressources de votre application logique. Dans la page Vue
d’ensemble, choisissez Supprimer un groupe de ressources.

2. Confirmez le nom du groupe de ressources, puis choisissez Supprimer.


Dans ce Lab, vous avez créé votre première application logique qui vérifie les mises à
jour RSS en fonction de la planification que vous avez spécifiée (toutes les minutes) et
exécute une action (envoi d’un e-mail) lorsqu’il existe des mises à jour
Lab : Créer une API RESTful dans Azure
App Service
Azure App Service offre un service d’hébergement web hautement évolutif appliquant
des mises à jour correctives automatiques. De plus, App Service intègre la prise en
charge du partage des ressources cross-origin (CORS) pour les API RESTful. Ce
didacticiel montre comment déployer une application ASP.NET Core API sur App Service
avec prise en charge CORS. Vous configurez l’application à l’aide d’outils en ligne de
commande, et vous la déployez à l’aide de Git.

Ce Lab vous montre comment effectuer les opérations suivantes :

 Créer des ressources App Service à l’aide d’Azure CLI


 Déployer une API RESTful sur Azure à l’aide de Git
 Activer la prise en charge de CORS sur App Service

Créer l’application ASP.NET Core locale


Cette étape consiste à configurer le projet ASP.NET Core local. App Service prend en
charge le même flux de travail pour les API écrites dans d’autres langages.
Clonage de l’exemple d’application

Dans la fenêtre de terminal, cd vers un répertoire de travail.

Exécutez la commande suivante pour cloner l’exemple de référentiel :


git clone https://github.com/Azure-Samples/dotnet-core-api

Exécution de l'application

Exécutez la commande suivante pour installer les packages requis, migrer les bases de
données et démarrer l’application.
cd dotnet-core-api
dotnet restore
dotnet run

Accédez à http://localhost:5000/swagger dans un navigateur pour vous familiariser


avec l’interface utilisateur Swagger.
Accédez à http://localhost:5000/api/todo pour visualiser une liste des tâches JSON.

Accédez à http://localhost:5000 et familiarisez-vous avec l’application de


navigateur.Ensuite, vous allez pointer l’application de navigateur vers une API distante
dans l’App Service pour tester la fonctionnalité CORS. Le code pour l’application de
navigateur se trouve dans le répertoire wwwroot du référentiel.

Pour arrêter ASP.NET Core à tout moment, appuyez sur Ctrl+C dans le terminal.
Ouvrir Azure Cloud Shell
Azure Cloud Shell est un interpréteur de commandes interactif et gratuit que vous
pouvez utiliser pour exécuter les étapes de cet article. Il contient des outils Azure
courants préinstallés et configurés pour être utilisés avec votre compte. Cliquez
simplement sur le bouton Copier pour copier le code, collez-le dans Cloud Shell, puis
appuyez sur Entrée pour l’exécuter. Cloud Shell peut être ouvert de plusieurs façons :

Sélectionnez Essayer dans le coin


supérieur droit d’un bloc de code.

Ouvrez Cloud Shell dans votre


navigateur.

Sélectionnez le bouton Cloud Shell du


menu situé en haut à droite du portail
Azure.

Déployer des applications dans Azure


Dans cette étape, vous déployez votre application .NET Core connectée à SQL Database
sur App Service.
Configurer le déploiement Git local

Dans Cloud Shell, créez des informations d’identification de déploiement avec la


commande az webapp deployment user set. Cet utilisateur de déploiement est requis
pour les déploiements FTP et Git en local sur une application web. Le nom d’utilisateur
et le mot de passe par défaut sont tous les deux au niveau du compte. Ils sont différents
des informations d’identification de votre abonnement Azure.

Dans l’exemple suivant, remplacez <username> et <password> (parenthèses comprises)


par le nom et le mot de passe du nouvel utilisateur. Le nom d’utilisateur doit être unique
au sein de Azure. Le mot de passe doit comporter au moins huit caractères et inclure
deux des trois éléments suivants : lettres, chiffres et symboles.

az webapp deployment user set --user-name <username> --password <password>

Vous devez obtenir une sortie JSON, avec le mot de passe indiqué comme étant null. Si
vous obtenez une erreur 'Conflict'. Details: 409, modifiez le nom d’utilisateur. Si
vous obtenez une erreur 'Bad Request'. Details: 400, utilisez un mot de passe plus
fort.

Vous ne devez créer cet utilisateur de déploiement qu’une fois. Vous pouvez l’utiliser
pour tous vos déploiements Azure.

Créer un groupe de ressources

Un groupe de ressources est un conteneur logique dans lequel les ressources Azure
comme les applications web, les bases de données et les comptes de stockage sont
déployés et gérés. Par exemple, vous pouvez choisir de supprimer le groupe de
ressources complet ultérieurement en une seule étape.

Dans Cloud Shell, créez un groupe de ressources avec la commande az group


create.L’exemple suivant crée un groupe de ressources nommé myResourceGroup à
l’emplacement Europe de l’Ouest. Pour afficher tous les emplacements pris en charge
pour App Service au niveau Gratuit, exécutez la commande az appservice list-
locations --sku FREE.

az group create --name myResourceGroup --location "West Europe"

Vous créez généralement votre groupe de ressources et les ressources dans une région
proche de chez vous.

Une fois la commande terminée, une sortie JSON affiche les propriétés du groupe de
ressources.
Créer un plan App Service

Dans Cloud Shell, créez un plan App Service avec la commande az appservice plan
create.

L’exemple suivant crée un plan App Service nommé myAppServicePlan dans le niveau
tarifaire Gratuit :
az appservice plan create --name myAppServicePlan --resource-group
myResourceGroup --sku FREE

Lorsque le plan App Service est créé, l’interface Azure CLI affiche des informations
similaires à l’exemple suivant :
{
"adminSiteName": null,
"appServicePlanName": "myAppServicePlan",
"geoRegion": "West Europe",
"hostingEnvironmentProfile": null,
"id": "/subscriptions/0000-
0000/resourceGroups/myResourceGroup/providers/Microsoft.Web/serverfarms/myApp
ServicePlan",
"kind": "app",
"location": "West Europe",
"maximumNumberOfWorkers": 1,
"name": "myAppServicePlan",
< JSON data removed for brevity. >
"targetWorkerSizeId": 0,
"type": "Microsoft.Web/serverfarms",
"workerTierName": null
}
Créer une application web

Créer une application web dans le plan App Service myAppServicePlan.

Dans Cloud Shell, vous pouvez utiliser la commande az webapp create. Dans l’exemple
suivant, remplacez <app_name> par un nom d’application unique (les caractères autorisés
sont a-z, 0-9 et -).

az webapp create --resource-group myResourceGroup --plan myAppServicePlan --


name <app_name> --deployment-local-git

Une fois l’application web créée, Azure CLI affiche une sortie similaire à l’exemple
suivant :

Local git is configured with url of


'https://<username>@<app_name>.scm.azurewebsites.net/<app_name>.git'
{
"availabilityState": "Normal",
"clientAffinityEnabled": true,
"clientCertEnabled": false,
"cloningInfo": null,
"containerSize": 0,
"dailyMemoryTimeQuota": 0,
"defaultHostName": "<app_name>.azurewebsites.net",
"deploymentLocalGitUrl":
"https://<username>@<app_name>.scm.azurewebsites.net/<app_name>.git",
"enabled": true,
< JSON data removed for brevity. >
}
Note

L’URL du Git distant est indiquée dans la propriété deploymentLocalGitUrl, avec le


format https://<username>@<app_name>.scm.azurewebsites.net/<app_name>.git. Enre
gistrez cette URL, car vous en aurez besoin ultérieurement.
Effectuer une transmission de type push vers Azure à partir de Git

De retour dans la fenêtre du terminal local, ajoutez un référentiel distant Azure dans
votre référentiel Git local. Remplacez <deploymentLocalGitUrl-from-create-step> par
l’URL du Git distant que vous avez enregistrée.
git remote add azure <deploymentLocalGitUrl-from-create-step>

Effectuez une transmission de type push vers le référentiel distant Azure pour déployer
votre application à l’aide de la commande suivante. Quand Git Credential Manager vous
invite à entrer vos informations d’identification, veillez à entrer celles que vous avez
créées dans la section Configurer un utilisateur de déploiement, et non pas celles vous
permettant de vous connecter au portail Azure.
git push azure master

L’exécution de cette commande peut prendre quelques minutes. Pendant son exécution,
des informations semblables à ce qui suit s’affichent :

Counting objects: 98, done.


Delta compression using up to 8 threads.
Compressing objects: 100% (92/92), done.
Writing objects: 100% (98/98), 524.98 KiB | 5.58 MiB/s, done.
Total 98 (delta 8), reused 0 (delta 0)
remote: Updating branch 'master'.
remote: .
remote: Updating submodules.
remote: Preparing deployment for commit id '0c497633b8'.
remote: Generating deployment script.
remote: Project file path: ./DotNetCoreSqlDb.csproj
remote: Generated deployment script files
remote: Running deployment command...
remote: Handling ASP.NET Core Web Application deployment.
remote: .
remote: .
remote: .
remote: Finished successfully.
remote: Running post deployment command(s)...
remote: Deployment successful.
remote: App container will begin restart within 10 seconds.
To https://<app_name>.scm.azurewebsites.net/<app_name>.git
* [new branch] master -> master
Rechercher l’application web Azure

Accédez à http://<app_name>.azurewebsites.net/swagger dans un navigateur et


familiarisez-vous avec l’interface utilisateur Swagger.

Accédez à http://<app_name>.azurewebsites.net/swagger/v1/swagger.json pour voir


le swagger.json de l’API déployée.

Accédez à http://<app_name>.azurewebsites.net/api/todo pour voir l’API déployée en


fonctionnement.
Ajoutez des fonctionnalités CORS
Ensuite, activez la prise en charge intégrée de CORS dans App Service pour votre API.
Testez CORS dans l’exemple d’application

Dans votre référentiel local, ouvrez wwwroot/index.html.

Dans la ligne 51, définissez la variable apiEndpoint sur l’URL de l’API déployée
(http://<app_name>.azurewebsites.net). Remplacez <appname > avec le nom de
votre application dans Azure App Service.

Dans la fenêtre de votre terminal local, exécutez à nouveau l’exemple d’application.

dotnet run

Accédez à l’application de navigateur à http://localhost:5000. Ouvrez la fenêtre


d’outils de développement dans votre navigateur (Ctrl+Shift+i dans Chrome pour
Windows) et inspectez l’onglet Console. Vous devriez maintenant voir le message
d’erreur, No 'Access-Control-Allow-Origin' header is present on the requested
resource.
En raison de l’incompatibilité de domaine entre l’application de navigateur
(http://localhost:5000) et la ressource à distance
(http://<app_name>.azurewebsites.net), et du fait que votre API dans App Service
n’envoie pas l’en-tête Access-Control-Allow-Origin, votre navigateur a empêché le
chargement du contenu inter-domaines dans votre application de navigateur.

En production, votre application de navigateur aurait une URL publique au lieu de l’URL
de l’hôte local, mais la façon d’activer CORS est identique pour les deux types d’URL.
Activez CORS

Dans Cloud Shell, activez CORS pour votre URL de client à l’aide de la commande az
resource update. Remplacez l’espace réservé <appname>.

az resource update --name web --resource-group myResourceGroup --namespace


Microsoft.Web --resource-type config --parent sites/<app_name> --set
properties.cors.allowedOrigins="['http://localhost:5000']" --api-version
2015-06-01
Vous pouvez définir plusieurs URL de client
dans properties.cors.allowedOrigins ("['URL1','URL2',...]"). Vous pouvez
également activer toutes les URL client avec "['*']".

Note

Si votre application exige l’envoi d’informations d’identification, telles que des cookies
ou des jetons d’authentification, le navigateur peut exiger l’en-tête ACCESS-CONTROL-
ALLOW-CREDENTIALS dans la réponse. Pour ce faire, dans App Service,
définissez properties.cors.supportCredentials sur true dans votre configuration
CORS. Cela ne peut pas être activé lorsque allowedOrigins inclut '*'.

Testez CORS à nouveau

Actualisez l’application de navigateur à http://localhost:5000. Le message d’erreur


dans la fenêtre Console a désormais disparu, et vous pouvez afficher les données de
l’API déployée et interagir avec elles. Votre API distante prend désormais en charge
CORS vers votre application de navigateur exécuté en local.
Félicitations, vous exécutez une API dans Azure App Service avec prise en charge de
CORS.

Supprimer des ressources


Au cours des étapes précédentes, vous avez créé des ressources Azure au sein d’un
groupe de ressources. Si vous ne pensez pas avoir besoin de ces ressources à l’avenir,
supprimez le groupe de ressources en exécutant la commande suivante dans Cloud
Shell :

az group delete --name myResourceGroup

L’exécution de cette commande peut prendre une minute.


Lab: Créer et configurer des réseaux
virtuels
Exercice 1: Création de réseaux virtuels
Tâche 1: créer des réseaux virtuels à l'aide de Azure Portal
1. Démarrez Microsoft Edge, accédez à ** http: //portal.azure.com**, puis, si vous l'invite,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans le menu ** Hub ** du côté gauche de la page du portail, cliquez sur ** Nouveau **.
3. Sur la lame ** Nouveau **, cliquez sur ** Réseau **.
4. Sur la ** mise en réseau **, cliquez sur ** Réseau virtuel **.
5. Dans la barre ** Créer un réseau virtuel **, spécifiez les paramètres suivants, puis cliquez
sur ** Créer **:
- Nom: ** labVNet1 **
- Espace d'adresse: ** 10.0.0.0 / 16 **
- Nom de sous-réseau: ** Subnet1 **
- Plage de l'adresse du sous-réseau: ** 10.0.0.0 / 24 **
- Abonnement: votre abonnement Azure
- Groupe de ressources: ** Créer nouveau **
- Nouveau nom du groupe de ressources: ** 10979D05-LabRG01 **
- Emplacement: _La région Azure qui est la plus proche de l'emplacement de la classe et
qui est disponible dans votre abonnement_
- Pin sur le tableau de bord: cochez la case à cocher.
Remarque: ** Ignorez les messages sur les espaces d'adresses superposés qui
peuvent apparaître lorsque vous tapez la valeur dans la zone de texte ** Adresse **.
6. Dans le menu ** Hub ** du côté gauche de la page du portail, cliquez sur ** Nouveau **.
7. Sur la lame ** Nouveau **, cliquez sur ** Réseautage **.
8. Sur la lame ** Networking **, cliquez sur ** Virtual Network **.
9. Sur la lame ** Create virtual network **, spécifiez les paramètres suivants, puis cliquez sur
** Create **:
- Nom: ** labVNet2 **
- Espace d'adresse: ** 10.1.0.0 / 16 **
- Nom de sous-réseau: ** Subnet1 **
- Portée du sous-réseau: ** 10.1.0.0 / 24 **
- Abonnement: votre abonnement Azure
- Groupe de ressources: ** Utilisation existante ** ** 10979D05-LabRG01 **
- Emplacement: la même région Azure que vous avez choisie lors de la création du premier
réseau virtuel
- Pin sur le tableau de bord: cochez la case à cocher.
Remarque: ** Ignorez les messages sur les espaces d'adresses superposés qui
peuvent apparaître lorsque vous tapez la valeur dans la zone de texte ** Adresse **.
10. Laissez Microsoft Edge avec le portail Azure ouvert.

Tâche 2: Configurer le peering VNet en utilisant le portail Azure


1. Sur le tableau de bord du portail Azure, cliquez sur ** labVNet1 **.
2. Sur la lame ** labVNet1 **, cliquez sur ** Peerings **.
3. Cliquez sur ** + Ajouter **.
4. Sur la lame ** Ajouter peering **, dans la zone de texte ** Nom **, tapez ** labVNet1-
labVNet2 **.
5. Assurez-vous que ** le modèle de déploiement de réseau virtuel ** est défini sur **
Gestionnaire de ressources **.
6. Assurez-vous que ** L'abonnement ** est défini sur l'abonnement Azure que vous
souhaitez utiliser pour ce laboratoire.
7. Cliquez sur ** Choisir un réseau virtuel **.
8. Sur la lame ** Choisir le réseau virtuel **, cliquez sur ** labVNet2 **.
9. Assurez-vous que ** Autoriser l'accès au réseau virtuel ** est défini sur ** Activé **.
10. Laisser les réglages restants ** Autoriser le trafic transféré **, ** Autoriser le transit de la
passerelle ** et ** Utiliser les passerelles distantes ** avec leurs valeurs par défaut
(désactivées).
11. Cliquez sur ** OK **.
12. Cliquez sur ** Microsoft Azure ** dans le coin supérieur gauche du portail.
13. Sur le tableau de bord du portail Azure, cliquez sur ** labVNet2 **.
14. Sur la lame ** labVNet2 **, cliquez sur ** Peerings **.
15. Cliquez sur ** + Ajouter **.
16. Sur la lame ** Ajouter peering **, dans la zone de texte ** Nom **, tapez ** labVNet2-
labVNet1 **.
17. Assurez-vous que le ** modèle de déploiement de réseau virtuel ** est défini sur **
Gestionnaire de ressources **.
18. Assurez-vous que ** L'abonnement ** est défini sur l'abonnement Azure que vous
souhaitez utiliser pour ce laboratoire.
19. Cliquez sur "Choisir un réseau virtuel **".
20. Sur la barre ** Choisir un réseau virtuel **, cliquez sur ** labVNet1 **.
21. Assurez-vous que ** Autoriser l'accès au réseau virtuel ** est défini sur ** Activé **.
22. Laisser les réglages restants ** Autoriser le trafic transféré **, ** Autoriser le transit de la
passerelle ** et ** Utiliser les passerelles distantes ** avec leurs valeurs par défaut
(désactivées).
23. Cliquez sur ** OK **.
** Résultat **: Après avoir terminé cet exercice, vous devriez avoir créé deux réseaux
virtuels Azure et configuré VNet entre eux en utilisant le portail Azure

Exercice 2: vérification de la fonctionnalité du réseau virtuel


Tâche 1: Déployer des machines virtuelles Azure dans des réseaux virtuels existants
1. Dans le portail Azure dans la fenêtre Microsoft Edge, dans le menu ** Hub ** du côté
gauche de la page du portail, cliquez sur ** Nouveau **.
2. Sur la lame ** Nouveau **, cliquez sur ** Calculer **.
3. Sur la lame ** Compute **, cliquez sur ** Windows Server 2016 Datacenter **.
4. Dans la lame ** Basics **, spécifiez les paramètres suivants, puis cliquez sur ** OK **:
- Nom: ** 10979D05LabVM1 **
- Type de disque VM: ** HDD **
- Nom d'utilisateur: ** Étudiant **
- Mot de passe: ** Pa55w.rd1234 **
- Abonnement: votre abonnement Azure
- Groupe de ressources :: ** Utilisation existante ** ** 10979D05-LabRG01 **
- Emplacement: _La même région Azure à laquelle vous avez déployé les deux réseaux
virtuels lors du premier exercice de ce laboratoire
5. Sur la barre ** Choisissez une taille **, cliquez sur ** Voir tout **.
6. Sur la barre ** Choisissez une taille **, cliquez sur ** D1_V2 Standard **, puis cliquez sur
** Sélectionnez **.
7. Dans la lame **Paramètres**, spécifiez les paramètres suivants, puis cliquez sur **OK **:
- Utiliser les disques gérés: ** Oui **
- Réseau virtuel: ** labVNet1 **
- Sous-réseau: ** Subnet1 (10.0.0.0/24)**
- Adresse IP publique: ** (nouveau) 10979D05LabVM1-ip **
- Groupe de sécurité réseau: ** (nouveau) 10979D05LabVM1-nsg **
- Extensions: ** Aucune extension **
- Ensemble de disponibilité: Aucun
- Diagnostic de démarrage: ** Désactivé **
- Diagnostic du système d'exploitation OS: ** Désactivé **
8. Sur la lame ** Résumé **, notez le message ** Validation passé **, puis cliquez sur ** OK
**. Procédez directement à l'étape suivante sans attendre que le déploiement soit terminé.
9. Sur la lame ** New **, cliquez sur ** Calculer **.
10. Sur la lame ** Compute **, cliquez sur ** Windows Server 2016 Datacenter **.
11. Sur la lame ** Basics **, spécifiez les paramètres suivants, puis cliquez sur ** OK **:
- Nom: ** 10979D05LabVM2 **
- Type de disque VM: ** HDD **
- Nom d'utilisateur: ** Étudiant **
- Mot de passe: ** Pa55w.rd1234 **
- Abonnement: votre abonnement Azure
- Groupe de ressources :: ** Utilisation existante ** ** 10979D05-LabRG01 **
- Emplacement: _La même région Azure à laquelle vous avez déployé les deux réseaux
virtuels lors du premier exercice de ce laboratoire
12. Sur le ** Choisissez une taille ** lame, cliquez sur ** Voir tout **.
13. Sur la ** Choisissez une taille **, cliquez sur ** D1_V2 Standard **, puis cliquez sur **
Sélectionnez **.
14. Dans la lame **Paramètres**, spécifiez les paramètres suivants, puis cliquez sur **OK**:
- Utiliser les disques gérés: ** Oui **
- Réseau virtuel: _click ** Réseau virtuel **, puis cliquez sur ** labVNet2 ** _
- Sous-réseau: ** Subnet1 (10.1.0.0/24)**
- Adresse IP publique: ** (nouveau) 10979D05LabVM2-ip **
- Groupe de sécurité réseau: ** (nouveau) 10979D05LabVM2-nsg **
- Extensions: ** Aucune extension **
- Ensemble de disponibilité: Aucun
- Diagnostic de démarrage: ** Désactivé **
- Diagnostic du système d'exploitation OS: ** Désactivé **
15. Sur la lame **Résumé**, notez le message **Validation passé**, puis cliquez sur **OK**.
16. Attendez que les deux déploiements soient terminés avant de passer à la tâche
suivante. Laissez Microsoft Edge avec le portail Azure ouvert.
Tâche 2: Test de la connectivité du réseau virtuel
1. Dans Microsoft Edge, dans le portail Azure, dans le menu ** Hub **, cliquez sur **
Machines virtuelles **.
2. Sur la ** machine virtuelle **, cliquez sur ** 10979D05LabVM2 **.
3. Sur la lame ** 10979D05LabVM2 **, cliquez sur ** Propriétés **. Notez l'adresse IP
indiquée directement sous l'étiquette ** PRIVATE IP ADDRESS **. Il s'agit de l'adresse IP
privée de ** 10979D05LabVM2 **.
4. Faites défiler à la ** Machines virtuelles **, puis sur la ** machine virtuelle **, cliquez sur **
10979D05LabVM1 **.
5. Sur la lame ** 10979D05LabVM1 **, cliquez sur ** Connecter **.
6. Lorsque vous êtes invité à enregistrer le fichier .rdp, cliquez sur ** Enregistrer **.
7. Une fois que le fichier a été enregistré, cliquez sur ** Ouvrir **.
8. Dans la fenêtre ** Remote Desktop Connection **, cliquez sur ** Connecter **.
9. Dans la boîte de dialogue ** Windows Security **, spécifiez les détails suivants, puis
cliquez sur ** OK **:
- Nom d'utilisateur: ** Étudiant **
- Mot de passe: ** Pa55w.rd1234 **
10. Dans la fenêtre ** Remote Desktop Connection **, cliquez sur ** Yes **, puis attendez
que la connexion soit établie avec succès.
11. Dans la session RDP à la machine virtuelle ** 10979D05LabVM1 **, cliquez avec le
bouton droit sur le logo Windows dans le coin inférieur gauche, puis cliquez sur ** Exécuter
**.
12. Dans la zone de texte ** Ouvrir **, tapez la commande suivante (où 10.1.0.4 est
l'adresse IP privée de ** 10979D05LabVM2 **, que vous avez identifié à l'étape 3 de cette
tâche), puis appuyez sur Entrée:
mstsc / admin / h: 768 / w: 1024 /v:10.1.0.4
Remarque: ** Si l'adresse IP que vous avez identifiée à l'étape 3 est différente,
spécifiez cette adresse IP lors de la saisie de la commande ci-dessus.
13. Lorsque vous êtes invité à obtenir des informations d'identification, dans la boîte de
dialogue ** Windows Security **, spécifiez ce qui suit, puis cliquez sur ** OK **:
- Nom d'utilisateur: ** Étudiant **
- Mot de passe: ** Pa55w.rd1234 **
14. Dans la fenêtre ** Connexion Bureau à distance **, cliquez sur ** Oui **. Vérifiez que
vous êtes actuellement connecté à la machine virtuelle ** 10979D05LabVM2 ** en utilisant
son adresse IP privée, puis fermez la session Remote Desktop à ** 10979D05LabVM1 **.
15. Fermez Microsoft Edge.
Tâche 3: Préparer le module suivant
1. Lancez Microsoft Edge, accédez à ** http: //portal.azure.com** et, si vous êtes invité,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans le Portail Azure, dans le menu Hub, cliquez sur ** Groupes de ressources **.
3. Dans la section ** Les groupes de ressources **, cliquez sur les points de suspension (...)
sur le droit de l'entrée ** 10979D05-LabRG01 **.
4. Cliquez sur ** Supprimer **.
5. Sur le ** Êtes-vous sûr de vouloir supprimer la lame "10979D05-LabRG01" **, dans la
zone de texte ** TYPE LE NOM DU GROUPE RESSOURCES **, tapez ** 10979D05-
LabRG01 ** et cliquez sur * * Supprimer * *.
6. Cliquez sur ** Microsoft Azure **.
7. Sur le tableau de bord du portail Azure, cliquez avec le bouton droit de souris sur la
mosaïque LabVNet1 et cliquez sur ** Déplacer du tableau de bord **.
8. Sur le tableau de bord du portail Azure, cliquez avec le bouton droit de souris sur la
mosaïque labVNet2 et cliquez sur ** Déplacer du tableau de bord **.
9. Fermez Microsoft Edge.

Lorsque vous êtes en mesure de travailler avec le laboratoire, ne reculez pas les machines
virtuelles. Gardez toutes les machines virtuelles en cours d'exécution. Les VM dans leur état
actuel sont nécessaires pour le prochain module.

** Résultat **: Après avoir terminé cet exercice, vous devriez avoir déployé deux
machines virtuelles Azure dans deux réseaux virtuels Azure existants en utilisant le
portail Azure et vérifiez la connectivité réseau directe entre eux.
Créer un équilibreur de charge interne dans
le portail Azure

Azure Load Balancer prend en charge deux types différents : Basic et Standard. Cet
article décrit Basic Load Balancer. Basic Load Balancer est globalement disponible,
alors que Standard Load Balancer est actuellement disponible dans la version
préliminaire publique

Un équilibreur de charge interne Azure permet l’équilibrage de la charge réseau


entre les machines virtuelles qui résident dans un service cloud, ou un réseau virtuel
avec une portée régionale.

Note

Azure dispose de deux modèles de déploiement différents pour créer et utiliser des
ressources : Resource Manager et classique. Cet article traite de l’utilisation du
modèle de déploiement Resource Manager que Microsoft recommande pour la
plupart des nouveaux déploiements à la place du modèle de déploiement classique.

Scénario
Vous créez un équilibreur de charge interne selon le scénario suivant
Un équilibrage de charge interne est configuré dans un réseau virtuel

 2 machines virtuelles appelées DB1 et DB2


 Points de terminaison
 Équilibreur de charge interne

Prise en main de la création d’un équilibreur de charge


interne avec le portail Azure
Pour créer un équilibreur de charge interne à partir du portail Azure, suivez les
étapes ci-dessous.

1. Ouvrez un navigateur, accédez au portail Azure et connectez-vous avec votre


compte Azure.
2. Dans l’angle supérieur gauche de l’écran, cliquez sur Nouveau > Réseau >
Équilibreur de charge.
3. Dans le panneau Créer un équilibreur de charge, tapez le nom de votre
équilibreur de charge.
4. Sous Schéma, cliquez sur Interne.
5. Cliquez sur Réseau virtuel, puis sélectionnez le réseau virtuel dans lequel
vous souhaitez créer l’équilibreur de charge.

Note

Si vous ne voyez pas le réseau virtuel que vous souhaitez utiliser, vérifiez l’
Emplacement que vous utilisez pour l’équilibreur de charge et modifiez-le en
conséquence.

6. Cliquez sur Sous-réseau, puis sélectionnez le sous-réseau sur lequel vous


souhaitez créer l’équilibreur de charge.
7. Sous Attribution d’adresses IP, cliquez sur Dynamique ou Statique, selon
que vous souhaitez une adresse IP statique ou non pour l’équilibreur de
charge.

Note

Si vous choisissez d’utiliser une adresse IP statique, vous devez fournir une
adresse pour l’équilibreur de charge.

8. Sous-Groupe de ressources, spécifiez le nom d’un nouveau groupe de


ressources pour l’équilibreur de charge ou cliquez sur Sélectionner et
choisissez un groupe de ressources existant.
9. Cliquez sur Create.

Configuration des règles d’équilibrage de la charge


Après la création de l’équilibreur de charge, accédez à la ressource d’équilibreur de
charge pour la configurer. Configurez un pool d’adresses principal, ainsi qu’une
sonde avant de configurer une règle d’équilibrage de charge.

Étape 1 : Configurer un pool principal

1. Dans le portail Azure, cliquez sur Parcourir > Équilibreurs de charge, puis
cliquez sur l’équilibreur de charge créé précédemment.
2. Dans le panneau Paramètres, cliquez sur Pools principaux.
3. Dans le panneau Pools d’adresses principales, cliquez sur Ajouter.
4. Dans le panneau Ajouter un pool principal, tapez le nom du pool principal,
puis cliquez sur OK.

Étape 2 : Configurer une sonde

1. Dans le portail Azure, cliquez sur Parcourir > Équilibreurs de charge, puis
cliquez sur l’équilibreur de charge créé précédemment.
2. Dans le panneau Paramètres, cliquez sur Sondes.
3. Dans le panneau Sondes, cliquez sur Ajouter.
4. Dans le panneau Ajouter une sonde, tapez le nom de la sonde.
5. Sous Protocole, sélectionnez HTTP (pour les sites web) ou TCP (pour les
autres applications basées sur TCP).
6. Sous Port, spécifiez le port à utiliser pour accéder à la sonde.
7. Sous Chemin d’accès (pour les sondes HTTP uniquement), spécifiez le
chemin d’accès à utiliser comme sonde.
8. Sous Intervalle , spécifiez la fréquence de sondage de l’application.
9. Sous Seuil défectueux, spécifiez le nombre de tentatives devant échouer
avant que la machine virtuelle principale ne soit marquée comme défectueuse.
10. Cliquez sur OK pour créer la sonde.

Étape 3 : Configurer les règles d’équilibrage de charge

1. Dans le portail Azure, cliquez sur Parcourir > Équilibreurs de charge, puis
cliquez sur l’équilibreur de charge créé précédemment.
2. Dans le panneau Paramètres, cliquez sur Règles d’équilibrage de la
charge.
3. Dans le panneau Règles d’équilibrage de la charge, cliquez sur Ajouter.
4. Dans le panneau Ajouter une règle d’équilibrage de charge, tapez le nom
de la règle.
5. Sous Protocole, sélectionnez HTTP (pour les sites web) ou TCP (pour les
autres applications basées sur TCP).
6. Sous Port, spécifiez le port auquel les clients se connectent dans l’équilibreur
de charge.
7. Sous Port principal, spécifiez le port à utiliser dans le pool principal (en règle
générale, le port de l’équilibreur de charge et le port principal sont
identiques).
8. Sous Pool principal, sélectionnez le pool principal créé précédemment.
9. Sous Persistance de session, sélectionnez la façon dont vous souhaitez que
les sessions soient conservées.
10. Sous Délai d’inactivité (minutes), spécifiez le délai d’inactivité.
11. Sous Adresse IP flottante (retour serveur direct), cliquez sur Désactivé ou
Activé.
12. Cliquez sur OK.
Lab: Configurer le stockage Azure
Exercice 1: Créer un compte de stockage Azure
Tâche 1: Créer un compte de stockage dans Azure

1. Lancez Microsoft Edge, accédez à ** http: //portal.azure.com** et, si vous êtes invité,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans Azure Portal, cliquez sur ** + Nouveau ** dans le coin supérieur gauche.
3. Dans la lame ** New **, cliquez sur ** Stockage **.
4. Dans la lame ** Storage **, cliquez sur ** Compte de stockage - blob, fichier, table, file
d'attente **.
5. Dans la barre ** Créer un compte de stockage **, spécifiez les paramètres suivants et
cliquez sur ** Créer **.
- Nom: _Avec un nom unique et valide (entre 3 et 24 caractères composés de minuscules
et de chiffres) _
- Modèle de déploiement: ** Gestionnaire de ressources **
- Type de compte: ** Usage général **
- Performance standard**
- Réplication: ** Stockage localement redondant (LRS) **
- Cryptage du service de stockage (blobs et fichiers): ** Désactivé **
- Transfert sécurisé requis: ** Désactivé **
- Abonnement: votre abonnement Azure
- Groupe de ressources: ** Créer un nouveau ** ** 10979D06-LabRG01 **
- Emplacement: _La région Azure qui est la plus proche de l'emplacement de la classe et
qui est disponible dans votre abonnement_
- Pin sur le tableau de bord: _Sélectionné
6. Attendez que le compte de stockage soit provisionné. Cela prendra environ une minute.
Une fois le déploiement terminé, le portail affichera la lame du compte de stockage ouverte.

Tâche 2: Afficher les propriétés de votre compte de stockage et copier la touche


d'accès

1. Dans Azure Portal, avec votre compte de stockage ouvert, consultez la section **
Essentials **, y compris les paramètres de localisation, de réplication et de performance.
2. Cliquez sur ** Touches d'accès **. Sur les ** touches d'accès **, remarquez que vous
avez la possibilité de copier le nom du compte de stockage et la clé1 et la clé2. Vous avez
également la possibilité de régénérer les deux clés.
3. Sur les ** touches d'accès **, cliquez sur l'icône ** Cliquez pour copier ** à côté de la
touche1. Si vous êtes invité à autoriser la page Web à accéder à votre presse-papiers,
cliquez sur ** Autoriser l'accès **. Ensuite, cliquez sur ** Cliquez pour copier encore **.
4. Dans la barre des tâches, cliquez sur ** Explorateur de fichiers **
5. Dans l'Explorateur de fichiers, dans le volet de navigation, cliquez sur ** Documents **.
6. Dans le volet droit, cliquez avec le bouton droit de la souris sur une zone vide, cliquez sur
** Nouveau **, puis cliquez sur ** Document texte **.
7. Dans le nom du fichier, remplacez ** Nouveau document de texte ** par ** clé de
stockage **, puis appuyez sur Entrée.
8. Double-cliquez sur le fichier nouvellement créé. Le fichier s'ouvre dans le Bloc-notes.
9. Dans le Bloc-notes, collez la clé d'accès que vous avez copiée dans le Presse-papiers
dans le fichier.
10. Cliquez sur ** Fichier **, puis cliquez sur ** Enregistrer **. Gardez le bloc-notes ouvert,
vous en aurez besoin pour l'exercice suivant.
11. Revenez au portail Azure et cliquez sur ** Configuration **.
12. Dans la lame ** Configuration **, remarquez que vous avez la possibilité de modifier les
paramètres de réplication. Toutefois, vous ne pouvez pas modifier le paramètre de
performance (cela ne peut être attribué que lorsque le compte de stockage est créé).
** Résultat **: Après avoir complété cet exercice, vous aurez créé votre Azure Storage,
examiné ses propriétés et copié sa clé d'accès à un fichier texte.

Exercice 2: Créer et accéder aux blobs


Tâche 1: Créer un conteneur

1. Dans le portail Azure, sur la lame du compte de stockage, cliquez sur ** Aperçu **.
2. Dans la section ** Services **, cliquez sur ** Blobs **.
2. Sur la barre de ** Blob service **, cliquez sur ** + Container **.
3. Lorsque vous y êtes invité, spécifiez les paramètres suivants, puis cliquez sur ** OK **.
- Nom: ** labcontainer **
- Type d'accès: ** Privé **
Tâche 2: Télécharger des données sur le conteneur en utilisant le portail Azure

1. Dans le portail Azure, cliquez sur le nom du conteneur nouvellement créé.


2. Sur la lame ** labcontainer **, cliquez sur ** Télécharger **.
3. Sur la barre de chargement ** blob **, cliquez sur l'icône du dossier à côté de la zone de
texte ** Fichiers **.
4. Dans la boîte de dialogue ** Ouvrir **, accédez au dossier ** C: \\ Windows \\
ImmersiveControlPanel \\ images **.
5. Cliquez sur ** splashscreen.contrast-white_scale-400.png **, puis cliquez sur ** Ouvrir **.
6. Laissez les valeurs des ** types de bloc ** et ** bloc de taille ** des zones de texte avec
leurs valeurs par défaut et cliquez sur ** Télécharger **.
Tâche 3: Accéder au contenu Azure Storage en utilisant Azure Web Storage Explorer

1. Sur la lame ** labcontainer **, cliquez sur le blob nouvellement téléchargé.


2. Dans la barre ** Blob properties **, cliquez sur l'icône ** Click to copy ** à côté de la boîte
de dialogue ** URL **.
3. Démarrez Microsoft Edge et, dans la zone de recherche ** Rechercher ou entrez
l'adresse Web **, collez l'URL que vous avez copiée du portail Azure.
4. Notez le message d'erreur ** ResourceNotFound **. Cela est attendu puisque le blob
réside dans un conteneur privé, ce qui nécessite un accès authentifié.
5. Passez à la fenêtre du Bloc-notes indiquant le contenu du fichier ** storage-key.txt ** et
copiez la clé d'accès au compte de stockage dans le Presse-papiers (au cas où vous l'auriez
écrasé en attendant).
6. Ouvrez une nouvelle fenêtre Microsoft Edge et accédez à ** https:
//azurestorage.azurewebsites.net/login.aspx**
7. Sur la page ** Azure Web Storage Explorer **, dans la zone de texte ** Compte **, tapez
le nom que vous avez attribué à votre compte de stockage au début de ce laboratoire, collez
la clé d'accès que vous avez copiée dans le dans la boîte de texte ** Key **, puis appuyez
sur Entrée.
8. Cliquez sur ** labcontainer **.
9. Cliquez sur la flèche pointant vers le bas à côté du bloc que vous avez téléchargé dans le
conteneur depuis le portail Azure.
10. Lorsque vous êtes invité à enregistrer le fichier, cliquez sur ** Enregistrer **.
11. Cliquez sur ** Ouvrir le dossier **.
12. Dans l'Explorateur de fichiers, cliquez avec le bouton droit de la souris sur le fichier
téléchargé, dans le menu contextuel, cliquez sur ** Ouvrir avec **, puis cliquez sur **
Peindre **. Vérifiez que vous pouvez afficher le fichier téléchargé.
13. Fermez Microsoft Paint et Microsoft Edge.
Tâche 4: Préparer le module suivant

1.Lancez Microsoft Edge, accédez à ** http: //portal.azure.com** et, si vous êtes invité,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans le Portail Azure, dans le menu Hub, cliquez sur ** Groupes de ressources **.
3. Dans la section ** Groupe de ressources **, cliquez sur les points de suspension (...) sur
le côté droit de l'entrée ** 10979D06-LabRG01 **.
4. Cliquez sur ** Supprimer **.
5. Sur le ** Êtes-vous sûr de vouloir supprimer la lame "10979D06-LabRG01" **, dans la
zone de texte ** TYPE THE RESOURCE GROUP NAME **, tapez ** 10979D06-LabRG01 **
et cliquez sur ** Supprimer * *.
6. Fermez Microsoft Edge.

** Résultat **: Après avoir terminé cet exercice, vous aurez créé un conteneur blob, vous
avez téléchargé un fichier et l'avez accédé à partir d'un navigateur en utilisant la clé de
compte Azure Storage.
Créer un partage de fichiers dans Azure Files
‎Dans cet article

1. Composants requis
2. Créer un partage de fichiers via le portail Azure
3. Création d’un partage de fichiers via PowerShell
4. Création d’un partage de fichiers via l’Interface de ligne de commande (CLI)

Composants requis
Pour créer un partage de fichiers Azure, vous pouvez utiliser un compte de stockage
existant ou créer un compte de stockage Azure. Pour créer un partage de fichiers
Azure avec PowerShell, vous avez besoin de la clé de compte et du nom de votre
compte de stockage. Si vous envisagez d’utiliser Powershell ou CLI, vous aurez
besoin de la clé du compte de stockage.

Créer un partage de fichiers via le portail Azure


1. Accédez au panneau Compte de stockage dans le portail Azure :
2. Cliquez sur Ajouter un partage de fichiers :

3. Indiquez le nom et le quota. Actuellement, la limite de quota maximum est 5 To


:

.
4. Affichez votre nouveau partage de fichiers :
5. Importez un fichier :

6. Parcourez le partage de fichiers et gérez vos répertoires et vos fichiers :

Création d’un partage de fichiers via PowerShell


Pour vous préparer à utiliser PowerShell, téléchargez et installez les applets de
commande PowerShell Azure.

Note

Il est recommandé de télécharger et d’installer le dernier module Azure PowerShell


ou d’effectuer une mise à niveau vers celui-ci.

1. Créez un contexte pour le compte de stockage et la clé. Le contexte regroupe la


clé de compte et le nom du compte de stockage. Pour obtenir des instructions sur la
copie de votre clé de compte à partir du portail Azure, voir Afficher et copier les clés
d’accès de stockage.

PowerShell Copier

$storageContext = New-AzureStorageContext <storage-account-name> <storage-account-


key>

2. Créez un nouveau partage de fichiers :


PowerShell Copier

$share = New-AzureStorageShare logs -Context $storageContext

Note

Le nom de votre partage de fichiers doit être en minuscules. Pour plus d’informations
sur la façon de nommer des partages de fichiers et des fichiers, consultez la rubrique
Affectation de noms et références aux partages, répertoires, fichiers et métadonnées.

Création d’un partage de fichiers via l’Interface de ligne


de commande (CLI)
1. Pour vous préparer à utiliser une Interface de ligne de commande (CLI),
téléchargez et installez Azure CLI.

2. Créez une chaîne de connexion vers le compte de stockage dans lequel vous
souhaitez créer le partage.
Remplacez <storage-account> et <resource_group> par le nom de votre compte
de stockage et le groupe de ressources de l’exemple suivant :

Azure CLI Copier

current_env_conn_string = $(az storage account show-connection-string -n


<storage-account> -g <resource-group> --query 'connectionString' -o tsv)

if [[ $current_env_conn_string == "" ]]; then

echo "Couldn't retrieve the connection string."

fi

3. Créez le partage de fichiers.

Azure CLI Copier

az storage share create --name files --quota 2048 --connection-string


$current_env_conn_string 1 > /dev/null
Montage d’un partage de fichiers Azure et
accès au partage dans Windows
‎Dans cet article

1. Conditions préalables pour le montage d’un partage de fichiers Azure avec Windows
2. Montage du partage de fichiers Azure avec l’Explorateur de fichiers
3. Montage du partage de fichiers Azure avec PowerShell
4. Montage du partage de fichiers Azure avec l’invite de commandes

Azure Files est le système de fichiers cloud facile à utiliser de Microsoft. Les partages
de fichiers Azure peuvent être montés dans Windows et Windows Server. Cet article
présente trois méthodes différentes de montage d’un partage de fichiers Azure sur
Windows : avec l’interface utilisateur de l’Explorateur de fichiers, via PowerShell ou
via l’invite de commandes.

Pour monter un partage de fichiers Azure en dehors de la région Azure sur laquelle il
est hébergé, par exemple localement ou dans une région Azure différente, le système
d’exploitation doit prendre en charge SMB 3.0.

Vous pouvez monter des partages de fichiers Azure sur une installation Windows en
cours d’exécution dans une machine virtuelle Azure ou localement. Le tableau ci-
dessous illustre les versions du système d’exploitation qui prennent en charge le
montage des partages de fichiers dans un environnement donné :
Version de Version Version montable dans une Montable en
Windows SMB machine virtuelle Azure local
Windows 101 SMB 3.0 Oui Oui
Windows Server
SMB 3.0 Oui Oui
2016
Windows 8.1 SMB 3.0 Oui Oui
Windows Server
SMB 3.0 Oui Oui
2012 R2
Windows Server
SMB 3.0 Oui Oui
2012
Windows 7 SMB 2.1 Oui Non
Windows Server
SMB 2.1 Oui Non
2008 R2

1
Les versions 1507, 1511, 1607, 1703 et 1709 de Windows 10.
Note

Nous vous conseillons de prendre la base de connaissances la plus récente pour


votre version de Windows.

Conditions préalables pour le montage d’un partage de


fichiers Azure avec Windows
 Nom de compte de stockage : pour monter un partage de fichiers Azure, vous avez
besoin du nom du compte de stockage.
 Clé du compte de stockage : pour monter un partage de fichiers Azure, vous avez
besoin de la clé de stockage primaire (ou secondaire). Actuellement, les clés SAS ne
sont pas prises en charge pour le montage.
 Assurez-vous que le port 445 est ouvert : Azure Files utilise le protocole SMB.
SMB communique via le port TCP 445. Assurez-vous que votre pare-feu ne bloque
pas les ports TCP 445 à partir de la machine cliente.

Montage du partage de fichiers Azure avec l’Explorateur


de fichiers
Note

Notez que les instructions ci-après sont affichées sur Windows 10 et peuvent différer
légèrement sur les versions plus anciennes.

1. Ouvrez l’Explorateur de fichiers : pour cela, accédez au menu Démarrer ou


appuyez sur les touches Win+E.
2. Accédez à l’élément « Ce PC » sur la gauche de la fenêtre. Cela modifie les
menus disponibles dans le ruban. Dans le menu Ordinateur, sélectionnez «
Connecter un lecteur réseau ».
3. Copiez le chemin d’accès UNC depuis le volet « Connexion » dans le portail
Azure : découvrez en détail comment trouver ces informations, en cliquant ici.

4. Sélectionnez la lettre de lecteur et entrez le chemin d’accès UNC.

5. Utilisez le nom du compte de stockage avec le préfixe Azure\ comme nom


d’utilisateur et une clé de compte de stockage comme mot de passe.
6. Utilisez le partage de fichiers Azure à votre guise.

7. Lorsque vous êtes prêt à démonter (ou déconnecter) le partage de fichiers


Azure, il vous suffit de cliquer avec le bouton droit de la souris sur l’entrée du
partage, sous « Emplacements réseau », dans l’Explorateur de fichiers et de
sélectionner « Déconnecter ».

Montage du partage de fichiers Azure avec PowerShell


1. Utilisez la commande suivante pour monter le partage de fichiers Azure :
n’oubliez pas de remplacer <storage-account-name>, <share-name>, <storage-
account-key>, <desired-drive-letter> par les informations appropriées.

PowerShell Copier

$acctKey = ConvertTo-SecureString -String "<storage-account-key>" -AsPlainText -


Force

$credential = New-Object System.Management.Automation.PSCredential -ArgumentList


"Azure\<storage-account-name>", $acctKey

New-PSDrive -Name <desired-drive-letter> -PSProvider FileSystem -Root "\\<storage-


account-name>.file.core.windows.net\<share-name>" -Credential $credential
2. Utilisez le partage de fichiers Azure à votre guise.
3. Lorsque vous avez terminé, démontez le partage de fichiers Azure à l’aide de
la commande suivante.

PowerShell Copier

Remove-PSDrive -Name <desired-drive-letter>

Note

Vous pouvez utiliser le paramètre -Persist sur New-PSDrive pour que le partage
de fichiers Azure soit visible pour le reste du système d’exploitation lorsqu’il est
monté.

Montage du partage de fichiers Azure avec l’invite de


commandes
1. Utilisez la commande suivante pour monter le partage de fichiers Azure :
n’oubliez pas de remplacer <storage-account-name>, <share-name>, <storage-
account-key>, <desired-drive-letter> par les informations appropriées.

Copier

net use <desired-drive-letter>: \\<storage-account-


name>.file.core.windows.net\<share-name> <storage-account-key>
/user:Azure\<storage-account-name>

2. Utilisez le partage de fichiers Azure à votre guise.


3. Lorsque vous avez terminé, démontez le partage de fichiers Azure à l’aide de
la commande suivante.

Copier

net use <desired-drive-letter>: /delete

Note

Vous pouvez configurer le partage de fichiers Azure de manière à ce qu’il se


reconnecte automatiquement au redémarrage grâce aux identifiants persistants dans
Windows. La commande suivante permet de conserver les informations
d’identification :
Copier

cmdkey /add:<storage-account-name>.file.core.windows.net /user:AZURE\<storage-


account-name> /pass:<storage-account-key>
À propos des comptes de stockage Azure
‎Dans cet article

1. Vue d'ensemble
2. Facturation du compte de stockage
3. Points de terminaison d'un compte de stockage
4. Créez un compte de stockage.
5. Gérer votre compte de stockage
6. Suppression d'un compte de stockage

Conseil

Dans cet article, le contenu s’applique au stockage de Table Azure de base d’origine.
Toutefois, il existe désormais une offre premium de stockage de tables Azure en
version préliminaire publique qui propose des tables optimisées pour le débit, la
distribution globale et les index secondaires automatiques.

Vue d'ensemble
Un compte de stockage Azure fournit un espace de noms unique pour stocker vos
objets de données Azure Storage et y accéder. Tous les objets d’un compte de
stockage sont facturés ensemble en tant que groupe. Par défaut, les données de
votre compte sont uniquement accessibles par vous, le propriétaire du compte.

Il existe deux types de comptes de stockage :

Comptes de stockage à usage général

Un compte de stockage à usage général vous donne accès aux services Azure
Storage telles que les tables, files d’attente, fichiers, objets blob et disques de
machine virtuelle Azure au sein d’un compte unique. Ce type de compte de stockage
offre deux niveaux de performances :

 Un niveau de performances de stockage standard qui vous permet de stocker des


tables, files d’attente, fichiers, objets blob et disques de machine virtuelle Azure.
 Un niveau de performances de stockage premium qui prend actuellement en charge
les disques de machine virtuelle Azure uniquement.

Comptes de stockage d’objets blob


Un compte de stockage d’objets blob est un compte de stockage spécialisé pour le
stockage des données non structurées en tant qu’objets blob dans Azure Storage.
Les comptes de stockage d’objets blob sont similaires à vos comptes de stockage à
usage général existants et offrent les excellents niveaux de durabilité, disponibilité,
évolutivité et performances dont vous bénéficiez aujourd’hui. Ils assurent notamment
la cohérence d’API à 100 % pour les objets blob de blocs et d’ajout. Pour les
applications qui requièrent uniquement le stockage d’objets blob de blocs ou
d’objets blob d’ajout, nous recommandons d’utiliser des comptes de stockage
d’objets blob.

Note

Les comptes de stockage d’objets blob prennent en charge uniquement les objets
blob de blocs et d’ajout, mais pas les objets blob de pages.

Les comptes de stockage d’objets blob exposent l’attribut Access Tier , qui peut
être spécifié lors de la création du compte et modifié ultérieurement si nécessaire. Il
existe deux types de niveaux d’accès qui peuvent être spécifiés en fonction de votre
modèle d’accès aux données :

 Un niveau d’accès chaud qui indique que les objets du compte de stockage seront
sollicités plus fréquemment. Il permet de stocker des données moyennant un coût
d’accès inférieur.
 Un niveau d’accès froid qui indique que les objets du compte de stockage seront
sollicités moins fréquemment. Il permet de stocker des données moyennant un coût
de stockage inférieur.

Si le modèle d’utilisation de vos données est modifié, vous pouvez également


basculer entre ces niveaux d’accès à tout moment. La modification du niveau d’accès
peut entraîner des frais supplémentaires. Consultez Comptes de stockage d’objets
blob - Tarification et facturation pour plus de détails.

Pour pouvoir créer un compte de stockage, vous devez posséder un abonnement


Azure, c’est-à-dire un plan qui vous donne accès à divers services Azure. Pour la prise
en main d’Azure, vous pouvez bénéficier d’un compte gratuit. Quand vous décidez
d’acheter un plan d’abonnement, vous avez le choix entre plusieurs options d’achat.
Si vous êtes abonné à MSDN, vous bénéficiez de crédits mensuels gratuits que vous
pouvez utiliser avec les services Azure, y compris Azure Storage. Pour plus
d’informations sur la tarification des licences en volume, consultez la page Prix
appliqués à Azure Storage .

Pour apprendre à créer un compte de stockage, consultez Créer un compte de


stockage . Un seul abonnement vous permet de créer jusqu’à 200 comptes de
stockage uniques. Pour plus d’informations sur les limites du compte de stockage,
consultez la page Objectifs de performance et évolutivité d’Azure Storage .

Facturation du compte de stockage


La facturation de l’utilisation d’Azure Storage est basée sur votre compte de
stockage. Les coûts de stockage sont basés sur les facteurs suivants : la
région/l’emplacement, le type de compte, la capacité de stockage, le schéma de
réplication, les transactions de stockage et l’acheminement des données.

 La région se rapporte à la région géographique dans laquelle votre compte est basé.
 Le compte que vous utilisez peut être de deux types : compte de stockage à usage
général ou compte de stockage d’objets blob. Avec un compte de stockage d’objets
blob, le niveau d’accès détermine également le modèle de facturation du compte.
 La capacité de stockage fait référence à l’unité de compte de stockage que vous
utilisez pour stocker des données.
 La réplication détermine le nombre de copies de vos données qui sont conservées
simultanément et à quels emplacements.
 Les transactions font références à toutes les opérations de lecture et d'écriture vers
Azure Storage.
 L'acheminement des données fait référence aux données transférées hors d'une
région Azure. Lorsque les données de votre compte de stockage sont utilisées par
une application qui n’est pas exécutée dans la même région, vous êtes facturé pour
l’acheminement des données (pour les services Azure, vous pouvez grouper vos
données et services dans les mêmes centres de données pour réduire ou éliminer les
frais d'acheminement des données).

La page Prix appliqués à Azure Storage fournit des informations de tarification


détaillées basées sur le type de compte, la capacité de stockage, la réplication et les
transactions. La page Détails de la tarification – Transferts de données fournit des
informations de tarification détaillées pour les acheminements de données. Vous
pouvez utiliser le Calcul des coûts Azure Storage pour faciliter l'estimation des coûts.

Note

Lorsque vous créez une machine virtuelle Azure, un compte de stockage est créé
automatiquement pour vous sur le lieu de déploiement si vous ne disposez pas déjà
de ce type de compte à cet emplacement. Il n’est donc pas nécessaire de suivre les
étapes ci-dessous pour créer un compte de stockage pour vos disques de machines
virtuelles. Le nom du compte de stockage dépend du nom de la machine virtuelle.

Points de terminaison d'un compte de stockage


Chaque objet que vous stockez dans Azure Storage possède une adresse URL
unique. Le nom du compte de stockage constitue le sous-domaine de cette adresse.
La combinaison sous-domaine/nom du domaine, qui est propre à chaque service,
forme un point de terminaison pour votre compte de stockage.

Par exemple, si le nom de votre compte de stockage est mystorageaccount, les points
de terminaison par défaut de votre compte de stockage sont les suivants :

 Service BLOB : http://mystorageaccount.blob.core.windows.net


 Service de Table : http://moncomptedestockage.table.core.windows.net
 Service de File d’attente : http://moncomptedestockage.queue.core.windows.net
 Service de fichiers : http://mystorageaccount.file.core.windows.net

Note

Un compte de stockage d’objets blob expose uniquement le point de terminaison de


service blob.

L’URL permettant d’accéder à un objet dans un compte de stockage est constituée


de l’ajout de l’emplacement de l’objet dans le compte de stockage au point de
terminaison. Par exemple, une adresse d’objet blob peut avoir ce format :
http://moncomptedestockage.blob.core.windows.net/monconteneur/monobjetblob.

Vous pouvez aussi configurer un nom de domaine personnalisé à utiliser avec votre
compte de stockage. Pour plus d’informations, consultez la page Configurer un nom
de domaine personnalisé pour un point de terminaison Blob Storage. Vous pouvez
également le configurer avec PowerShell. Pour plus d’informations, référez-vous à
l’applet de commande Set-AzureRmStorageAccount .

Créez un compte de stockage.


1. Connectez-vous au portail Azure.
2. Dans le menu Hub, sélectionnez Nouveau -> Stockage -> Compte de stockage.
3. Entrez un nom pour votre compte de stockage.

Note

Les noms des comptes de stockage doivent comporter entre 3 et 24 caractères,


uniquement des lettres minuscules et des chiffres.

Le nom de votre compte de stockage doit être unique dans Azure. Le portail Azure
indique si le nom du compte de stockage sélectionné est déjà utilisé.
4. Sélectionnez le modèle de déploiement à utiliser : Resource Manager ou
Classique. Resource Manager est le modèle de déploiement recommandé.

Note

Les comptes de stockage d’objets blob peuvent être créés uniquement avec le
modèle de déploiement Resource Manager.

5. Sélectionnez le type de compte de stockage : Usage général ou Stockage Blob.


Usage général .

Si Usage général est sélectionné, spécifiez le niveau de performances Standard ou


Premium. Le niveau par défaut est Standard.

Si Stockage Blob est sélectionné, spécifiez le niveau d’accès Chaud ou Froid. Le


niveau par défaut est Chaud.

6. Sélectionnez l’option de réplication du compte de stockage : LRS, GRS, RA-GRS ou


ZRS. La valeur par défaut est RA-GRS.
7. Sélectionnez l’abonnement dans lequel vous souhaitez créer le compte de stockage.
8. Spécifiez un nouveau groupe de ressources ou sélectionnez un groupe de ressources
existant.
9. Sélectionnez l’emplacement géographique de votre compte de stockage.
10. Cliquez sur Créer pour créer le compte de stockage.

Gérer votre compte de stockage

Modifier la configuration de votre compte

Après avoir créé votre compte de stockage, vous pouvez modifier sa configuration,
notamment modifier l’option de réplication utilisée pour le compte ou modifier le
niveau d’accès pour un compte de stockage d’objets blob. Dans le Portail Azure,
accédez à votre compte de stockage, localisez l’option Configuration sous
PARAMÈTRES, puis cliquez dessus pour afficher et/ou modifier la configuration du
compte.

Note

Selon le niveau de performances que vous avez choisi lors de la création du compte
de stockage, certaines options de réplication peuvent ne pas être disponibles.

La modification de l’option de réplication entraîne une modification de vos tarifs.


Pour plus d’informations, voir Tarification Azure Storage .
Pour les comptes de stockage d’objets blob, changer le niveau d’accès peut entraîner
des frais, outre la modification des prix appliqués.

Gérer vos clés d’accès de stockage

Lorsque vous créez un compte de stockage, Azure génère deux clés d'accès de
stockage de 512 bits, qui servent à l'authentification lors de l'accès au compte de
stockage. En fournissant deux clés d'accès de stockage, Azure vous permet de
régénérer les clés sans interrompre votre service de stockage ni l'accès à ce service.

Note

Nous vous recommandons d’éviter de partager vos clés d’accès de stockage avec qui
que ce soit. Pour autoriser l'accès aux ressources de stockage sans donner vos clés
d'accès, vous pouvez utiliser une signature d'accès partagé. Celle-ci donne accès à
votre compte à une ressource pendant une durée que vous déterminez et avec les
autorisations que vous spécifiez.

Afficher et copier les clés d’accès de stockage

Dans le Portail Azure, accédez à votre compte de stockage, cliquez sur Tous les
paramètres, puis cliquez sur Clés d’accès pour visualiser, copier et régénérer les
clés d’accès de votre compte. Le panneau Clés d’accès inclut également des
chaînes de connexion préconfigurées utilisant vos clés principales et secondaires, que
vous pouvez copier pour utilisation dans vos applications.

Régénération des clés d'accès de stockage

Nous vous recommandons de modifier périodiquement les clés d’accès à votre


compte de stockage pour garantir la sécurité des connexions de stockage. Vous
bénéficiez de deux clés d’accès, ce qui vous permet de conserver des connexions au
compte de stockage à l’aide d’une clé d’accès lorsque vous régénérez l’autre clé.

Avertissement

La régénération des clés d’accès peut affecter les services dans Azure, ainsi que vos
applications qui dépendent du compte de stockage. Tous les clients qui utilisent la
clé d'accès pour accéder au compte de stockage doivent être mis à jour pour utiliser
la nouvelle clé.
Media Services : si des services de médias sont liés à votre compte de stockage,
vous devez resynchroniser les clés d’accès avec ces services après avoir régénéré les
clés.

Applications : si des applications web ou des services cloud utilisent le compte de


stockage, vous perdez les connexions en régénérant les clés, à moins de les
substituer.

Explorateurs de stockage : si vous utilisez des applications d’explorateur de


stockage, vous devrez probablement mettre à jour la clé de stockage utilisée par ces
applications.

Voici le processus de rotation de vos clés d’accès de stockage :

1. Mettez à jour les chaînes de connexion dans votre code d'application pour désigner
la clé d'accès secondaire du compte de stockage.
2. Régénérez la clé d'accès principale de votre compte de stockage. Dans le panneau
Clés d’accès, cliquez sur Régénérer Key1, puis sur Oui pour confirmer que vous
souhaitez générer une nouvelle clé.
3. Mettez à jour les chaînes de connexion dans votre code pour désigner la nouvelle clé
d’accès principale.
4. Régénérez la clé d’accès secondaire de la même manière.

Suppression d'un compte de stockage


Pour supprimer un compte de stockage que vous n’utilisez plus, accédez au compte
de stockage dans le portail Azure, puis cliquez sur Supprimer. La suppression d’un
compte de stockage supprime l’intégralité du compte, y compris toutes les données
qu’il contient.

Avertissement

Il n’est pas possible de restaurer un compte de stockage supprimé ou son contenu


avant la suppression. Veillez à sauvegarder tout ce que vous souhaitez conserver
avant de supprimer le compte. Ceci vaut également pour toutes les ressources du
compte : dès que vous supprimez un objet blob, une table, une file d’attente ou un
fichier, la suppression est irréversible.

Si vous essayez de supprimer un compte de stockage associé à une machine virtuelle


Azure, vous pouvez obtenir une erreur indiquant que le compte de stockage est
toujours en cours d’utilisation. Si vous avez besoin d’aide pour résoudre cette erreur,
consultez Troubleshoot errors when you delete storage accounts (Résoudre les
erreurs liées à la suppression de compte de stockage).
Concevoir votre première base de données
SQL Azure
‎Dans cet article

1. Composants requis
2. Connectez-vous au portail Azure.
3. Créer une base de données SQL vide
4. créer une règle de pare-feu au niveau du serveur ;
5. Informations de connexion SQL Server
6. Connexion à la base de données avec SSMS
7. Créer des tables dans la base de données
8. Charger des données dans les tables
9. Données de requête
10. Restaurer une version antérieure d’une base de données

Azure SQL Database est une solution DBaaS relationnelle gérée dans Microsoft Cloud
(« Azure »). Dans ce didacticiel, vous allez apprendre à utiliser le portail Azure et SQL
Server Management Studio (SSMS) pour :

 Créer une base de données dans le portail Azure


 Configurer une règle de pare-feu au niveau du serveur dans le portail Azure
 Connexion à la base de données avec SSMS
 Créer des tables avec SSMS
 Charger en masse des données avec BCP
 Interroger ces données avec SSMS
 Restaurer la base de données à un point de restauration dans le temps antérieur
dans le portail Azure

Composants requis
Pour suivre ce didacticiel, vérifiez que les éléments suivants sont installés :

 La dernière version de SSMS (SQL Server Management Studio).


 La dernière version de BCP et SQLCMD.

Connectez-vous au portail Azure.


Connectez-vous au portail Azure.
Créer une base de données SQL vide
Une base de données SQL Azure est créée avec un ensemble défini de ressources de
calcul et de stockage. La base de données est créée dans un groupe de ressources
Azure et dans un serveur logique Azure SQL Database.

Pour créer une base de données SQL vide, suivez la procédure suivante.

1. Cliquez sur le bouton Nouveau dans le coin supérieur gauche du portail Azure.
2. Dans la page Nouveau, sélectionnez Bases de données, puis Créer sous SQL
Database dans cette même page.

3. Remplissez le formulaire de base de données SQL avec les informations suivantes,


comme indiqué dans l’illustration précédente :
Paramètre       Valeur suggérée Description 
Pour les noms de base de données valides,
Nom de la base
mySampleDatabase consultez Database Identifiers
de données
(Identificateurs de base de données).
Pour plus d’informations sur vos
Abonnement Votre abonnement
abonnements, consultez Abonnements.
Pour les noms de groupe de ressources
Groupe de
myResourceGroup valides, consultez Naming conventions
ressources
(Conventions d’affectation de nom).
Sélectionner une Base de données Indique qu’une base de données vide doit
source vide être créée.

4. Cliquez sur Serveur pour créer et configurer un serveur pour votre nouvelle base de
données. Remplissez le formulaire de nouveau serveur avec les informations
suivantes :
Valeur
Paramètre       Description 
suggérée
Nom Pour les noms de serveur valides, consultez
Nom du serveur globalement Naming conventions (Conventions
unique d’affectation de nom).
Connexion Pour les noms de connexion valides, consultez
d’administrateur du Nom valide Database Identifiers (Identificateurs de base de
serveur données).
Votre mot de passe doit comporter au moins 8
caractères et contenir des caractères
Mot de passe
Mot de passe appartenant à trois des catégories suivantes :
valide
majuscules, minuscules, chiffres et caractères
non alphanumériques.
Emplacement Pour plus d’informations sur les régions,
Emplacement
valide consultez Régions Azure.

5. Cliquez sur Sélectionner.


6. Cliquez sur Niveau tarifaire pour spécifier le niveau de service, le nombre de DTU et
la quantité de stockage. Explorez les options concernant le nombre de DTU et le
stockage disponible pour chaque niveau de service.
7. Pour ce tutoriel, sélectionnez le niveau de service Standard et utilisez le curseur pour
sélectionner 100 DTU (S3) et 400 Go de stockage.
8. Acceptez les conditions d’utilisation de la préversion pour pouvoir utiliser l’option
Stockage de composants additionnels.

Important

* Les tailles de stockage supérieures à la quantité de stockage inclue sont en version


préliminaire et des coûts supplémentaires s’appliquent.

* Dans le niveau Premium, plus de 1 To de stockage sont actuellement disponibles


dans les régions suivantes : Est des États-Unis 2, États-Unis de l’Ouest, Gouvernement
des États-Unis - Virginie, Europe de l’Ouest, Centre de l’Allemagne, Asie du Sud-Est,
Japon de l’Est, Est de l’Australie et Canada Est.

Après avoir sélectionné le niveau du serveur, le nombre de DTU et la quantité de


stockage, cliquez sur Appliquer.

9. Sélectionnez un classement pour la base de données vide (pour ce didacticiel,


utilisez la valeur par défaut).
10. Maintenant que vous avez rempli le formulaire SQL Database, cliquez sur Créer pour
approvisionner la base de données. L’approvisionnement prend quelques minutes.
11. Dans la barre d’outils, cliquez sur Notifications pour surveiller le processus de
déploiement.
créer une règle de pare-feu au niveau du serveur ;
Le service SQL Database crée un pare-feu au niveau du serveur qui empêche les
applications et les outils externes de se connecter au serveur ou à toute base de
données sur le serveur, sauf si une règle de pare-feu est créée pour ouvrir le pare-feu
à des adresses IP spécifiques. Suivez ces étapes pour créer une règle de pare-feu au
niveau du serveur de base de données SQL pour l’adresse IP de votre client afin de
permettre la connectivité externe via le pare-feu de base de données SQL pour votre
adresse IP uniquement.

Note

SQL Database communique par le biais du port 1433. Si vous essayez de vous
connecter à partir d’un réseau d’entreprise, le trafic sortant sur le port 1433 peut ne
pas être autorisé par le pare-feu de votre réseau. Dans ce cas, vous ne pouvez pas
vous connecter à votre serveur Azure SQL Database, sauf si votre service
informatique ouvre le port 1433.

1. Une fois le déploiement terminé, cliquez sur Bases de données SQL dans le menu
de gauche, puis cliquez sur mySampleDatabase sur la page Bases de données
SQL. La page de présentation de votre base de données s’ouvre, elle affiche le nom
de serveur complet (tel que mynewserver-20170824.database.windows.net) et
fournit des options pour poursuivre la configuration.
2. Copiez le nom complet du serveur pour vous connecter à votre serveur et à ses bases
de données dans les guides de démarrage rapide suivants.
3. Cliquez sur Définir le pare-feu du serveur dans la barre d’outils. La page
Paramètres de pare-feu du serveur de base de données SQL s’ouvre.

4. Dans la barre d’outils, cliquez sur Ajouter une adresse IP cliente afin d’ajouter
votre adresse IP actuelle à une nouvelle règle de pare-feu. Une règle de pare-feu
peut ouvrir le port 1433 pour une seule adresse IP ou une plage d’adresses IP.
5. Cliquez sur Save. Une règle de pare-feu au niveau du serveur est créée pour votre
adresse IP actuelle et ouvre le port 1433 sur le serveur logique.
6. Cliquez sur OK, puis fermez la page Paramètres de pare-feu.

Vous pouvez maintenant vous connecter au serveur SQL Database et à ses bases de
données à l’aide de SQL Server Management Studio ou de tout autre outil de votre
choix à partir de cette adresse IP à l’aide du compte Administrateur de serveur créé
au préalable.
Important

Par défaut, l’accès via le pare-feu SQL Database est activé pour tous les services
Azure. Cliquez sur ÉTEINT sur cette page pour le désactiver pour tous les services
Azure.

Informations de connexion SQL Server


Obtenez le nom de serveur complet de votre serveur Azure SQL Database dans le
portail Azure. Utilisez le nom de serveur complet pour vous connecter à votre serveur
avec SQL Server Management Studio.

1. Connectez-vous au portail Azure.


2. Sélectionnez Bases de données SQL dans le menu de gauche, puis cliquez sur
votre base de données dans la page Bases de données SQL.
3. Dans le volet Essentials de la page du portail Azure pour votre base de données,
recherchez et copiez le nom du serveur.

Connexion à la base de données avec SSMS


Utilisez SQL Server Management Studio pour établir une connexion à votre serveur
Azure SQL Database.

1. Ouvrez SQL Server Management Studio.


2. Dans la fenêtre Se connecter au serveur, entrez les valeurs suivantes :
Valeur
Paramètre       Description 
suggérée
Moteur de
Type de
base de Cette valeur est obligatoire
serveur
données
Le nom doit être similaire à ce qui suit :
Nom du Nom complet
mon_nouveau_serveur20170824.database.window
serveur du serveur
s.net.
Valeur
Paramètre       Description 
suggérée
L’authentification SQL est le seul type
Authentificati l’authentificati
d’authentification que nous avons configuré dans ce
on on SQL Server
didacticiel.
Compte
Il s’agit du compte que vous avez spécifié lorsque
Connexion d’administrate
vous avez créé le serveur.
ur de serveur
Mot de passe
de votre
Il s’agit du mot de passe que vous avez spécifié
Mot de passe compte
lorsque vous avez créé le serveur.
d’administrate
ur de serveur

3.
4. Cliquez sur Options dans la boîte de dialogue Se connecter au serveur. Dans la
section Se connecter à la base de données, entrez mySampleDatabase pour
vous connecter à cette base de données.
5. Cliquez sur Connecter. La fenêtre Explorateur d’objets s’ouvre dans SSMS.
6. Dans l’Explorateur d’objets, développez Bases de données, puis
mySampleDatabase pour afficher les objets dans la base de données exemple.
Créer des tables dans la base de données
Créez un schéma de base de données avec quatre tables qui modélisent un système
de gestion des étudiants pour les universités à l’aide de Transact-SQL :

 Personne
 Cours
 Étudiant
 Attribuez à ce modèle un système de gestion des étudiants pour les universités

Le diagramme suivant montre comment ces tables sont liées entre elles. Certaines de
ces tables référencent des colonnes d’autres tables. Par exemple, la table Étudiant
référence la colonne PersonId de la table Personne. Étudiez le diagramme pour
comprendre comment les tables présentées dans ce didacticiel sont liées entre elles.
Pour découvrir comment créer des tables de base de données efficaces, consultez
Créer des tables de base de données efficaces. Pour plus d’informations sur le choix
des types de données, consultez Types de données.

Note

Vous pouvez également utiliser le concepteur de tables dans SQL Server


Management Studio pour créer et concevoir vos tables.
1. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur mySampleDatabase,
puis cliquez sur Nouvelle requête. Une fenêtre de requête vide connectée à votre
base de données s’ouvre.
2. Dans la fenêtre de requête, exécutez la requête suivante pour créer quatre tables
dans votre base de données :

SQL Copier

-- Create Person table

CREATE TABLE Person

PersonId INT IDENTITY PRIMARY KEY,

FirstName NVARCHAR(128) NOT NULL,

MiddelInitial NVARCHAR(10),

LastName NVARCHAR(128) NOT NULL,

DateOfBirth DATE NOT NULL

-- Create Student table

CREATE TABLE Student

StudentId INT IDENTITY PRIMARY KEY,

PersonId INT REFERENCES Person (PersonId),

Email NVARCHAR(256)

-- Create Course table


CREATE TABLE Course

CourseId INT IDENTITY PRIMARY KEY,

Name NVARCHAR(50) NOT NULL,

Teacher NVARCHAR(256) NOT NULL

-- Create Credit table

CREATE TABLE Credit

StudentId INT REFERENCES Student (StudentId),

CourseId INT REFERENCES Course (CourseId),

Grade DECIMAL(5,2) CHECK (Grade <= 100.00),

Attempt TINYINT,

CONSTRAINT [UQ_studentgrades] UNIQUE CLUSTERED

StudentId, CourseId, Grade, Attempt

)
3. Développez‎le‎nœud‎«‎tables‎»‎dans‎l’Explorateur d’objets SQL Server Management
Studio pour afficher les tables que vous avez créées.
Charger des données dans les tables
1. Créez un dossier nommé SampleTableData dans le dossier Téléchargements pour y
stocker les exemples de données pour votre base de données.
2. Cliquez sur les liens suivants et enregistrez-les dans le dossier SampleTableData.
o SampleCourseData
o SamplePersonData
o SampleStudentData
o SampleCreditData
3. Ouvrez une fenêtre d’invite de commandes et accédez au dossier SampleTableData.
4. Exécutez les commande suivantes pour insérer des exemples de données dans les
tables, en remplaçant les valeurs de ServerName, DatabaseName, UserName et
Password avec les valeurs pour votre environnement.

bcp Copier

bcp Course in SampleCourseData -S <ServerName>.database.windows.net -d


<DatabaseName> -U <Username> -P <password> -q -c -t ","

bcp Person in SamplePersonData -S <ServerName>.database.windows.net -d


<DatabaseName> -U <Username> -P <password> -q -c -t ","

bcp Student in SampleStudentData -S <ServerName>.database.windows.net -d


<DatabaseName> -U <Username> -P <password> -q -c -t ","

bcp Credit in SampleCreditData -S <ServerName>.database.windows.net -d


<DatabaseName> -U <Username> -P <password> -q -c -t ","

Vous avez maintenant chargé des exemples de données dans les tables que vous
avez créées précédemment.

Données de requête
Exécutez les requêtes suivantes pour récupérer des informations à partir des tables
de base de données. La première requête réunit les quatre tables pour rechercher
tous les étudiants inscrits au cours de « Dominick Pope » pour lequel ils ont une note
supérieure à 75 %. La deuxième requête réunit les quatre tables et recherche tous les
cours que « Noe Coleman » a déjà suivis.

1. Dans une fenêtre de requête SQL Server Management Studio, exécutez la requête
suivante :

SQL Copier

-- Find the students taught by Dominick Pope who have a grade higher than 75%
SELECT person.FirstName,

person.LastName,

course.Name,

credit.Grade

FROM Person AS person

INNER JOIN Student AS student ON person.PersonId = student.PersonId

INNER JOIN Credit AS credit ON student.StudentId = credit.StudentId

INNER JOIN Course AS course ON credit.CourseId = course.courseId

WHERE course.Teacher = 'Dominick Pope'

AND Grade > 75

2. Dans une fenêtre de requête SQL Server Management Studio, exécutez la requête
suivante :

SQL Copier

-- Find all the courses in which Noe Coleman has ever enrolled

SELECT course.Name,

course.Teacher,

credit.Grade

FROM Course AS course

INNER JOIN Credit AS credit ON credit.CourseId = course.CourseId

INNER JOIN Student AS student ON student.StudentId = credit.StudentId

INNER JOIN Person AS person ON person.PersonId = student.PersonId

WHERE person.FirstName = 'Noe'

AND person.LastName = 'Coleman'

Restaurer une version antérieure d’une base de données


Imaginez que vous avez supprimé une table par inadvertance. Il s’agit de quelque
chose que vous ne pouvez pas récupérer facilement. Azure SQL Database vous
permet de revenir à n’importe quel moment des 35 derniers jours et de restaurer ce
moment pour obtenir une nouvelle base de données. Vous pouvez utiliser cette base
de données pour récupérer vos données supprimées. Les étapes suivantes restaurent
la base de données à un point situé avant l’ajout des tables.

1. Sur la page SQL Database de votre base de données, cliquez sur Restaurer dans la
barre d’outils. La page Restauration s’ouvre.

2. Remplissez le formulaire Restaurer avec les informations requises :


o Nom de la base de données : entrez un nom pour la base de données
o Point dans le temps : Sélectionnez l’onglet Point dans le temps dans le formulaire
Restauration
o Point de restauration : Sélectionnez une heure avant la modification de la base de
données
o Serveur cible : Vous ne pouvez pas modifier cette valeur lors de la restauration d’une
base de données
o Pool de base de données élastique : sélectionnez Aucun
o Niveau tarifaire : sélectionnez 20 DTU et 40 Go de stockage.
3. Cliquez sur OK pour restaurer la base de données à un point dans le temps avant
l’ajout des tables. La restauration d’une base de données vers un autre point dans le
temps crée une base de données en double sur le même serveur que la base de
données d’origine en date du point dans le temps que vous spécifiez, pour autant
qu’il s’inscrive dans la période de rétention pour votre niveau de service.
Connectez Excel à une base de données
SQL Azure et créez un rapport

Dans cet article

1. Connecter Excel à une base de données SQL et créer un fichier odc

2. Importer les données dans Excel et créer un graphique croisé dynamique

Connectez Excel à une base de données SQL dans le cloud, importez des données et

créez des tables et des graphiques en fonction de valeurs présentes dans la base de

données. Dans ce didacticiel, vous allez configurer la connexion entre Excel et une

table de base de données, enregistrer le fichier qui stocke les données et les

informations de connexion pour Excel, puis créer un graphique croisé dynamique à

partir des valeurs de base de données.

Vous avez besoin d’une base de données SQL dans Azure avant de commencer. Si

vous n’en avez pas, consultez Créer votre première base de données SQL pour

obtenir une base de données avec des données exemple opérationnelle en quelques

minutes. Dans cet article, vous allez importer des données d’exemple dans Excel à

partir de cet article, mais vous pouvez suivre les mêmes étapes avec vos propres

données.

Vous aurez besoin d’une copie d’Excel. Cet article utilise Microsoft Excel 2016.
Connecter Excel à une base de données SQL et créer un
fichier odc
1. Pour connecter Excel à la base de données SQL, ouvrez Excel, puis créez un nouveau

classeur ou ouvrez un classeur Excel existant.

2. Dans la barre de menus en haut de la page, cliquez sur Données, sur Autres

sources, puis sur À partir de SQL Server.

L’Assistant Connexion de données s’ouvre.

3. Dans la boîte de dialogue Connexion à un serveur de base de données, saisissez

le Nom du serveur SQL Database auquel vous voulez vous connecter selon le

format <nom_serveur>.database.windows.net. Par exemple,

adworkserver.database.windows.net.

4. Sous Références de connexion, cliquez sur Utiliser le nom d’utilisateur et le mot

de passe suivants, saisissez le Nom d’utilisateur et le Mot de passe que vous avez

configurés pour le serveur SQL Database quand vous l’avez créé, puis cliquez sur

Suivant.
Conseil

Selon votre environnement réseau, vous n’êtes peut-être pas en mesure de vous

connecter ou vous risquez de perdre la connexion si le serveur de base de données

SQL n’autorise pas le trafic à partir de l’adresse IP du client. Accédez au portail Azure,

cliquez sur Serveurs SQL, cliquez sur votre serveur, cliquez sur le pare-feu sous

paramètres et ajoutez l’adresse IP du client. Dans la boîte de dialogue Sélection

d’une base de données et d’une table, sélectionnez la base de données que vous

voulez utiliser dans la liste, puis cliquez sur les tables ou vues que vous voulez utiliser

(nous avons choisi vGetAllCategories) et cliquez sur Suivant.


La boîte de dialogue Enregistrement du fichier de connexion de données et fin

s’ouvre, dans laquelle vous fournissez des informations sur le fichier de connexion de

base de données Office (*.odc) utilisé par Excel. Vous pouvez laisser les valeurs par

défaut ou personnaliser vos sélections.

5. Vous pouvez laisser les valeurs par défaut, mais notez le Nom de fichier en

particulier. Une Description, un Nom convivial et des Mots clés de recherche

vous aident, ainsi que d’autres utilisateurs, à vous souvenir de l’élément auquel vous

vous connectez et à rechercher la connexion. Cliquez sur Toujours essayer

d’utiliser ce fichier pour actualiser les données si vous souhaitez que les

informations de connexion soient stockées dans le fichier odc afin de permettre

l’actualisation quand vous vous y connectez, puis cliquez sur Terminer.


La boîte de dialogue Importer des données s’affiche.

Importer les données dans Excel et créer un graphique


croisé dynamique
Maintenant que vous avez établi la connexion et créé le fichier avec les données et

les informations de connexion, vous procédez à la lecture pour importer les données.

1. Dans la boîte de dialogue Importer les données, cliquez sur l’option souhaitée pour

présenter vos données dans la feuille de calcul, puis cliquez sur OK. Nous avons

choisi Graphique croisé dynamique. Vous pouvez également choisir de créer une

Nouvelle feuille de calcul ou d’Ajouter ces données au modèle de données.

Pour plus d’informations sur les modèles de données. Cliquez sur Propriétés pour
découvrir les informations relatives au fichier odc que vous avez créé lors de l’étape

précédente et choisir les options d’actualisation des données.

La feuille de calcul comporte désormais un tableau et un graphique croisés

dynamiques vides.

2. Sous Champs de tableau croisé dynamique, cochez toutes les cases

correspondant aux champs que vous souhaitez afficher.


Conseil

Si vous souhaitez connecter d’autres classeurs Excel et feuilles de calcul à la base de

données, cliquez sur Données, Connexions, Ajouter, sélectionnez dans la liste la

connexion que vous avez créée, puis cliquez sur Ouvrir.


Lab: Création d'une base de données SQL
dans Azure
Exercice 1: Créez une nouvelle base de données Azure SQL dans Azure
et configurez les règles de pare-feu SQL Server
Tâche 1: Créer une nouvelle base de données Azure SQL en utilisant le portail Azure

1. Lancez Microsoft Edge, accédez à ** http: //portal.azure.com** et, si vous y êtes invité,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans le menu ** Hub ** à gauche, cliquez sur ** + Nouveau **.
3. Sur la lame ** Nouveau **, cliquez sur ** Bases de données **.
4. Sur la base ** Bases de données **, cliquez sur ** Base de données SQL **.
5. Dans la ** base de données SQL **, spécifiez les paramètres suivants:
- Nom de la base de données: ** 10979D07labDB1 **
- Abonnement: votre abonnement Azure
- Groupe de ressources: ** Créer un nouveau ** ** 10979D07-LabRG01 **
- Sélectionnez la source: ** Base de données vierge **
6. Dans la section ** ** Serveur **, cliquez sur ** Configurer les paramètres requis **.
7. Sur la lame ** Server **, assurez-vous que ** Créer un nouveau serveur ** est
sélectionné.
8. Sur la lame ** Nouveau serveur **, entrez les paramètres suivants, puis cliquez sur **
Sélectionnez **:
- Nom du serveur: _Au nom unique valide
- Connexion de l'administrateur du serveur: ** Étudiant **
- Mot de passe: ** Pa55w.rd **
- Confirmer le mot de passe: ** Pa55w.rd **
- Emplacement: _La région Azure qui est la plus proche de l'emplacement de la classe et
qui est disponible dans votre abonnement_
9. Sur la ** base de données SQL **, assurez-vous que ** Non maintenant ** est sélectionné
dans la section intitulée ** Vous voulez utiliser SQL elastic pool? **.
10. Cliquez sur ** Niveau de prix **.
11. Sur la lame ** Configurer performance **, cliquez sur ** Basic ** et cliquez sur **
Appliquer **.
12. Laissez le ** Collation ** configuré à ** SQL_Latin1_General_CP1_CI_AS **, activez la
case à cocher ** Pin sur le tableau de bord ** et cliquez sur ** Créer **.
13. Attendez que la base de données soit provisionnée.

Tâche 2: Configurer une règle de pare-feu Azure SQL Server à l'aide de Azure Portal

1. Dans le portail Azure, cliquez sur le calque ** 10979D07labDB1 ** sur le tableau de bord.
2. Sur la lame ** 10979D07labDB1 **, cliquez sur ** Définir le pare-feu du serveur **.
3. Dans la ** Paramètres du pare-feu ** lame, cliquez sur ** Ajouter un client IP **.
4. Dans la colonne ** START IP ** de la nouvelle règle de pare-feu, remplacez les deux
derniers nombres séparés par une période avec ** 0.0 **.
5. Dans la colonne ** END IP ** de la nouvelle règle de pare-feu, remplacez les deux
derniers nombres séparés par une période avec ** 255.255 **.
6. Cliquez sur ** Enregistrer **.
Note: ** Il peut prendre jusqu'à cinq minutes pour que cette modification prenne effet.
** Résultat **: Après avoir terminé cet exercice, vous devriez avoir créé une base de
données Microsoft Azure SQL nommée 10979D07labDB1 sur un nouveau serveur avec le
nom de votre choix. Vous aurez également configuré les règles de pare-feu Microsoft SQL
Server dans Azure, qui permettent la connectivité de vos outils et applications de gestion sur
place à la base de données SQL nouvellement créée dans Azure.

Exercice 2: Gérer le contenu d'une base de données Azure SQL à


l'aide de SQL Server Management Studio
Tâche 1: Ajouter une table à une base de données Azure SQL en utilisant SQL Server
Management Studio

1. Démarrez SQL Server Management Studio en cliquant sur son raccourci dans la barre
des tâches.
2. Dans la boîte de dialogue ** Connectez-vous au serveur **, spécifiez les paramètres
suivants (remplacer ** _ nom_serveur _ ** par le nom unique que vous avez spécifié lors de
la création de votre serveur de base de données SQL dans l'exercice précédent), puis
cliquez sur ** Connexion * *:
- Type de serveur: ** Moteur de base de données **
- Nom du serveur: ** _server_name_.database.windows.net **
- Authentification: ** Authentification SQL Server **
- Login: ** Étudiant **
- Mot de passe: ** Pa55w.rd **
3. Si la tentative de connexion échoue indiquant que l'adresse IP du client n'est pas
autorisée à accéder au serveur, notez l'adresse IP dans le message d'erreur. Passez à
Microsoft Edge et, dans la ** Paramètres du pare-feu **, créez une nouvelle règle en
spécifiant les paramètres suivants, puis en cliquant sur ** Enregistrer **:
- NOM DE LA RÈGLE: ** ClientIPAddressMod7 **
- START IP: adresse _IP que vous avez notée dans le message d'erreur_
- END IP: adresse _IP que vous avez notée dans le message d'erreur_
Remarque: ** Notez qu'il peut prendre jusqu'à cinq minutes pour que cette
modification prenne effet.
4. Dans SQL Server Management Studio, dans Object Explorer, sous le nom du serveur,
développez le dossier ** Bases de données ** et vérifiez que la liste des sous-nœuds inclut
la base de données ** 10979D07labDB1 **.
5. Cliquez avec le bouton droit sur le nœud de la base de données ** 10979D07labDB1 **,
puis cliquez sur ** Nouvelle requête ** dans le menu contextuel.
6. Dans le nouveau volet de requête, tapez l'instruction Transact-SQL suivante, puis cliquez
sur ** Exécuter **:
CREATE TABLE dbo.testTable
(
ID clé entière clé primaire,
dataval nvarchar (50)
);
GO
7. Dans Object Explorer, développez le nœud ** 10979D07labDB1 **, développez le dossier
** Tables ** et vérifiez que ** dbo.testTable ** est répertorié (sinon, cliquez avec le bouton
droit sur ** Tables **, puis cliquez sur ** Actualiser **).
8. Laissez le SQL Server Management Studio ouvert pour la prochaine tâche

Tâche 2: Ajouter des données à un tableau d'une base de données SQL dans Azure en
utilisant SQL Server Management Studio.

1. Cliquez sur ** Nouvelle requête **, entrez le code Transact-SQL suivant dans le nouveau
volet de requête, puis cliquez sur ** Exécuter ** pour insérer 100 lignes contenant des
valeurs d'identificateur unique globalement générées (GUID) générées automatiquement
dans la table:
INSERT INTO dbo.testTable
VALEURS
(newid ());
GO 100
2. Laissez le SQL Server Management Studio ouvert pour la prochaine tâche.

Tâche 3: Consulter une table d'une base de données Azure SQL dans Azure en utilisant
SQL Server Management Studio

1. Dans l'Explorateur d'objets, cliquez avec le bouton droit sur ** dbo.testTable **, dans le
menu contextuel, cliquez sur ** Table de script sous **, cliquez sur ** SELECT To **, puis
cliquez sur ** Nouvelle fenêtre de l'éditeur de requêtes **. Cela génère une requête
Transact-SQL qui récupère les données de la table.
2. Dans la barre d'outils, dans la liste ** Bases de données disponibles **, assurez-vous que
** 10979D07labDB1 ** est sélectionné, puis cliquez sur ** Exécuter **.
3. Affichez les résultats de la requête et vérifiez qu'un tableau des valeurs ** id ** et **
dataval ** est renvoyé.
4. Fermez SQL Server Management Studio et Microsoft Edge. Ne pas enregistrer les
modifications lorsque vous y êtes invité.

Tâche 4: Préparer le prochain module

1. Lancez Microsoft Edge, accédez à ** http: //portal.azure.com** et, si vous êtes invité,
connectez-vous en utilisant le compte Microsoft qui est l'administrateur de service de votre
abonnement Azure.
2. Dans le Portail Azure, dans le menu Hub, cliquez sur ** Groupes de ressources **.
3. Dans la section ** Groupe de ressources **, cliquez sur les points de suspension (...) sur
le côté droit de l'entrée ** 10979D07-LabRG01 **.
4. Cliquez sur ** Supprimer **.
5. Sur le ** Êtes-vous sûr de vouloir supprimer la lame "10979D07-LabRG01" **, dans la
zone de texte ** TYPE THE RESOURCE GROUP NAME **, tapez ** 10979D07-LabRG01 **
et cliquez sur ** Supprimer * *.
6. Cliquez sur ** Microsoft Azure **.
7. Sur le tableau de bord du portail Azure, cliquez avec le bouton droit de la souris sur la
mosaïque ** 10979D07labDB1 ** et cliquez sur ** Déplacer du tableau de bord **.
8. Fermez Microsoft Edge.

Lorsque vous avez fini avec le laboratoire, ne reculez pas les machines virtuelles. Gardez
toutes les machines virtuelles en cours d'exécution. Les VM dans leur état actuel sont
nécessaires pour le prochain module.

> ** Résultat **: Après avoir terminé cet exercice, vous devriez avoir créé une table de test
dans la base de données SQL dans Azure nommée 10979D07labDB1 sur un serveur SQL
existant dans Azure avec un nom de votre choix, l'a peuplé avec des exemples de données
et a demandé à contenu.
Sécuriser votre base de données SQL Azure
‎Dans cet article

1. Composants requis
2. Connectez-vous au portail Azure.
3. Créer une règle de pare-feu au niveau du serveur dans le portail Azure
4. Créer une règle de pare-feu au niveau de la base de données à l’aide de SSMS
5. Connecter une application à votre base de données à l’aide d’une chaîne de
connexion sécurisée
6. Création d’utilisateurs de base de données
7. Protéger vos données à l’aide du chiffrement
8. Activer l’audit Azure SQL Database, si nécessaire
9. Activer la détection de menaces pour les bases de données SQL

SQL Database protège vos données en limitant l’accès à votre base de données via
des règles de pare-feu, des mécanismes d’authentification demandant aux
utilisateurs de prouver leur identité, une autorisation pour accéder aux données en
fonction des droits et des appartenances associés à un rôle, ainsi qu’à l’aide de la
sécurité au niveau des lignes et du masquage de données dynamiques.

Quelques étapes simples suffisent pour améliorer la protection d’une base de


données contre les utilisateurs malveillants ou tout accès non autorisé. Ce didacticiel
vous apprend à effectuer les opérations suivantes :

 Configurer des règles de pare-feu pour votre serveur dans le portail Azure
 Créer des règles de pare-feu pour votre base de données à l’aide de SSMS
 Se connecter à la base de données à l’aide d’une chaîne de connexion sécurisée
 Gérer l’accès des utilisateurs
 Protéger vos données à l’aide du chiffrement
 Activer l’audit Azure SQL Database
 Activer la détection de menaces pour les bases de données SQL

Composants requis
Pour suivre ce didacticiel, vérifiez que vous disposez des éléments suivants :

 La dernière version de SQL Server Management Studio (SSMS).


 Microsoft Excel.
 Un serveur Azure SQL Server et une base de données. Consultez Création d’une base
de données SQL Azure à l’aide du portail Azure, Créer une base de données SQL
Azure à l’aide de l’interface de ligne de commande Azure et Créer une base de
données SQL Azure unique à l’aide de PowerShell.

Connectez-vous au portail Azure.


Connectez-vous au portail Azure.

Créer une règle de pare-feu au niveau du serveur dans le


portail Azure
Les bases de données SQL sont protégées par un pare-feu dans Azure. Par défaut,
toutes les connexions au serveur et aux bases de données du serveur sont rejetées,
sauf celles provenant d’autres services Azure.

La configuration la plus sécurisée consiste à définir le paramètre « Autoriser l’accès


aux services Azure » sur DÉSACTIVER. Si vous avez besoin de vous connecter à la
base de données à partir d’une machine virtuelle Azure ou d’un service cloud, vous
devez créer une adresse IP réservée et autoriser uniquement cette adresse IP
réservée à traverser le pare-feu.

Suivez la procédure suivante pour créer une règle de pare-feu au niveau du serveur
SQL Database pour votre serveur afin d’autoriser les connexions depuis une adresse
IP spécifique.

Note

Si vous avez créé une base de données exemple dans Azure à l’aide d’un des
didacticiels ou des démarrages rapides précédents et que vous suivez ce didacticiel
sur un ordinateur ayant la même adresse IP que lorsque vous avez effectué ces
didacticiels, vous pouvez ignorer cette étape car vous avez déjà créé une règle de
pare-feu au niveau du serveur.

1. Cliquez sur Bases de données SQL dans le menu de gauche et cliquez sur la base
de données pour laquelle vous souhaitez configurer la règle de pare-feu sur la page
Bases de données SQL. La page de présentation de votre base de données
s’ouvre, affiche le nom de serveur complet (tel que mynewserver-
20170313.database.windows.net) et fournit des options pour poursuivre la
configuration.
2. Cliquez sur Définir le pare-feu du serveur dans la barre d’outils, comme illustré sur
l’image précédente. La page Paramètres de pare-feu du serveur de base de
données SQL s’ouvre.
3. Cliquez sur Ajouter l’adresse IP du client dans la barre d’outils pour ajouter
l’adresse IP publique de l’ordinateur avec lequel vous vous êtes connecté au portail
ou saisissez manuellement la règle de pare-feu, puis cliquez sur Enregistrer.

4. Cliquez sur OK, puis cliquez sur la X pour fermer la page Paramètres de pare-feu.

Vous pouvez maintenant vous connecter à n’importe quelle base de données du


serveur avec l’adresse IP ou la plage d’adresses IP spécifiée.

Note

SQL Database communique par le biais du port 1433. Si vous essayez de vous
connecter à partir d’un réseau d’entreprise, le trafic sortant sur le port 1433 peut ne
pas être autorisé par le pare-feu de votre réseau. Dans ce cas, vous ne pourrez pas
vous connecter à votre serveur Azure SQL Database, sauf si votre service
informatique ouvre le port 1433.
Créer une règle de pare-feu au niveau de la base de
données à l’aide de SSMS
Les règles de pare-feu de niveau base de données permettent de créer des
paramètres de pare-feu différents selon les bases de données dans le même serveur
logique et de créer des règles de pare-feu qui sont portables, c’est-à-dire qui suivent
la base de données pendant un basculement et ne sont pas stockées sur le serveur
SQL Server. Les règles de pare-feu au niveau de la base de données peuvent
seulement être configurées en utilisant des instructions Transact-SQL et uniquement
après avoir configuré la première règle de pare-feu au niveau du serveur.

Procédez comme suit pour créer une règle de pare-feu spécifique à la base de
données.

1. Connectez-vous par exemple à votre base de données à l’aide de SQL Server


Management Studio.
2. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur la base de données à
laquelle vous souhaitez ajouter une règle de pare-feu, puis cliquez sur Nouvelle
requête. Une fenêtre de requête vide connectée à votre base de données s’ouvre.
3. Dans la fenêtre de requête, remplacez l’adresse IP par votre adresse IP publique, puis
exécutez la requête suivante :

SQL Copier

EXECUTE sp_set_database_firewall_rule N'Example DB Rule','0.0.0.4','0.0.0.4';

4. Dans la barre d’outils, cliquez sur Exécuter pour créer la règle de pare-feu.

Connecter une application à votre base de données à


l’aide d’une chaîne de connexion sécurisée
Pour garantir une connexion sécurisée et chiffrée entre une application cliente et SQL
Database, la chaîne de connexion doit être configurée pour :

 demander une connexion chiffrée ;


 ne pas faire confiance au certificat du serveur.

Cela établit une connexion à l’aide du protocole TLS (Transport Layer Security) et
réduit le risque d’attaques de l’intercepteur. Vous pouvez obtenir des chaînes de
connexion correctement configurées pour votre base de données SQL pour les
pilotes clients pris en charge à partir du portail Azure, comme indiqué dans cette
capture d’écran pour ADO.net.
1. Sélectionnez Bases de données SQL dans le menu de gauche, puis cliquez sur
votre base de données dans la page Bases de données SQL.
2. Dans la page Vue d’ensemble de votre base de données, cliquez sur Afficher les
chaînes de connexion de la base de données.
3. Passez en revue la chaîne de connexion ADO.NET complète.

Création d’utilisateurs de base de données


Avant de créer des utilisateurs, vous devez d’abord choisir l’un des deux types
d’authentification pris en charge par Azure SQL Database :

L’authentification SQL, qui utilise le nom d’utilisateur et le mot de passe pour les
connexions et les utilisateurs qui sont valides uniquement dans le contexte d’une
base de données spécifique au sein d’un serveur logique.

L’authentification Azure Active Directory, qui utilise des identités gérées par
Azure Active Directory.

Si vous souhaitez utiliser Azure Active Directory pour vous authentifier auprès de SQL
Database, un répertoire Azure Active Directory doit être renseigné pour que vous
puissiez continuer.

Procédez comme suit pour créer un utilisateur à l’aide de l’authentification SQL :

1. Connectez-vous à votre base de données, par exemple via SQL Server Management
Studio à l’aide de vos informations d’identification d’administrateur de serveur.
2. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur la base de données à
laquelle vous souhaitez ajouter un nouvel utilisateur, puis cliquez sur Nouvelle
requête. Une fenêtre de requête vide connectée à la base de données sélectionnée
s’ouvre.
3. Dans la fenêtre de requête, entrez la requête suivante :

SQL Copier
CREATE USER ApplicationUser WITH PASSWORD = 'YourStrongPassword1';

4. Dans la barre d’outils, cliquez sur Exécuter pour créer l’utilisateur.


5. Par défaut, l’utilisateur peut se connecter à la base de données, mais ne peut ni lire ni
écrire des données. Pour accorder ces autorisations au nouvel utilisateur, exécutez les
deux commandes suivantes dans une nouvelle fenêtre de requête.

SQL Copier

ALTER ROLE db_datareader ADD MEMBER ApplicationUser;

ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;

Nous vous recommandons de créer ces comptes non administrateurs au niveau de la


base de données pour la connexion à votre base de données, sauf si vous avez
besoin d’exécuter des tâches d’administrateur telles que la création de nouveaux
utilisateurs. Consultez le didacticiel Azure Active Directory sur l’authentification via
Azure Active Directory.

Protéger vos données à l’aide du chiffrement


La technologie de chiffrement transparent des données (TDE) d’Azure SQL Database
chiffre automatiquement vos données au repos, sans aucune modification au niveau
de l’application qui accède à la base de données chiffrée. Pour les bases de données
créées, TDE est activé par défaut. Pour activer TDE sur votre base de données ou
pour vérifier que TDE est activé, procédez comme suit :

1. Sélectionnez Bases de données SQL dans le menu de gauche, puis cliquez sur
votre base de données dans la page Bases de données SQL.
2. Cliquez sur Chiffrement transparent des données pour ouvrir la page de
configuration pour TDE.

3. Si nécessaire, réglez le paramètre Chiffrement des données sur Activé et cliquez sur
Enregistrer.
Le processus de chiffrement démarre en arrière-plan. Vous pouvez surveiller la
progression en vous connectant à SQL Database à l’aide de SQL Server Management
Studio en interrogeant la colonne encryption_state de la vue
sys.dm_database_encryption_keys.

Activer l’audit Azure SQL Database, si nécessaire


L’audit Azure SQL Database suit les événements de base de données et les écrit dans
un journal d’audit dans votre compte Stockage Azure. L’audit peut vous aider à
respecter une conformité réglementaire, à comprendre l’activité de la base de
données et à découvrir des discordances et anomalies susceptibles d’indiquer des
violations potentielles de la sécurité. Procédez comme suit pour créer une stratégie
d’audit par défaut pour votre base de données SQL :

1. Sélectionnez Bases de données SQL dans le menu de gauche, puis cliquez sur
votre base de données dans la page Bases de données SQL.
2. Dans le panneau Paramètres, sélectionnez Audit et détection des menaces. Notez
que l’audit au niveau du serveur est désactivé et que le lien Afficher les paramètres
du serveur qui vous permet d’afficher ou de modifier les paramètres d’audit du
serveur à partir de ce contexte.

3. Si vous préférez activer un type d’audit (ou un emplacement) différent de celui


spécifié au niveau du serveur, activez l’audit et choisissez le type d’audit Objet blob.
Si l’audit Objet blob du serveur est activé, l’audit configuré pour la base de données
existe parallèlement à l’audit Objet blob du serveur.
4. Sélectionnez Détails du stockage pour ouvrir le panneau Stockage des journaux
d’audit. Sélectionnez le compte de stockage Azure où les journaux sont enregistrés
et la période de rétention après laquelle les anciens journaux sont supprimés, puis
cliquez sur OK dans le bas.

Conseil

Utilisez le même compte de stockage pour toutes les bases de données auditées afin
de profiter au mieux des modèles de rapport d’audit.

5. Cliquez sur Enregistrer.

Important

Si vous voulez personnaliser les événements audités, vous pouvez le faire via
PowerShell ou l’API REST.

Activer la détection de menaces pour les bases de


données SQL
Threat Detection fournit une nouvelle couche de sécurité qui permet aux clients de
détecter les menaces potentielles et d’y répondre à mesure qu’elles se présentent en
générant des alertes de sécurité sur les activités anormales. Les utilisateurs peuvent
analyser les événements suspects à l’aide de la fonction d’audit de base de données
SQL pour déterminer s’ils sont le résultat d’une tentative d’accès, d’une violation ou
d’une exploitation des données dans la base de données. Threat Detection vous
permet de réagir facilement aux menaces potentielles à la base de données sans
avoir à acquérir une expertise de la sécurité ou à gérer des systèmes de surveillance
de la sécurité avancés. Par exemple, il détecte certaines activités de base de données
anormales indiquant des tentatives d’injection SQL potentielles. L’injection SQL
représente l’un des problèmes de sécurité auxquels sont le plus exposées les
applications web, et est utilisée pour cibler les applications pilotées par des données.
Les pirates exploitent les vulnérabilités des applications pour injecter des instructions
SQL nuisibles dans les champs de saisie d’application afin de violer ou modifier les
données contenues dans la base de données.

1. Accédez au volet de configuration de la base de données SQL que voulez surveiller.


Dans le panneau Paramètres, sélectionnez Audit et détection des menaces.

2. Dans le panneau de configuration Audit et détection des menaces, activez l’audit


pour afficher les paramètres Détection des menaces.
3. Activez la détection des menaces.
4. Configurez la liste des adresses électroniques qui recevront les alertes de sécurité en
cas de détection d’activités anormales sur la base de données.
5. Cliquez sur Enregistrer dans le panneau Audit et détection des menaces pour
enregistrer la stratégie d’audit et de détection des menaces que vous avez créée ou
modifiée.
Si des activités de base de données anormales sont détectées, vous recevrez une
notification par courrier électronique. Le courrier électronique contiendra des
informations sur l’événement de sécurité suspect, notamment la nature des activités
anormales, le nom de la base de données, le nom du serveur et l’heure de
l’événement. Il fournit également des informations sur les causes possibles et les
mesures recommandées afin d’examiner et atténuer la menace potentielle pesant sur
la base de données. Voici la procédure à suivre si vous recevez ce type de courrier
électronique :

6. Dans le courrier électronique, cliquez sur le lien Azure SQL Auditing Log pour
ouvrir le portail Azure et afficher les enregistrements d’audit pertinents au moment
de l’événement suspect.
7. Cliquez sur les enregistrements d’audit pour afficher plus de détails sur les activités
de base de données suspects, comme l’instruction SQL, la cause de l’échec et
l’adresse IP client.

8. Dans le panneau des enregistrements d’audit, cliquez sur Ouvrir dans Excel pour
ouvrir un modèle Excel préconfiguré à importer et exécuter une analyse plus
approfondie du journal d’audit au moment de l’événement suspect.

Note

Dans Excel 2010 ou version ultérieure, les paramètres Power Query et Combinaison
rapide sont requis.

9. Pour configurer le paramètre Combinaison rapide : sous l’onglet du ruban POWER


QUERY, sélectionnez Options pour afficher la boîte de dialogue correspondante.
Sélectionnez la section Confidentialité et choisissez la deuxième option « Ignore the
Privacy Levels and potentially improve performance » :
10. Pour charger les journaux d’audit SQL, vérifiez que les paramètres de l’onglet
Paramètres sont correctement définis, puis sélectionnez le ruban « Données » et
cliquez sur le bouton « Actualiser tout ».

11. Les résultats s’affichent dans la feuille SQL Audit Logs , qui vous permet d’analyser
de manière plus approfondie les activités anormales détectées et de limiter l’impact
de l’événement de sécurité sur votre application.
Utilisation de la base de données SQL Azure
Aperçu
Azure SQL Database est un service de base de données relationnelle basé sur le cloud
basé sur le moteur SQL Server de Microsoft. Il offre des performances prévisibles, une
évolutivité dynamique et une protection des données robuste, ce qui vous permet de vous
concentrer sur le développement d'applications frontales plutôt que sur la gestion des
machines et de l'infrastructure. La base de données SQL prend en charge les outils,
bibliothèques et API SQL Server existants, ce qui simplifie la migration des solutions de
base de données existantes vers le cloud et les exploite en utilisant les compétences dont
vous disposez déjà.
L'un des avantages de l'exécution de la base de données SQL sur Microsoft Azure est sa
capacité à évoluer vers le haut ou vers le bas, manuellement ou automatiquement, pour
s'adapter rapidement à l'évolution de la demande. La base de données SQL offre un large
éventail de niveaux de performance, chaque niveau offrant des performances et une
disponibilité optimales. Il offre également des pools élastiques pour héberger des
applications mutualisées sans le compromis habituel en termes de performances, de gestion
et de sécurité.
Au cours de ce TP, vous allez créer une base de données SQL Azure et la remplir avec les
données de la datable vénérable Northwind. Vous allez créer une application API Azure
pour exposer la base de données aux clients via des appels REST, créer une application
Universal Windows Platform pour accéder à la base de données via l'application API et
utiliser les fonctionnalités de sécurité de la base de données SQL pour limiter les
informations renvoyées.

Objectifs
Dans ce laboratoire pratique, vous apprendrez à:

 Créer une base de données SQL Azure


 Remplir une base de données SQL Azure avec des données
 Créer une application API Azure qui se connecte à la base de données
 Rédiger des applications qui accèdent à la base de données via l'application API
Azure
 Utiliser les fonctions de sécurité de la base de données SQL Azure pour restreindre
l'accès aux données

Exercices
Ce laboratoire pratique comprend les exercices suivants:
Exercice 1: Créer une base de données SQL Azure
Exercice 2: Ajouter des enregistrements à la base de données
Exercice 3: Créer une application API Azure
Exercice 4: Créer un client UWP
Exercice 5: Appliquer les autorisations et les masques de données
Exercice 6: Supprimer le groupe de ressources
Exercice 1: Créer une base de données SQL Azure
La première étape de l'utilisation d'Azure SQL Database consiste à créer un compte de base
de données. Dans cet exercice, vous allez utiliser le portail Azure pour créer un compte de
base de données SQL et un serveur de base de données pour l'accompagner.

1- Ouvrez le portail Azure dans votre navigateur. Si vous êtes invité à vous connecter,
faites-le avec votre compte Microsoft.
2- Cliquez sur + Nouveau, puis sur Bases de données et base de données SQL.

Création d'une nouvelle base de données SQL Azure

3- Dans la lame "SQL Database", entrez "Northwind" (sans guillemets) comme nom de
base de données. Sélectionnez Créer nouveau sous-groupe de ressources et
nommez le groupe de ressources "SQLDatabaseResourceGroup". Laissez Select
source sur Blank database et cliquez sur Server - Configure les paramètres requis.
Configuration d'une base de données SQL Azure
4- Cliquez sur Créer un nouveau serveur. Dans la lame "Nouveau serveur", entrez un
nom unique pour le nom du serveur et assurez-vous qu'une coche verte apparaît à
côté de celui-ci. (Vous ne pouvez utiliser que des chiffres et des minuscules car le
nom fait partie d'un nom DNS.) Spécifiez "sqladmin" comme nom d'utilisateur et
"Password_1" comme mot de passe. Sélectionnez l'emplacement le plus proche de
vous, puis cliquez sur le bouton Sélectionner.
Créer un serveur de base de données
5- Cliquez sur le bouton Créer en bas de la lame "SQL Database".

Créer la base de données

6- Cliquez sur Groupes de ressources dans le ruban sur le côté gauche du portail, puis
cliquez sur le groupe de ressources créé pour la base de données SQL.
Ouverture du groupe de ressources
7- Attendez que "Déploiement" soit remplacé par "Réussi", indiquant que la base de
données SQL a été déployée. Vous pouvez cliquer sur le bouton Actualiser en haut
de la lame pour actualiser l'état du déploiement.

Surveillance de l'état du déploiement


Votre base de données SQL Azure est maintenant configurée et prête à être remplie
avec des données. Pour cela, vous utiliserez les outils de données SQL Server pour
Visual Studio 2015.

Exercice 2: Ajouter des enregistrements à la base de données


Maintenant que vous avez créé une base de données SQL dans Azure, l'étape
suivante consiste à ajouter des données. Dans cet exercice, vous allez remplir la
base de données Northwind créée dans l'Exercice 1 avec des enregistrements de
client, de produit et de commande à l'aide des outils de données SQL Server (SSDT)
dans Visual Studio. Si vous n'avez pas installé SSDT, veuillez prendre le temps de le
faire maintenant.

1- Cliquez sur la base de données SQL que vous avez déployée dans l'exercice 1.
Ouverture de la base de données Northwind
2- Cliquez sur Outils.

Ouverture des outils de base


3- Cliquez sur Ouvrir dans Visual Studio dans la lame "Outils" et cliquez sur le bouton Ouvrir
dans Visual Studio dans la lame "Ouvrir dans Visual Studio".

Vous pouvez être invité à autoriser le Gestionnaire de protocole Web Microsoft Visual
Studio à passer de votre navigateur à Visual Studio. Si vous êtes, cliquez sur Oui.

Opening the database in Visual Studio


4- In Visual Studio's "Connect" dialog, enter the password ("Password_1") you specified in
Exercise 1, Step 4. Then check the Remember Password box and click Connect

Connexion à la base de données à partir de Visual Studio


5- Lorsque vous êtes invité à créer une nouvelle règle de pare-feu, acceptez les valeurs par
défaut et cliquez sur OK. Cela permettra à Visual Studio de passer à travers le pare-feu sur le
serveur et de se connecter à la base de données SQL.

Création d'une nouvelle règle de pare-feu


6- Dans l'Explorateur d'objets SQL Server (SSOE) de Visual Studio, cliquez avec le bouton droit
sur le nœud représentant le serveur de base de données SQL que vous avez déployé dans
l'exercice précédent et sélectionnez Nouvelle requête ....

Démarrer une nouvelle requête


7- Utilisez la commande Edition -> Insérer un fichier en tant que texte ... pour ouvrir le fichier
nommé Create MASTER logins.sql situé dans le dossier "Resources" de ce TP.
Insérer un script SQL
8- Cliquez avec le bouton droit n'importe où dans le script et sélectionnez Exécuter. Ce script
crée trois connexions utilisateur qui seront utilisées dans les exercices ultérieurs.

Exécuter le script
9- Dans l'Explorateur d'objets SQL Server, développez le nœud pour votre serveur de base de
données SQL et cliquez avec le bouton droit sur la base de données Northwind. Sélectionnez
ensuite Nouvelle requête ... dans le menu contextuel.
Démarrer une nouvelle requête
10- Utilisez la commande Edition -> Insérer un fichier en tant que texte ... pour ouvrir le fichier
nommé Créer NORTHWIND tables.sql situé dans le dossier "Ressources" de ce TP. Puis
cliquez avec le bouton droit n'importe où dans le script et sélectionnez Exécuter. Ce script
crée des tables et d'autres objets dans la base de données Northwind et dure généralement
entre 2 et 5 minutes.

11- À ce stade, il peut être utile de vous familiariser avec certaines des tables créées par le
script. Développez le nœud "Northwind" dans SSOE, puis développez le nœud "Tables" pour
afficher les tables dans la base de données. Cliquez avec le bouton droit sur la table
Customers et sélectionnez Afficher les données dans le menu contextuel.

Ouverture de la table Customers


12- Confirmez que vous voyez une liste de clients comme celle ci-dessous.
Viewing customer records
13- Your SQL Database is now populated with customers, products, orders, and other
information. You will be adding additional objects to the database in later exercises to
facilitate row-level security. But for now, the next step is to make the database accessible to
applications over the Web.

Exercice 3: Créer une application API Azure


La plupart des applications modernes, en particulier les applications mobiles, stockent les
données à distance, que ce soit dans une base de données locale ou dans le cloud. Pour
accéder à ces données, les développeurs déploient souvent un service Web qui se connecte
à la base de données et fournit des méthodes pour effectuer des actions telles que la
création, la lecture, la mise à jour et la suppression d'enregistrements. Dans cet exercice,
vous allez créer une application API Azure pour mettre votre base de données SQL front-
end et, dans l'exercice 4, vous allez écrire une application qui se connecte à la base de
données via l'API App.

1- Dans Visual Studio, sélectionnez Fichier -> Nouveau -> Projet pour créer un nouveau
projet. Dans la boîte de dialogue "Nouveau projet", sélectionnez le modèle d'application
Web Visual C # ASP.NET et nommez le projet "OrderViewServices". Puis cliquez sur
OK.

Créer un nouveau projet


2- Dans la boîte de dialogue "Nouveau projet ASP.NET", sélectionnez le modèle de
l'application API Azure, assurez-vous que l'option Host in the cloud est activée et
cliquez sur OK.

Configuration du projet
3- Dans la boîte de dialogue "Créer un service d'application", assurez-vous que
SQLDatabaseResourceGroup est sélectionné sous Groupe de ressources. (Cela
ajoutera l'application API Azure au même groupe de ressources que la base de
données SQL, ce qui est pratique car la suppression du groupe de ressources
supprimera les deux.) Cliquez ensuite sur le bouton Nouveau ... en regard de Plan de
service App et sélectionnez l'emplacement le plus proche pour héberger l'application
Web, et gratuit comme la taille. Cliquez sur OK pour fermer la boîte de dialogue
"Configurer le plan de service App". Puis cliquez sur Créer en bas de la boîte de
dialogue "Créer un service d'application".
Creating an Azure App Service
4- Take a moment to review the project structure in the Solution Explorer window. Among
other things, there's a folder named "Controllers" that holds the project's API
controllers, and a folder named "Models" that holds the project's model classes. You
will be working with assets in these folders and others as you implement the API App.
5- With the basic project structure in place, the next step is to add logic to access the SQL
Database in Azure. You will start by connecting an Entity Framework model to the
database. In Solution Explorer, right-click the project and use the Add -> New Folder
command to create a folder named "Data" at the root of the project.

Ajouter un nouveau dossier au projet


6- Cliquez avec le bouton droit sur le dossier "Données" et sélectionnez Ajouter -> Nouvel
élément .... Dans la boîte de dialogue "Ajouter un nouvel élément", sélectionnez
Modèle de données d'entité ADO.NET et saisissez "OrdersModel" dans le champ Nom.
Puis cliquez sur le bouton Ajouter.

Ajouter un modèle de données d'entité


7- Sélectionnez EF Designer à partir de la base de données et cliquez sur Next.

Sélection du concepteur EF
8- Cliquez sur le bouton Nouvelle connexion ...
Créer une nouvelle connexion

9- Si vous êtes invité à choisir une source de données, sélectionnez Microsoft SQL Server
et cliquez sur Continuer.

Choisir une source de données


10- Dans la zone Nom du serveur, tapez le nom que vous avez affecté au serveur de base
de données dans l'exercice 1, étape 4, suivi de ".database.windows.net". Modifiez
l'authentification à l'authentification SQL Server et entrez le nom d'utilisateur
("sqladmin") et le mot de passe ("Password_1") pour le serveur de base de données.
Sélectionnez Northwind sous Sélectionner ou entrez un nom de base de données, puis
cliquez sur OK.
Définition des propriétés de connexion
11- Sélectionnez Non, exclure les données sensibles de la chaîne de connexion. (Si vous
sélectionnez cette option, le mot de passe de la base de données sera exclu du fichier
Web.config du projet.) Cliquez ensuite sur Suivant.

Définition des propriétés de la chaîne de connexion


12- Sélectionnez Entity Framework 6.x et cliquez sur Suivant.
Spécification de la version Entity Framework

13- Développez le nœud "Tables" et cochez la case dbo. Cela permettra d'accéder à
toutes les tables de la base de données via le modèle Entity Framework. Puis cliquez
sur Terminer.

Spécification des tables à inclure dans le modèle


14- Confirmez que OrdersModel.edmx est ajouté au projet et que le modèle de données
est représenté ci-dessous.
Le modèle de données OrdersModel
15- Il est maintenant temps d'écrire du code pour accéder au modèle de données. Dans
l'Explorateur de solutions, cliquez avec le bouton droit sur le dossier "Modèles" et
sélectionnez Ajouter -> Classe ... pour ajouter un fichier de classe au dossier. Tapez
"OrderInformation.cs" (sans les guillemets) dans la zone Nom et puis cliquez sur OK.

Ajout de la classe OrderInformation


16- Remplacez la classe OrderInformation vide par les définitions de classe suivantes et
notez que vous rendez les classes publiques plutôt que privées. Le but de ces classes
est de modéliser les données pour les clients, les produits et les commandes.

public class OrderInformation

public int OrderId { get; set; }

public string CustomerId { get; set; }

public Nullable<int> EmployeeId { get; set; }

public string EmployeeName { get; set; }

public Nullable<System.DateTime> OrderDate { get; set; }

public Nullable<System.DateTime> RequiredDate { get; set; }

public Nullable<System.DateTime> ShippedDate { get; set; }

public Nullable<int> ShipVia { get; set; }

public Nullable<decimal> Freight { get; set; }

public string ShipName { get; set; }

public string ShipAddress { get; set; }

public string ShipCity { get; set; }

public string ShipRegion { get; set; }

public string ShipPostalCode { get; set; }

public string ShipCountry { get; set; }

public List<OrderDetailInformation> OrderDetails { get; set; }

public CustomerInformation Customer { get; set; }

public class CustomerInformation

public string CustomerId { get; set; }

public string CompanyName { get; set; }


public string ContactName { get; set; }

public string ContactTitle { get; set; }

public string Address { get; set; }

public string City { get; set; }

public string Region { get; set; }

public string PostalCode { get; set; }

public string Country { get; set; }

public string Phone { get; set; }

public string Fax { get; set; }

public class OrderDetailInformation

public int OrderId { get; set; }

public int ProductId { get; set; }

public decimal UnitPrice { get; set; }

public short Quantity { get; set; }

public float Discount { get; set; }

public ProductInformation Product { get; set; }

public class ProductInformation

public int ProductId { get; set; }

public string ProductName { get; set; }

public Nullable<int> SupplierId { get; set; }

public Nullable<int> CategoryId { get; set; }


public string QuantityPerUnit { get; set; }

public Nullable<decimal> UnitPrice { get; set; }

public Nullable<short> UnitsInStock { get; set; }

public Nullable<short> UnitsOnOrder { get; set; }

public Nullable<short> ReorderLevel { get; set; }

public bool Discontinued { get; set; }

}
17- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet et utilisez la
commande Ajouter -> Nouveau dossier pour ajouter un dossier nommé «Assistants» à
la racine du projet.

18- Cliquez avec le bouton droit sur le dossier "Helpers" et utilisez la commande Add ->
Class ... pour ajouter un fichier de classe nommé OrderHelper.cs. Remplacez ensuite
le contenu du fichier par les instructions ci-dessous. Les méthodes de la classe
OrderHelper permettent d'accéder aux données de commande via le modèle de
données Entity Framework:

using OrderViewServices.Models;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

namespace OrderViewServices.Helpers

public static class OrderHelper

public static string CreateConnectionString()

string userName =
(string)System.Web.HttpContext.Current.Cache["CurrentUser"];
string password = "Password_1";

if (string.IsNullOrEmpty(userName))

userName = "sqladmin";

password = "Password_1";

string serverName = "database_server_name";

return string.Format("data source={0}.database.windows.net;initial


catalog=Northwind;user
id={1};password={2};MultipleActiveResultSets=True;App=EntityFramework",
serverName, userName, password);

public static List<OrderInformation> GetOrders()

List<OrderInformation> orders = new List<OrderInformation>();

using (Data.NorthwindEntities entities = new


Data.NorthwindEntities())

entities.Database.Connection.ConnectionString =
CreateConnectionString();

entities.Database.Connection.Open();

try

foreach (var result in entities.Orders.OrderByDescending(o


=> o.OrderDate).Take(20))
{

orders.Add(result.ToOrderInformation());

catch (System.Data.Entity.Infrastructure.DbUpdateException ex)

finally

entities.Database.Connection.Close();

return orders;

public static OrderInformation GetOrder(int orderId)

OrderInformation order = null;

using (Data.NorthwindEntities entities = new


Data.NorthwindEntities())

entities.Database.Connection.ConnectionString =
CreateConnectionString();

entities.Database.Connection.Open();

try
{

var result = entities.Orders.Where(w => w.OrderID ==


orderId).FirstOrDefault();

if (result != null)

order = result.ToOrderInformation();

catch (System.Data.Entity.Infrastructure.DbUpdateException ex)

finally

entities.Database.Connection.Close();

return order;

19- Recherchez la méthode CreateConnectionString près du haut du fichier et remplacez


database_server_name sur la ligne 22 par le nom que vous avez affecté au serveur de
base de données dans l'exercice 1, étape 4.
20- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet et utilisez la
commande Ajouter -> Nouveau dossier pour ajouter un dossier nommé "Extensions" à
la racine du projet.
21- Cliquez avec le bouton droit sur le dossier "Extensions" et utilisez la commande Ajouter
-> Classe ... pour ajouter un fichier de classe nommé ListExtensions.cs. Remplacez
ensuite le contenu du fichier par les instructions suivantes:

using OrderViewServices.Models;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

namespace OrderViewServices

public static class ListExtensions

public static OrderInformation ToOrderInformation(this Data.Order


order)

return new OrderInformation()

Customer = order.Customer.ToCustomerInformation(),

OrderDetails =
order.Order_Details.ToOrderDetailInformationList(),

CustomerId = order.CustomerID,

EmployeeId = order.EmployeeID,

EmployeeName = order.EmployeeName,

Freight = order.Freight,

OrderDate = order.OrderDate,

OrderId = order.OrderID,
RequiredDate = order.RequiredDate,

ShipAddress = order.ShipAddress,

ShipCity = order.ShipCity,

ShipCountry = order.ShipCountry,

ShipName = order.ShipName,

ShippedDate = order.ShippedDate,

ShipPostalCode = order.ShipPostalCode,

ShipRegion = order.ShipRegion,

ShipVia = order.ShipVia,

};

private static List<OrderDetailInformation>


ToOrderDetailInformationList(this ICollection<Data.Order_Detail> orderDetails)

return (from detail in orderDetails select


detail.ToOrderDetailInformation()).ToList();

public static OrderDetailInformation ToOrderDetailInformation(this


Data.Order_Detail orderDetail)

return new OrderDetailInformation()

Discount = orderDetail.Discount,

OrderId = orderDetail.OrderID,

ProductId = orderDetail.ProductID,

Quantity = orderDetail.Quantity,
UnitPrice = orderDetail.UnitPrice,

Product = orderDetail.Product.ToProductInformation(),

};

public static CustomerInformation ToCustomerInformation(this


Data.Customer customer)

return new CustomerInformation()

Address = customer.Address,

City = customer.City,

CompanyName = customer.CompanyName,

ContactName = customer.ContactName,

ContactTitle = customer.ContactTitle,

Country = customer.Country,

CustomerId = customer.CustomerID,

Fax = customer.Fax,

Phone = customer.Phone,

PostalCode = customer.PostalCode,

Region = customer.Region,

};

public static ProductInformation ToProductInformation(this


Data.Product product)
{

return new ProductInformation()

CategoryId = product.CategoryID,

Discontinued = product.Discontinued,

ProductId = product.ProductID,

ProductName = product.ProductName,

QuantityPerUnit = product.QuantityPerUnit,

ReorderLevel = product.ReorderLevel,

SupplierId = product.SupplierID,

UnitPrice = product.UnitPrice,

UnitsInStock = product.UnitsInStock,

UnitsOnOrder = product.UnitsOnOrder,

};

22- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le dossier
"Contrôleurs" et sélectionnez Ajouter -> Contrôleur ....
23- Sélectionnez Web API 2 Controller - Empty et cliquez sur Add. Nommez le contrôleur
"OrdersController" et ajoutez-le au projet.
Ajouter un nouveau contrôleur
24- Ajoutez l'instruction using suivante en haut du fichier:
using OrderViewServices.Models;
25- Ajoutez les méthodes de contrôleur API suivantes à la classe OrdersController:

public IEnumerable<OrderInformation> GetOrders()

return Helpers.OrderHelper.GetOrders();

public OrderInformation Get(int id)

return Helpers.OrderHelper.GetOrder(id);

public IHttpActionResult Post(string value)

System.Web.HttpContext.Current.Cache["CurrentUser"] = value;

return Created("CurrentUser", value);


}
26- Vous pouvez utiliser votre navigateur pour tester l'application API en appelant des
méthodes et en voyant ce qui est renvoyé. Utilisez la commande Déboguer de Visual
Studio -> Démarrer sans déboguer (ou appuyez simplement sur Ctrl + F5) pour lancer
l'application dans votre navigateur. Au départ, vous verrez une erreur 403 car aucune
méthode n'a été spécifiée. Mais maintenant, ajoutez "/ api / Orders" à l'URL dans la
barre d'adresse du navigateur et appuyez sur Entrée. Cela appellera la méthode
GetOrders dans la classe OrdersController. Confirmez qu'un tableau d'objets JSON
représentant des commandes est renvoyé:

JSON renvoyé par la méthode GetOrders


27- L'étape suivante consiste à déployer l'application sur le cloud. Visual Studio le rend
facile. (Rappelez-vous cet Hôte dans la boîte de nuage que vous avez vérifié au début
de cet exercice?) Commencez par un clic droit sur le projet dans l'Explorateur de
solutions et en sélectionnant Publier ... dans le menu contextuel. Dans la boîte de
dialogue qui suit, assurez-vous que Web Deploy est sélectionné comme méthode de
publication, puis cliquez sur le bouton Publier.

Web Deploy est une fonctionnalité impressionnante de Visual Studio qui vous permet
de publier des applications sur le cloud sans avoir à transférer manuellement un tas de
fichiers. De plus, Web Deploy ne publie que les fichiers qui ont été modifiés, donc si
vous avez un projet volumineux avec des milliers de fichiers et n'en changez qu'un ou
deux, la republication ne prend presque plus de temps. Web Deploy fonctionne
également avec de nombreux services d'hébergement tiers tels que GoDaddy.
Publication de l'application API
28- Après quelques instants, l'application apparaîtra dans une fenêtre de navigateur. Notez
l'URL dans la barre d'adresse. Vous aurez besoin de cette URL dans l'exercice suivant,
alors copiez-la dans votre éditeur de texte préféré où vous pouvez facilement le
récupérer. L'application n'est plus en cours d'exécution localement; C'est sur le Web,
où il est accessible aux applications et autres services.

L'application API publiée

Maintenant que vous disposez d'un service Web permettant d'accéder à la base de
données SQL Azure que vous avez créée, l'étape suivante consiste à écrire une
application qui l'utilise.

Exercice 4: Créer un client UWP


Un service Web doté d'une interface REST comme l'application API Azure que vous
avez déployée lors de l'exercice précédent peut être appelé à partir de pratiquement
n'importe quel type d'application. Dans cet exercice, vous allez écrire une application
Universal Windows Platform ou UWP pour parler à l'application API. La beauté des
applications UWP réside dans le fait qu'elles fonctionnent sur divers périphériques
Windows, y compris des PC, des tablettes, des téléphones et même sur Xbox One.
L'application que vous allez écrire vous permet de voir les commandes pour les
vendeurs Northwind ainsi que la commande et les détails du client.

1- Pour créer et exécuter des applications UWP sur un ordinateur Windows 10, vous
devez activer le mode développeur sur l'appareil. Pour vous assurer que le mode
développeur est activé, cliquez sur le bouton Windows (également appelé bouton
Démarrer) dans le coin inférieur gauche du bureau. Sélectionnez ensuite
Paramètres dans le menu et cliquez sur Mise à jour et sécurité dans la boîte de
dialogue Paramètres. Maintenant, cliquez sur Pour les développeurs sur la gauche
et sélectionnez le mode Développeur sur la droite, comme indiqué ci-dessous.

Activation du mode développeur


2- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur la solution
"OrderViewServices" (la solution, pas le projet) et sélectionnez Ajouter -> Nouveau
projet. Sélectionnez Blank App (Universal Windows) comme type de projet et
nommez le projet "OrderView". Puis cliquez sur OK. Lorsque vous êtes invité à
choisir les versions de la plateforme, acceptez les valeurs par défaut.
Ajouter un projet UWP
3- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le nouveau projet
"OrderView" et sélectionnez Définir comme projet de démarrage dans le menu
contextuel.
4- Cliquez avec le bouton droit sur le projet "OrderView" à nouveau et utilisez la
commande Ajouter -> Nouveau dossier pour ajouter un dossier nommé "Common"
à la racine du projet. Cliquez avec le bouton droit sur le dossier "Common" et
utilisez la commande Add -> Class ... pour ajouter un fichier de classe nommé
BindableBase.cs. Remplacez ensuite le contenu du fichier par les instructions
suivantes:

using System;

using System.ComponentModel;

using System.Runtime.CompilerServices;

namespace OrderView.Common

/// <summary>

/// Implementation of <see cref="INotifyPropertyChanged"/> to simplify


models.
/// </summary>

public abstract class BindableBase : INotifyPropertyChanged

/// <summary>

/// Multicast event for property change notifications.

/// </summary>

public event PropertyChangedEventHandler PropertyChanged;

/// <summary>

/// Checks if a property already matches a desired value. Sets the


property and

/// notifies listeners only when necessary.

/// </summary>

/// <typeparam name="T">Type of the property.</typeparam>

/// <param name="storage">Reference to a property with both getter and


setter.</param>

/// <param name="value">Desired value for the property.</param>

/// <param name="propertyName">Name of the property used to notify


listeners. This

/// value is optional and can be provided automatically when invoked


from compilers that

/// support CallerMemberName.</param>

/// <returns>True if the value was changed, false if the existing


value matched the

/// desired value.</returns>

protected bool SetProperty<T>(ref T storage, T value,


[CallerMemberName] String propertyName = null)

if (object.Equals(storage, value)) return false;


storage = value;

this.OnPropertyChanged(propertyName);

return true;

/// <summary>

/// Notifies listeners that a property value has changed.

/// </summary>

/// <param name="propertyName">Name of the property used to notify


listeners. This

/// value is optional and can be provided automatically when invoked


from compilers

/// that support <see cref="CallerMemberNameAttribute"/>.</param>

protected void OnPropertyChanged([CallerMemberName] string


propertyName = null)

var eventHandler = this.PropertyChanged;

if (eventHandler != null)

eventHandler(this, new
PropertyChangedEventArgs(propertyName));

5- Cliquez avec le bouton droit sur le projet "OrderView" et utilisez la commande


Ajouter -> Nouveau dossier pour ajouter un dossier nommé "Modèles" à la racine
du projet. Cliquez avec le bouton droit sur le dossier "Modèles" et utilisez la
commande Ajouter -> Classe ... pour ajouter un fichier de classe nommé
OrderInformation.cs. Remplacez ensuite la classe OrderInformation vide par les
définitions de classe suivantes:

public class SalespersonInformation

public string Label { get; set; }

public string UserName { get; set; }

public class ProductInformation

public int ProductId { get; set; }

public string ProductName { get; set; }

public Nullable<int> SupplierId { get; set; }

public Nullable<int> CategoryId { get; set; }

public string QuantityPerUnit { get; set; }

public Nullable<decimal> UnitPrice { get; set; }

public Nullable<short> UnitsInStock { get; set; }

public Nullable<short> UnitsOnOrder { get; set; }

public Nullable<short> ReorderLevel { get; set; }

public bool Discontinued { get; set; }

public class SuggestionInformation

public string odatacontext { get; set; }

public Value[] value { get; set; }

}
public class Value

public float searchscore { get; set; }

public string CustomerID { get; set; }

public string CompanyName { get; set; }

public class CustomerInformation

public string CustomerId { get; set; }

public string CompanyName { get; set; }

public string ContactName { get; set; }

public string ContactTitle { get; set; }

public string Address { get; set; }

public string City { get; set; }

public string Region { get; set; }

public string PostalCode { get; set; }

public string Country { get; set; }

public string Phone { get; set; }

public string Fax { get; set; }

public class OrderInformation

public int OrderId { get; set; }

public string CustomerId { get; set; }

public Nullable<int> EmployeeId { get; set; }


public string EmployeeName { get; set; }

public Nullable<System.DateTime> OrderDate { get; set; }

public Nullable<System.DateTime> RequiredDate { get; set; }

public Nullable<System.DateTime> ShippedDate { get; set; }

public Nullable<int> ShipVia { get; set; }

public Nullable<decimal> Freight { get; set; }

public string ShipName { get; set; }

public string ShipAddress { get; set; }

public string ShipCity { get; set; }

public string ShipRegion { get; set; }

public string ShipPostalCode { get; set; }

public string ShipCountry { get; set; }

public List<OrderDetailInformation> OrderDetails { get; set; }

public CustomerInformation Customer { get; set; }

public class OrderDetailInformation

public int OrderId { get; set; }

public int ProductId { get; set; }

public decimal UnitPrice { get; set; }

public short Quantity { get; set; }

public float Discount { get; set; }

public ProductInformation Product { get; set; }

}
6- Cliquez avec le bouton droit sur le dossier "Modèles" à nouveau et utilisez la
commande Ajouter -> Classe ... pour ajouter un fichier de classe nommé
MainViewModel.cs. Remplacez le contenu du fichier par les instructions suivantes
et observez que la classe MainViewModel implémente la classe BindableBase
créée précédemment:

using System;

using System.Collections.Generic;

using System.Collections.ObjectModel;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using OrderView.Models;

namespace OrderView.Models

public class MainViewModel : Common.BindableBase

private ObservableCollection<OrderInformation> _currentOrders;

public ObservableCollection<OrderInformation> CurrentOrders

get { return this._currentOrders; }

set { this.SetProperty(ref this._currentOrders, value); }

private List<SalespersonInformation> _salespersons;

public List<SalespersonInformation> Salespersons

get { return this._salespersons; }

set { this.SetProperty(ref this._salespersons, value); }


}

private SalespersonInformation _selectedSalesperson;

public SalespersonInformation SelectedSalesperson

get { return this._selectedSalesperson; }

set { this.SetProperty(ref this._selectedSalesperson, value); }

private ObservableCollection<string> _searchSuggestions;

public ObservableCollection<string> SearchSuggestions

get { return this._searchSuggestions; }

set { this.SetProperty(ref this._searchSuggestions, value); }

private bool _isLoading;

public bool IsLoading

get { return this._isLoading; }

set { this.SetProperty(ref this._isLoading, value); }

public const string OrderApiUrl = "";


public void Initialize()

this.CurrentOrders = new ObservableCollection<OrderInformation>();

this.SearchSuggestions = new ObservableCollection<string>();

this.Salespersons = Helpers.OrderHelper.GetSalespersons();

this.SelectedSalesperson = this.Salespersons.FirstOrDefault();

public void FilterByCustomer(string selectedCustomer)

LoadOrdersAsync(selectedCustomer);

public void ChangeUser(SalespersonInformation salesperson)

this.SelectedSalesperson = salesperson;

LoadOrdersAsync();

public async void LoadOrdersAsync(string filter)

this.IsLoading = true;

await
Helpers.OrderHelper.SetUserAsync(this.SelectedSalesperson.UserName);

this.CurrentOrders.Clear();

var orders = await Helpers.OrderHelper.GetOrdersAsync(filter);


foreach (var order in orders)

this.CurrentOrders.Add(order);

this.IsLoading = false;

public async void LoadOrdersAsync()

this.IsLoading = true;

await
Helpers.OrderHelper.SetUserAsync(this.SelectedSalesperson.UserName);

this.CurrentOrders.Clear();

var orders = await Helpers.OrderHelper.GetOrdersAsync();

foreach (var order in orders)

this.CurrentOrders.Add(order);

this.IsLoading = false;

}
7- Cliquez avec le bouton droit sur le projet "OrderView" et utilisez la commande
Ajouter -> Nouveau dossier pour ajouter un dossier nommé "Assistants" à la racine
du projet. Ensuite, cliquez avec le bouton droit sur le dossier "Helpers" et utilisez la
commande Add -> Class ... ajoutez un fichier de classe nommé OrderHelper.cs.
Remplacez le contenu du fichier par les instructions suivantes:

using OrderView.Models;

using System;

using System.Collections.Generic;

using System.Linq;

using System.Net.Http;

using System.Runtime.Serialization.Json;

using System.Text;

using System.Threading.Tasks;

namespace OrderView.Helpers

public static class OrderHelper

public const string OrderApiUrl = "order_api_url";

public static List<SalespersonInformation> GetSalespersons()

List<SalespersonInformation> salespersons = new


List<SalespersonInformation>();

salespersons.Add(new SalespersonInformation() { Label = "Janet


(Sales Manager)", UserName = "Janet" });

salespersons.Add(new SalespersonInformation() { Label = "Andrew


(Salesperson)", UserName = "Andrew" });

salespersons.Add(new SalespersonInformation() { Label = "Nancy


(Salesperson)", UserName = "Nancy" });
return salespersons;

public static async Task<List<OrderInformation>> GetOrdersAsync(string


filter)

List<OrderInformation> orders = new List<OrderInformation>();

Uri requestUri = new Uri(OrderApiUrl + "/api/Orders");

HttpClient client = new System.Net.Http.HttpClient();

HttpResponseMessage response = await client.GetAsync(requestUri);

var stream = await response.Content.ReadAsStreamAsync();

stream.Position = 0;

var settings = new DataContractJsonSerializerSettings {


DateTimeFormat = new System.Runtime.Serialization.DateTimeFormat("yyyy-MM-
dd'T'HH:mm:ss") };

DataContractJsonSerializer ser = new


DataContractJsonSerializer(typeof(List<OrderInformation>), settings);

orders = (List<OrderInformation>)ser.ReadObject(stream);

return orders.Where(w =>


w.Customer.CompanyName.Equals(filter)).ToList();

public static async Task<List<OrderInformation>> GetOrdersAsync()

{
List<OrderInformation> orders = new List<OrderInformation>();

Uri requestUri = new Uri(OrderApiUrl + "api/Orders");

HttpClient client = new System.Net.Http.HttpClient();

HttpResponseMessage response = await client.GetAsync(requestUri);

var stream = await response.Content.ReadAsStreamAsync();

stream.Position = 0;

var settings = new DataContractJsonSerializerSettings {


DateTimeFormat = new System.Runtime.Serialization.DateTimeFormat("yyyy-MM-
dd'T'HH:mm:ss") };

DataContractJsonSerializer ser = new


DataContractJsonSerializer(typeof(List<OrderInformation>), settings);

orders = (List<OrderInformation>)ser.ReadObject(stream);

return orders;

public static async Task<bool> SetUserAsync(string userName)

Uri requestUri = new Uri(OrderApiUrl +


$"/api/Orders?value={userName}");

var client = new System.Net.Http.HttpClient();

HttpResponseMessage respon = await client.PostAsync(requestUri,


null);
return respon.IsSuccessStatusCode;

}
8- Remplacez order_api_url sur la ligne 14 avec l'URL de votre application API - celle
que vous avez copiée dans votre éditeur de texte préféré à la fin de l'exercice 3.

9- Ouvrez MainPage.xaml et remplacez l'élément Grid vide par le balisage suivant:

<Page.Resources>

<Style x:Key="SmallerLabelStyle" TargetType="TextBlock">

<Setter Property="FontSize" Value="12"/>

<Setter Property="FontWeight" Value="Light"/>

</Style>

</Page.Resources>

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

<Grid.RowDefinitions>

<RowDefinition Height="Auto"/>

<RowDefinition/>

</Grid.RowDefinitions>

<ComboBox VerticalAlignment="Center" HorizontalAlignment="Left"


ItemsSource="{Binding Salespersons}" SelectedItem="{Binding
SelectedSalesperson, Mode=TwoWay}" SelectionChanged="OnEmployeeChanged"
Width="240" Margin="40,40,40,0">

<ComboBox.Header>

<TextBlock Margin="0,0,0,-5" FontSize="12" FontWeight="Light"


Text="SELECT SALESPERSON"/>

</ComboBox.Header>

<ComboBox.ItemTemplate>
<DataTemplate>

<TextBlock FontWeight="Light" Text="{Binding Label}" />

</DataTemplate>

</ComboBox.ItemTemplate>

</ComboBox>

<ScrollViewer Grid.Row="1" Margin="40">

<GridView ItemsSource="{Binding CurrentOrders}">

<GridView.ItemTemplate>

<DataTemplate>

<Grid Margin="10" Width="300" Tapped="OnShowCustomer">

<FlyoutBase.AttachedFlyout>

<Flyout Placement="Top" >

<Grid>

<StackPanel Margin="10">

<TextBlock FontWeight="SemiBold"
Text="{Binding Customer.CompanyName}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.Address}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.City}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.PostalCode}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.Country}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.Phone}" />

<TextBlock Style="{StaticResource
SmallerLabelStyle}" Text="{Binding Customer.Fax}" />
</StackPanel>

</Grid>

</Flyout>

</FlyoutBase.AttachedFlyout>

<Grid.ColumnDefinitions>

<ColumnDefinition Width="Auto"/>

<ColumnDefinition />

</Grid.ColumnDefinitions>

<TextBlock Margin="0,0,10,0" VerticalAlignment="Top"


HorizontalAlignment="Left" FontSize="36" Text=" " FontFamily="{ThemeResource
SymbolThemeFontFamily}"/>

<StackPanel Grid.Column="1">

<TextBlock Style="{ThemeResource
CaptionTextBlockStyle}" Text="CUSTOMER"/>

<TextBlock FontWeight="SemiBold" Text="{Binding


Customer.CompanyName}"/>

<TextBlock Margin="0,10,0,0" Style="{ThemeResource


CaptionTextBlockStyle}" Text="SALESPERSON"/>

<TextBlock FontWeight="SemiBold" Text="{Binding


EmployeeName}"/>

<TextBlock Margin="0,10,0,0" Style="{ThemeResource


CaptionTextBlockStyle}" Text="ORDER NO"/>

<TextBlock FontWeight="SemiBold" Text="{Binding


OrderId}"/>
<TextBlock Margin="0,10,0,0" Style="{ThemeResource
CaptionTextBlockStyle}" Text="ORDER DATE"/>

<TextBlock FontWeight="SemiBold" Text="{Binding


OrderDate}"/>

<TextBlock Margin="0,10,0,0" Style="{ThemeResource


CaptionTextBlockStyle}">

<Run Text="TOTAL ITEMS"/>

<Run FontWeight="SemiBold" Text="{Binding


OrderDetails.Count}"/>

</TextBlock>

</StackPanel>

</Grid>

</DataTemplate>

</GridView.ItemTemplate>

<GridView.ItemsPanel>

<ItemsPanelTemplate>

<ItemsWrapGrid Orientation="Horizontal"/>

</ItemsPanelTemplate>

</GridView.ItemsPanel>

</GridView>

</ScrollViewer>

<ProgressRing Grid.Row="1" VerticalAlignment="Center"


HorizontalAlignment="Center" Width="160" Height="160" IsActive="{Binding
IsLoading}" IsEnabled="{Binding IsLoading}"/>

</Grid>
Le balisage que vous venez d'insérer est Extensible Application Markup Language ou
XAML. XAML est un langage créé par Microsoft pour créer des interfaces utilisateur. Il a été
créé à l'origine pour WPF, mais a depuis été réutilisé pour les applications Windows
universelles. Combiné avec Xamarin Forms, il peut même être utilisé pour créer des
interfaces utilisateur pour iOS et Android. C'est un langage extrêmement expressif qui
bénéficie du support des concepteurs dans Visual Studio et d'autres outils populaires.
10- Maintenant, ouvrez MainPage.xaml.cs et ajoutez l'instruction using suivante à
celles déjà en haut de la page:

using OrderView.Models;

11- Toujours dans MainPage.xaml.cs, remplacez tout dans la classe MainPage par le
code suivant:

MainViewModel ViewModel = new MainViewModel();

public MainPage()

this.InitializeComponent();

this.Loaded += MainPage_Loaded;

private void MainPage_Loaded(object sender, RoutedEventArgs e)

this.ViewModel.Initialize();

this.DataContext = this.ViewModel;

private void OnEmployeeChanged(object sender, SelectionChangedEventArgs e)

if (this.ViewModel.SelectedSalesperson != null)
this.ViewModel.ChangeUser(this.ViewModel.SelectedSalesperson);

}
private void OnShowCustomer(object sender, TappedRoutedEventArgs e)

FlyoutBase.ShowAttachedFlyout(sender as FrameworkElement);

private void OnSuggestionChosen(AutoSuggestBox sender,


AutoSuggestBoxSuggestionChosenEventArgs args)

this.ViewModel.FilterByCustomer((string)args.SelectedItem);

12- Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le projet
"OrderView" et sélectionnez Déployer dans le menu contextuel. Cela permettra de
déployer l'application sur votre ordinateur local et de l'activer même si cela fait
partie d'une solution à plate-forme mixte.
13- Maintenant, utilisez la commande Déboguer de Visual Studio -> Démarrer sans
déboguer (ou appuyez sur Ctrl + F5) pour lancer l'application. Confirmez qu'il
montre une liste d'ordres pour Janet:

Exécution de l'application UWP terminée


14- Sélectionnez Andrew dans la liste SALESPERSON et attendez que les
commandes soient actualisées. En quoi ce que voit Andrew diffère-t-il de ce que
Janet voit, le cas échéant?
15- Cliquez sur une commande et confirmez qu'une fenêtre contextuelle apparaît avec
des informations sur le client qui a passé la commande, y compris le numéro de
téléphone du client.

Affichage des informations sur le client ayant passé une commande


16- Fermez l'application et revenez à Visual Studio.

Lorsque vous avez initialisé la base de données SQL Azure dans l'exercice 2, trois
utilisateurs ont été créés: Janet, Andrew et Nancy. Janet est un directeur des
ventes et devrait avoir la permission de voir toutes les commandes, mais Andrew et
Nancy sont des vendeurs et ne devraient pouvoir voir que les commandes qu'ils ont
créées. À l'heure actuelle, tous les utilisateurs voient toutes les commandes. En
outre, vous pourriez préférer masquer les numéros de téléphone des clients, car
ceux-ci pourraient être considérés comme des informations sensibles.
Certes, les numéros de téléphone ne sont généralement pas considérés comme
des informations sensibles. Mais les numéros de sécurité sociale et les identifiants
de permis de conduire et autres formes d'identification gouvernementale sont, et
une fois que vous apprenez comment cacher un champ, vous pouvez l'appliquer à
n'importe quel champ de la base de données.
Vous pouvez modifier l'application UWP pour filtrer ce que les utilisateurs voient en
fonction de leur identité, mais il est préférable de filtrer ces données sur l'arrière-
plan. De cette façon, les données ne sont même pas transmises depuis le serveur
si elles ne sont pas nécessaires. C'est là qu'intervient la sécurité de la base de
données SQL.

Exercice 5: Appliquer les autorisations et les masques de données

Pour limiter les commandes qu'un commercial peut voir, vous pouvez tirer parti de
la sécurité au niveau des lignes dans Azure SQL Database. Et pour masquer les
champs contenant des informations sensibles, vous pouvez utiliser le masquage
dynamique des données. Dans cet exercice, vous utiliserez les deux pour vous
assurer que seule Janet peut voir les commandes des autres et que les numéros
de téléphone des clients sont cachés à tout le monde.
1- Retournez à l'Explorateur d'objets SQL Server de Visual Studio. Cliquez avec le
bouton droit sur la base de données Northwind et sélectionnez Nouvelle requête ...
dans le menu contextuel.

Démarrer une nouvelle requête


2- Utilisez la commande Edition -> Insérer un fichier en tant que texte ... pour ouvrir le
fichier nommé NORTHWIND security.sql situé dans le dossier "Resources" de ce
TP. Puis cliquez avec le bouton droit n'importe où dans le script et sélectionnez
Exécuter. Ce script active la sécurité au niveau de la ligne sur la table Commandes
et empêche efficacement toute personne sauf Janet de voir les commandes
d'autres vendeurs.
3- Utilisons maintenant le masquage dynamique des données pour masquer les
numéros de téléphone. Revenez au portail Azure et ouvrez la base de données
Northwind.

Ouverture de la base de données Northwind


4- Dans la lame "Northwind", cliquez sur Masquage dynamique des données dans le
menu à gauche.
Accès aux paramètres de masquage dynamique des données
5- Cliquez sur le bouton Ajouter un masque pour la colonne Téléphone dans la table
Clients. Un nouveau masque nommé "dbo_Customers_Phone" est créé et affecté
d'une valeur par défaut "0, xxxx, 01-01-1900".
Appliquer un masque de données dynamique
6- Ce masque ferait réellement ce que nous voulons qu'il fasse. Cependant, cela
donne l'impression que le champ contient une date. Changeons-le pour quelque
chose de plus approprié. Cliquez sur dbo_Customers_Phone. Dans la palette
«Modifier la règle de masquage», remplacez Format de champ de masquage par
Chaîne personnalisée et entrez «xxxxxxx» (sans les guillemets) dans la zone
Chaîne de remplissage. Ensuite, cliquez sur Mettre à jour dans la lame "Modifier la
règle de masquage" et sur Enregistrer dans la lame "Northwind".

Personnaliser le masque de données

7- Revenez à Visual Studio et utilisez la commande Déboguer -> Démarrer sans


déboguer (ou appuyez sur Ctrl + F5) pour lancer l'application OrderView.
Lorsque l'application se charge, Janet voit les commandes pour tous les employés.
Maintenant, sélectionnez Andrew dans la liste SALESPERSON et confirmez
qu'Andrew ne voit que des ordres pour Andrew.

Sécurité au niveau de la ligne en action


8- Pour voir le masquage dynamique des données en action, cliquez sur une
commande et confirmez que le numéro de téléphone du client s'affiche dans la
fenêtre contextuelle. (Le numéro sur la dernière ligne est un numéro de fax, pas un
numéro de voix.)

Masquage dynamique des données en action


9- Fermez l'application et revenez à Visual Studio.
Observez que vous n'avez pas à modifier l'application pour adopter ces mesures.
Ils ont été entièrement implémentés sur le back-end à l'aide des fonctionnalités de
sécurité disponibles dans Azure SQL Database.

Exercice 6: Supprimer le groupe de ressources

Dans cet exercice, vous allez supprimer le groupe de ressources créé dans
l'exercice 1 lorsque vous avez créé la base de données SQL. La suppression du
groupe de ressources supprime tout ce qui s'y trouve, y compris la base de
données SQL, le serveur de base de données, le service d'application et d'autres
ressources créées au cours de ce TP, et évite que des frais supplémentaires soient
engagés.

1- Dans le portail Azure, ouvrez la lame pour le groupe de ressources


"SQLDatabaseResourceGroup". Puis cliquez sur le bouton Supprimer en haut de la
lame.
Suppression du groupe de ressources
2- Pour des raisons de sécurité, vous devez taper le nom du groupe de ressources.
(Une fois supprimé, un groupe de ressources ne peut pas être récupéré.) Tapez le
nom du groupe de ressources. Puis cliquez sur le bouton Supprimer pour
supprimer toutes les traces de ce laboratoire de votre compte.
Après quelques minutes, le groupe de ressources et toutes ses ressources seront
supprimés.
Azure SQL Database : utilisez Visual Studio
Code pour vous connecter et interroger des
données
‎Dans cet article

1. Composants requis
2. Configurer Visual Studio Code
3. Informations de connexion SQL Server
4. Définition du mode de langage sur SQL
5. Connectez-vous à votre base de données
6. Données de requête
7. Insertion des données
8. Mettre à jour des données
9. Suppression de données

Visual Studio Code est un éditeur de code graphique pour Linux, macOS et Windows
qui prend en charge les extensions, y compris l’extension mssql pour l’exécution de
requêtes dans Microsoft SQL Server, Azure SQL Database et SQL Data Warehouse. Ce
guide de démarrage rapide indique comment utiliser Visual Studio Code pour se
connecter à une base de données SQL Azure, puis utiliser les instructions Transact-
SQL pour interroger, insérer, mettre à jour et supprimer des données dans la base de
données.

Composants requis
Avant de commencer, assurez-vous que vous avez installé la toute dernière version
de Visual Studio Code et chargé l’extension mssql.

Configurer Visual Studio Code

Mac OS

Pour macOS, vous devez installer OpenSSL qui est un composant requis pour DotNet
Core utilisé par l’extension mssql. Ouvrez votre terminal et entrez les commandes ci-
après pour installer brew et OpenSSL.
bash Copier
ruby -e "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew update

brew install openssl

mkdir -p /usr/local/lib

ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/

ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

Linux (Ubuntu)

Aucune configuration spéciale nécessaire.

Windows

Aucune configuration spéciale nécessaire.

Informations de connexion SQL Server


Obtenez les informations de connexion requises pour la connexion à la base de
données SQL Azure. Vous aurez besoin du nom du serveur complet, du nom de la
base de données et des informations de connexion dans les procédures suivantes.

1. Connectez-vous au portail Azure.


2. Sélectionnez Bases de données SQL dans le menu de gauche, puis cliquez sur
votre base de données dans la page Bases de données SQL.
3. Sur la page Vue d’ensemble de votre base de données, vérifiez le nom complet du
serveur, comme indiqué dans l’image suivante. Vous pouvez pointer sur le nom du
serveur pour afficher l’option Cliquez pour copier.
4. Si vous avez oublié vos informations de connexion à votre serveur Azure SQL
Database, accédez à la page du serveur SQL Database pour afficher le nom de
l’administrateur du serveur et, si nécessaire, réinitialiser le mot de passe.

Définition du mode de langage sur SQL


Définissez le mode de langage sur SQL dans Visual Studio Code pour activer les
commandes mssql et T-SQL IntelliSense.

1. Ouvrez une nouvelle fenêtre Visual Studio Code.


2. Cliquez sur Texte brut dans le coin inférieur droit de la barre d’état.
3. Dans le menu déroulant Sélectionner un mode de langage qui s’ouvre, tapez SQL,
puis appuyez sur Entrée pour définir le mode de langage sur SQL.

Connectez-vous à votre base de données


Utilisez Visual Studio Code pour établir une connexion à votre serveur Azure SQL
Database.

Important

Avant de poursuivre, assurez-vous que votre serveur et votre base de données sont
prêts, et que vous disposez de vos informations de connexion. Une fois que vous
avez commencé à saisir les informations concernant le profil de connexion, si vous
modifiez le focus à partir de Visual Studio Code, vous devez redémarrer la création
du profil de connexion.

1. Dans VS Code, appuyez sur CTRL+MAJ+P (ou F1) pour ouvrir la Palette de
commandes.
2. Tapez sqlcon, puis appuyez sur ENTRÉE.
3. Appuyez sur ENTRÉE pour sélectionner Créer un profil de connexion. Cela crée un
profil de connexion à votre instance SQL Server.
4. Suivez les invites pour spécifier les propriétés de connexion de ce nouveau profil de
connexion. Après avoir spécifié chaque valeur, appuyez sur ENTRÉE pour continuer.
Paramètre       Valeur suggérée Description 
Le nom doit être similaire à ce qui suit :
**Nom du Nom complet du
mynewserver20170313.database.windows.n
serveur serveur
et.
Nom de la
Nom de la base de données à laquelle se
base de mySampleDatabase
données connecter.
L’authentification SQL est le seul type
Authentificatio
Connexion SQL d’authentification que nous avons configuré
n
dans ce didacticiel.
Compte
Nom Il s’agit du compte que vous avez spécifié
d’administrateur de
d'utilisateur lorsque vous avez créé le serveur.
serveur
Mot de passe de
Mot de passe
votre compte Il s’agit du mot de passe que vous avez spécifié
(connexion
SQL) d’administrateur de lorsque vous avez créé le serveur.
serveur
Enregistrer le
Sélectionnez Oui si vous ne souhaitez pas
mot de passe Oui ou Non
? entrer le mot de passe à chaque fois.
Nom de profil de
connexion, par
Entrez un nom Un nom de profil enregistré permet d’accélérer
pour ce profil exemple votre connexion lors des connexions suivantes.
mySampleDatabas
e

5. Appuyez sur la touche ÉCHAP pour fermer le message d’information qui vous
informe que le profil est créé et connecté.
6. Vérifiez votre connexion dans la barre d’état.
Données de requête
Utilisez le code suivant pour rechercher les 20 premiers produits par catégorie à
l’aide de l’instruction Transact-SQL SELECT.

1. Dans la fenêtre Éditeur, saisissez la requête suivante dans la fenêtre de requête vide :

SQL Copier

SELECT pc.Name as CategoryName, p.name as ProductName

FROM [SalesLT].[ProductCategory] pc

JOIN [SalesLT].[Product] p

ON pc.productcategoryid = p.productcategoryid;

2. Appuyez sur CTRL+MAJ+E pour récupérer des données à partir des tables Product
et ProductCategory.
Insertion des données
Utilisez le code suivant pour insérer un nouveau produit dans la table
SalesLT.Product à l’aide de l’instruction Transact-SQL INSERT.

1. Dans la fenêtre Éditeur, supprimez la requête précédente et saisissez la requête


suivante :

SQL Copier

INSERT INTO [SalesLT].[Product]

( [Name]

, [ProductNumber]

, [Color]

, [ProductCategoryID]

, [StandardCost]

, [ListPrice]

, [SellStartDate]

VALUES

('myNewProduct'

,123456789
,'NewColor'

,1

,100

,100

,GETDATE() );

2. Appuyez sur CTRL+MAJ+E pour insérer une nouvelle ligne dans la table Product.

Mettre à jour des données


Utilisez le code suivant pour mettre à jour le nouveau produit que vous avez ajouté
précédemment à l’aide de l’instruction Transact-SQL UPDATE.

1. Dans la fenêtre Éditeur, supprimez la requête précédente et saisissez la requête


suivante :

SQL Copier

UPDATE [SalesLT].[Product]

SET [ListPrice] = 125

WHERE Name = 'myNewProduct';

2. Appuyez sur CTRL+MAJ+E pour mettre à jour la ligne spécifiée dans la table
Product.

Suppression de données
Utilisez le code suivant pour supprimer le nouveau produit que vous avez ajouté
précédemment à l’aide de l’instruction Transact-SQL DELETE.

1. Dans la fenêtre Éditeur, supprimez la requête précédente et saisissez la requête


suivante :

SQL Copier

DELETE FROM [SalesLT].[Product]

WHERE Name = 'myNewProduct';

2. Appuyez sur CTRL+MAJ+E pour supprimer la ligne spécifiée dans la table Product.
Lab : Créer une application d’API Table
avec .NET et Azure Cosmos DB
Ce guide de démarrage rapide montre comment utiliser .NET et l’API Table d’Azure
Cosmos DB pour créer une application en clonant un exemple à partir de GitHub. Ce
guide de démarrage rapide vous montre également comment créer un compte Azure
Cosmos DB et comment utiliser l’Explorateur de données pour créer des tables et des
entités dans le portail web Azure.

Azure Cosmos DB est le service de base de données multi-modèle de Microsoft


distribué à l’échelle mondiale. Rapidement, vous avez la possibilité de créer et
d’interroger des documents, des paires clé/valeur, et des bases de données orientées
graphe, profitant tous de la distribution à l’échelle mondiale et des capacités de mise à
l’échelle horizontale au cœur d’Azure Cosmos DB.

Création d’un compte de base de données


Vous devez créer un compte d’API Table pour utiliser les kits SDK d’API Table mis à la
disposition générale. Les comptes d’API Table créés pendant la durée de la préversion
ne sont pas pris en charge par les kits SDK mis à la disposition générale.

1. Dans une nouvelle fenêtre du navigateur, connectez-vous au portail Azure.


2. Dans le menu de gauche, cliquez sur Créer une ressource, sur Bases de données,
puis sous Azure Cosmos DB, cliquez sur Créer.
3. Dans la page Nouveau compte, entrez les paramètres pour le nouveau compte
Azure Cosmos DB.
Valeur
Paramètre suggérée Description

ID Entrez un nom Entrez un nom unique pour identifier ce compte


unique Azure Cosmos DB. Étant donné
que documents.azure.com est ajouté à l’ID que
vous fournissez pour créer votre URI, utilisez un
ID unique mais identifiable.

L’ID ne peut contenir que des lettres minuscules,


Valeur
Paramètre suggérée Description

des chiffres et le caractère de trait d’union (-), et


doit comporter entre 3 et 50 caractères.

API table Azure L’API détermine le type de compte à


créer. Azure Cosmos DB fournit cinq API pour
répondre aux besoins de votre application : SQL
(base de données Document), Gremlin (base de
données de graphiques), MongoDB (base de
données Document), Table Azure et Cassandra,
qui nécessitent toutes un compte séparé.

Sélectionnez Table Azure, car ce guide de


démarrage rapide vous permet de créer une table
qui fonctionne avec l’API de table.

En savoir plus sur l’API de table

Abonnement Entrez le même Sélectionnez l’abonnement Azure que vous


nom unique que voulez utiliser pour ce compte Azure Cosmos
celui fourni plus DB.
haut dans ID

Groupe de Création Sélectionnez Créer, puis entrez le nom du


ressources nouveau groupe de ressources pour votre
Entrez ensuite le compte. Pour plus de simplicité, vous pouvez
même nom utiliser le même nom que votre ID.
unique que celui
fourni plus haut
dans ID

Emplacement Sélectionner la Sélectionnez l’emplacement géographique où


région la plus héberger votre compte Azure Cosmos
proche de vos DB. Utilisez l’emplacement le plus proche de
utilisateurs vos utilisateurs, pour leur donner l’accès le plus
rapide possible aux données.

Activer la Laisser vide Ceci crée une version répliquée de votre base de
géoredondance données dans une seconde région
(appairée). Laissez ce champ vide.
Valeur
Paramètre suggérée Description

Épingler au Sélectionnez Cochez cette case pour que votre nouveau


tableau de bord compte de base de données soit ajouté à votre
tableau de bord du portail pour un accès facilité.

4. Cliquez ensuite sur Créer.

5.
6. La création du compte prend quelques minutes. Attendez que le portail affiche la
page Félicitations ! Votre compte Azure Cosmos DB a été créé.
Ajouter une table
Vous pouvez désormais utiliser l’outil Explorateur de données dans le portail Azure pour
créer une base de données et une table.

1. Cliquez sur Explorateur de données > Nouvelle table.

La zone Ajouter une table est affichée à l’extrême droite. Il peut donc être
nécessaire de faire défiler à droite pour l’afficher.
2. Dans la page Ajouter une table, entrez les paramètres de la nouvelle table.
Valeur
Paramètre suggérée Description

ID de la sample- L’ID de votre nouvelle table. Les noms de tables sont


table database soumis aux mêmes exigences de nombre de caractères
que les ID de bases de données. Les noms de base de
données doivent inclure entre 1 et 255 caractères et ne
peuvent pas contenir / \ # ? ni d’espace de fin.

Capacité de Fixe (10 Utilisez la valeur par défaut Fixe (10 Go). Cette valeur
stockage Go) correspond à la capacité de stockage de la base de
données.

Débit 400 unités Changez le débit en indiquant 400 unités de requête par
de requête seconde (RU/s). Si vous souhaitez réduire la latence,
vous pourrez augmenter le débit par la suite.

3. Cliquez sur OK.


4. L’Explorateur de données affiche la nouvelle base de données et la nouvelle table.
5.
Ajouter un exemple de données
Vous pouvez maintenant ajouter des données à votre nouvelle table grâce à
l’Explorateur de données.

1. Dans l’Explorateur de données, développez exemple de table, cliquez sur Entités,


puis cliquez sur Ajouter une entité.

2. À présent, ajoutez des données à la zone de valeur PartitionKey et à la zone de


valeur RowKey, puis cliquez sur Ajouter une entité.
Vous pouvez maintenant ajouter des entités supplémentaires à votre table, éditer
vos entités, ou interroger vos données dans l’Explorateur de données. À partir de
l’Explorateur de données, vous pouvez également faire évoluer votre débit et
ajouter des procédures stockées, des fonctions définies par l’utilisateur, et ajouter à
votre table des déclencheurs.
Clonage de l’exemple d’application
À présent, nous allons cloner une application Table à partir de GitHub, configurer la
chaîne de connexion et l’exécuter. Vous verrez combien il est facile de travailler par
programmation avec des données.

1. Ouvrez une invite de commandes, créez un nouveau dossier nommé git-samples,


puis fermez l’invite de commandes.
md "C:\git-samples"

2. Ouvrez une fenêtre de terminal git comme Git Bash et utilisez la


commande cd pour accéder au nouveau dossier d’installation pour l’exemple
d’application.
cd "C:\git-samples"

3. Exécutez la commande suivante pour cloner l’exemple de référentiel : Cette


commande crée une copie de l’exemple d’application sur votre ordinateur.
git clone https://github.com/Azure-Samples/storage-table-dotnet-getting-
started.git

Ouvrir l’exemple d’application dans Visual Studio


4. Dans Visual Studio, à partir du menu Fichier, choisissez Ouvrir,
puis Projet/Solution.

5. Accédez au dossier où vous avez cloné l’exemple d’application et ouvrez le fichier


TableStorage.sln.
Mise à jour de votre chaîne de connexion
Maintenant, retournez dans le portail Azure afin d’obtenir les informations de votre
chaîne de connexion et de les copier dans l’application. Cette opération permet à votre
application de communiquer avec votre base de données hébergée.

1. Dans le portail Azure, cliquez sur Chaîne de connexion.

Utilisez les boutons de copie sur le côté droit de la fenêtre pour copier la CHAÎNE
DE CONNEXION PRINCIPALE.
2. Dans Visual Studio, ouvrez le fichier App.config.
3. Supprimez les marques de commentaire de la chaîne StorageConnectionString à la
ligne 8 et commentez la chaîne StorageConnectionString à la ligne 7, étant donné
que ce didacticiel n’utilise pas l’émulateur de stockage du Kit de développement
logiciel (SDK) Azure. Les lignes 7 et 8 doivent maintenant ressembler à ceci :
<!--key="StorageConnectionString" value="UseDevelopmentStorage=true;" />-
->
<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=[AccountName];AccountKe
y=[AccountKey]" />

4. Collez la CHAÎNE DE CONNEXION PRINCIPALE du portail dans la valeur


StorageConnectionString à la ligne 8. Collez la chaîne entre les guillemets.
Important

La ligne 8 doit maintenant ressembler à :


<add key="StorageConnectionString"
value="DefaultEndpointsProtocol=https;AccountName=<account
name>;AccountKey=<account-key>;TableEndpoint=https://<account
name>.table.cosmosdb.azure.com;" />

5. Appuyez sur Ctrl+S pour enregistrer le fichier App.config.


Vous venez de mettre à jour votre application avec toutes les informations nécessaires
pour communiquer avec Azure Cosmos DB.
Génération et déploiement de l’application
1. Dans Visual Studio, cliquez avec le bouton droit sur le
projet TableStoragedans l’Explorateur de solutions, puis cliquez sur Gérer les
packages NuGet.

2. Dans la zone Parcourir de NuGet, tapez Microsoft.Azure.CosmosDB.Table. Cela


permet de rechercher la bibliothèque cliente API de Table Cosmos DB. Notez que
cette bibliothèque n’est actuellement disponible que pour .NET Standard ; elle
n’est pas encore disponible pour .NET Core.
3. Cliquez sur Installer pour installer la
bibliothèque Microsoft.Azure.CosmosDB.Table.Cette opération installe le
package API Table d’Azure Cosmos DB et toutes les dépendances.

4. Ouvrez BasicSamples.cs. Cliquez avec le bouton droit sur la ligne 52,


sélectionnez Point d’arrêt, puis Insérer un point d’arrêt. Insérez un autre point
d’arrêt sur la ligne 55.
5. Appuyez sur F5 pour exécuter l'application.

La fenêtre de console affiche le nom de la nouvelle base de données de tables


(dans ce cas demo91ab4) dans Azure Cosmos DB.

Lorsque vous atteignez le premier point d’arrêt, revenez à l’Explorateur de données


dans le portail Azure. Cliquez sur l’Actualiser bouton, développez la table demo*,
puis cliquez sur Entités. L’onglet Entités situé à droite affiche la nouvelle entité qui
a été ajoutée pour Walter Harp. Notez que le numéro de téléphone de la nouvelle
entité est 425-555-0101.

6. Fermez l’onglet Entités dans l’Explorateur de données.


7. Appuyez sur F5 pour exécuter l’application jusqu’au point d’arrêt suivant.

Lorsque vous atteignez le point d’arrêt, revenez au portail, cliquez à nouveau


sur Entitéspour ouvrir l’onglet Entités, et notez que le numéro de téléphone a été
remplacé par 425-555-0105.

8. Appuyez sur F5 pour exécuter l’application.


L’application ajoute des entités à utiliser dans un exemple d’application avancée
que l’API Table ne prend pas en charge actuellement. L’application supprime
ensuite la table créée par l’exemple d’application.

9. Dans la fenêtre de console, appuyez sur Entrée pour mettre fin à l’exécution de
l’application.
Vérification des contrats SLA dans le portail Azure
Le débit, le stockage, la disponibilité, la latence et la cohérence des ressources de votre
compte sont surveillés dans le portail Azure. Voici quelques informations sur ces
mesures.

1. Cliquez sur Métriques dans le menu de navigation.


2. Cliquez sur chacun des onglets pour découvrir les métriques fournies par Azure
Cosmos DB.

Chaque graphique associé aux Contrats de niveau de service (SLA) d’Azure Cosmos
DB contient une ligne indiquant si un ou plusieurs des SLA n’ont pas été
respectés. Azure Cosmos DB rend transparente la surveillance de vos SLA avec cet
ensemble de métriques.

Supprimer des ressources


Si vous ne pensez pas continuer à utiliser cette application, supprimez toutes les
ressources créées par ce démarrage rapide en procédant de la façon suivante de façon à
ne pas exposer de coûts :

1. Dans le portail Azure, sélectionnez Groupes de ressources tout à gauche, puis


sélectionnez le groupe de ressources que vous avez créé.

Si le menu de gauche est réduit, cliquez sur pour le développer.


2. Dans la nouvelle fenêtre, sélectionnez le groupe de ressources, puis cliquez
sur Supprimer le groupe de ressources.

3. Dans la nouvelle fenêtre, saisissez le nom du groupe de ressources à supprimer,


puis cliquez sur Supprimer.

Vous aimerez peut-être aussi