Obtenir un jeton à partir d’Azure AD pour autoriser les requêtes à partir d’une application clienteAcquire a token from Azure AD for authorizing requests from a client application

Le principal avantage d’utiliser Azure Active Directory (Azure AD) avec le Stockage Blob ou File d’attente Azure est que vos informations d’identification n’ont plus besoin d’être stockées dans votre code.A key advantage of using Azure Active Directory (Azure AD) with Azure Blob storage or Queue storage is that your credentials no longer need to be stored in your code. Au lieu de cela, vous pouvez demander un jeton d’accès OAuth 2.0 auprès de la plateforme d’identité Microsoft.Instead, you can request an OAuth 2.0 access token from the Microsoft identity platform. Azure AD authentifie le principal de sécurité (un utilisateur, un groupe ou un principal de service) qui exécute l’application.Azure AD authenticates the security principal (a user, group, or service principal) running the application. Si l’authentification réussit, Azure AD retourne le jeton d’accès à l’application et l’application peut ensuite l’utiliser pour autoriser les demandes vers le Stockage Blob ou File d’attente Azure.If authentication succeeds, Azure AD returns the access token to the application, and the application can then use the access token to authorize requests to Azure Blob storage or Queue storage.

Cet article explique comment configurer l’authentification avec la Plateforme d’identités Microsoft sur une application native ou une application web à l’aide d’un exemple d’application disponible au téléchargement.This article shows how to configure your native application or web application for authentication with the Microsoft identity platform using a sample application that is available for download. Ce dernier utilise .NET, mais l’approche est similaire avec d’autres langages.The sample application features .NET, but other languages use a similar approach. Pour plus d’informations sur la Plateforme d’identités Microsoft, consultez Vue d’ensemble de la Plateforme d’identités Microsoft.For more information about the Microsoft identity platform, see Microsoft identity platform overview.

Pour avoir une vue d’ensemble du flux d’octroi de code OAuth 2.0, consultez Autoriser l’accès aux applications web Azure Active Directory à l’aide du flux d’octroi de code OAuth 2.0.For an overview of the OAuth 2.0 code grant flow, see Authorize access to Azure Active Directory web applications using the OAuth 2.0 code grant flow.

À propos de l’exemple d’applicationAbout the sample application

L’exemple d’application offre une expérience de bout en bout montrant comment configurer l’authentification avec Azure AD sur une application web dans un environnement de développement local.The sample application provides an end-to-end experience that shows how to configure a web application for authentication with Azure AD in a local development environment. Pour voir et exécuter l’exemple d’application, commencez par le cloner ou le télécharger sur GitHub.To view and run the sample application, first clone or download it from GitHub. Suivez ensuite la procédure décrite dans l’article pour configurer une inscription d’application Azure et mettre à jour l’application en fonction de votre environnement.Then follow the steps outlined in the article to configure an Azure app registration and update the application for your environment.

Attribuer un rôle à un principal de sécurité Azure ADAssign a role to an Azure AD security principal

Pour authentifier un principal de sécurité à partir de votre application Stockage Azure, commencez par configurer les paramètres de contrôle d’accès en fonction du rôle Azure (Azure RBAC) de ce principal de sécurité.To authenticate a security principal from your Azure Storage application, first configure Azure role-based access control (Azure RBAC) settings for that security principal. Le Stockage Azure définit des rôles intégrés qui englobent les autorisations pour les conteneurs et les files d’attente.Azure Storage defines built-in roles that encompass permissions for containers and queues. Quand le rôle Azure est attribué à un principal de sécurité, ce dernier obtient l’accès à cette ressource.When the Azure role is assigned to a security principal, that security principal is granted access to that resource. Pour plus d’informations, consulter Gestion des droits d’accès aux données Blob et File d’attente Azure avec Azure RBAC.For more information, see Manage access rights to Azure Blob and Queue data with Azure RBAC.

Inscrire votre application à un locataire Azure ADRegister your application with an Azure AD tenant

La première étape d’utilisation d’Azure AD pour autoriser l’accès aux ressources de stockage est d’inscrire votre application cliente avec un locataire Azure AD à partir du Portail Microsoft Azure.The first step in using Azure AD to authorize access to storage resources is registering your client application with an Azure AD tenant from the Azure portal. Lorsque vous inscrivez votre application cliente, vous fournissez des informations sur l’application à Azure AD.When you register your client application, you supply information about the application to Azure AD. Azure AD fournit ensuite un ID de client (appelé aussi ID d’application) que vous utilisez pour associer votre application à Azure AD au moment de l’exécution.Azure AD then provides a client ID (also called an application ID) that you use to associate your application with Azure AD at runtime. Pour en savoir plus sur l’ID de client, consultez Objets application et principal du service dans Azure Active Directory.To learn more about the client ID, see Application and service principal objects in Azure Active Directory. Pour inscrire votre application de Stockage Microsoft Azure, veuillez suivre les étapes indiquées dans le Guide de démarrage rapide : Inscrire une application avec la plateforme des identités Microsoft.To register your Azure Storage application, follow the steps shown in Quickstart: Register an application with the Microsoft identity platform.

L’illustration suivante montre les paramètres courants d’inscription d’une application web.The following image shows common settings for registering a web application. À savoir : dans cet exemple, l’URI de redirection est défini sur http://localhost:5000/signin-oidc pour tester l’exemple d’application dans l’environnement de développement.Note that in this example, the redirect URI is set to http://localhost:5000/signin-oidc for testing the sample application in the development environment. Vous pourrez par la suite modifier ce paramètre sous le paramètre Authentification de votre application inscrite sur le Portail Azure :You can modify this setting later under the Authentication setting for your registered application in the Azure portal:

Capture d’écran montrant comment inscrire votre application de stockage dans Azure AD

Nota

Si vous inscrivez votre application comme une application native, vous pouvez spécifier n’importe quel URI valide pour l’URI de redirection.If you register your application as a native application, you can specify any valid URI for the Redirect URI. Pour les applications natives, cette valeur ne devra pas être une URL réelle.For native applications, this value does not have to be a real URL. Pour les applications web, l’URI de redirection doit être un URI valide, car il spécifie l’URL à laquelle les jetons sont fournis.For web applications, the redirect URI must be a valid URI, because it specifies the URL to which tokens are provided.

Une fois votre application inscrite, l’ID d’application (ou ID de client) se trouve sous Paramètres :After you've registered your application, you'll see the application ID (or client ID) under Settings:

Capture d’écran montrant l’ID de client

Pour plus d’informations sur l’inscription d’une application dans Azure AD, consultez Intégration d’applications à Azure Active Directory.For more information about registering an application with Azure AD, see Integrating applications with Azure Active Directory.

Accorder à votre application inscrite des autorisations sur le Stockage AzureGrant your registered app permissions to Azure Storage

Ensuite, accordez à votre application l’autorisation d’appeler les API de Stockage Azure.Next, grant your application permissions to call Azure Storage APIs. Cette étape permet à votre application d’autoriser les requêtes vers le Stockage Azure avec Azure AD.This step enables your application to authorize requests to Azure Storage with Azure AD.

  1. Sur la page Autorisations d’API de votre application inscrite, sélectionnez Ajouter une autorisation.On the API permissions page for your registered application, select Add a permission.

  2. Sous l’onglet API Microsoft, sélectionnez Stockage Azure.Under the Microsoft APIs tab, select Azure Storage.

  3. Comme vous pouvez le constater sous De quel type d’autorisations votre application a-t-elle besoin ? dans le volet Demander des autorisations d’API, le type d’autorisation disponible est Autorisations déléguées.On Request API permissions pane, under What type of permissions does your application require?, observe that the available permission type is Delegated permissions. Cette option est sélectionnée pour vous par défaut.This option is selected for you by default.

  4. Sous Autorisations, cochez la case à côté de user_impersonation, puis sélectionnez le bouton Ajouter des autorisations.Under Permissions, select the checkbox next to user_impersonation, then select the Add permissions button.

    Capture d’écran montrant les autorisations relatives à l’API de stockage

  5. Accordez ensuite le consentement administrateur pour ces autorisations en cliquant sur Accorder le consentement administrateur pour le répertoire par défaut.Next, grant admin consent for these permissions by clicking Grant admin consent for Default Directory.

Le volet Autorisations d’API indique à présent que votre application Azure AD inscrite a accès aux API Microsoft Graph et Stockage Azure. Par ailleurs, le consentement est accordé pour le répertoire par défaut.The API permissions pane now shows that your registered Azure AD application has access to both the Microsoft Graph and Azure Storage APIs, and that consent is granted for the default directory. Les autorisations sont accordées à Microsoft Graph automatiquement quand vous inscrivez votre application pour la première fois dans Azure AD.Permissions are granted to Microsoft Graph automatically when you first register your app with Azure AD.

Capture d’écran montrant les autorisations d’API de l’application inscrite

Créer une clé secrète clientCreate a client secret

L’application a besoin d’une clé secrète client pour prouver son identité lors de la requête de jeton.The application needs a client secret to prove its identity when requesting a token. Pour ajouter une clé secrète client, procédez comme suit :To add the client secret, follow these steps:

  1. Accédez à votre inscription d’application dans le Portail Microsoft Azure.Navigate to your app registration in the Azure portal.

  2. Sélectionnez le paramètre Certificats et clés secrètes.Select the Certificates & secrets setting.

  3. Sous Clés secrètes client, cliquez sur Nouvelle clé secrète client pour créer une clé secrète.Under Client secrets, click New client secret to create a new secret.

  4. Fournissez une description pour la clé secrète, puis choisissez une intervalle d’expiration.Provide a description for the secret, and choose the desired expiration interval.

  5. Copiez immédiatement la valeur de la nouvelle clé secrète dans un emplacement sécurisé.Immediately copy the value of the new secret to a secure location. La valeur complète s’affiche pour vous une seule fois.The full value is displayed to you only once.

    Capture d’écran montrant la clé secrète client

Activer le flux d’octroi impliciteEnable implicit grant flow

Configurez maintenant le processus d’octroi implicite de votre application.Next, configure implicit grant flow for your application. Procédez comme suit :Follow these steps:

  1. Accédez à votre inscription d’application dans le Portail Microsoft Azure.Navigate to your app registration in the Azure portal.

  2. Dans la section Gérer, sélectionnez le paramètre authentification.In the Manage section, select the Authentication setting.

  3. Dans la section Octroi implicite, activez la case des jetons d’ID, comme illustré dans l’image suivante :In the Implicit grant section, select the check box to enable ID tokens, as shown in the following image:

    Capture d’écran montrant comment activer les paramètres pour le flux d’octroi implicite

Bibliothèques clientes pour l’acquisition de jetonClient libraries for token acquisition

Lorsque vous avez inscrit votre application et les autorisations pour accéder aux données dans le Stockage Blob ou File d’attente Azure, vous pouvez ajouter le code à votre application pour authentifier un principal de sécurité et acquérir un jeton OAuth 2.0.Once you have registered your application and granted it permissions to access data in Azure Blob storage or Queue storage, you can add code to your application to authenticate a security principal and acquire an OAuth 2.0 token. Pour authentifier et acquérir le jeton, vous pouvez utiliser l’une des Bibliothèques d’authentification de plateforme d’identité Microsoft ou une autre bibliothèque Open Source prenant en charge OpenID Connect 1.0.To authenticate and acquire the token, you can use either one of the Microsoft identity platform authentication libraries or another open-source library that supports OpenID Connect 1.0. Votre application peut alors utiliser le jeton d’accès pour autoriser une requête sur le Stockage Blob ou File d’attente Azure.Your application can then use the access token to authorize a request against Azure Blob storage or Queue storage.

Pour connaître la liste de scénarios dans lesquels l’acquisition de jetons est prise en charge, consultez la section Flux d’authentification de la documentation Bibliothèque d’authentification Microsoft (MSAL).For a list of scenarios for which acquiring tokens is supported, see the authentication flows section of the Microsoft Authentication Library (MSAL) documentation.

Valeurs connues pour l’authentification avec Azure ADWell-known values for authentication with Azure AD

Pour authentifier un principal de sécurité avec Azure AD, vous devez inclure des valeurs connues dans votre code.To authenticate a security principal with Azure AD, you need to include some well-known values in your code.

Autorité Azure ADAzure AD authority

Pour le cloud public Microsoft, l’autorité Azure AD de base est comme suit, où tenant-id est votre ID de locataire Active Directory (ou ID de répertoire) :For Microsoft public cloud, the base Azure AD authority is as follows, where tenant-id is your Active Directory tenant ID (or directory ID):

https://login.microsoftonline.com/<tenant-id>/

L’ID client identifie le client Azure AD pour l’authentification.The tenant ID identifies the Azure AD tenant to use for authentication. Il est également appelé ID de répertoire.It is also referred to as the directory ID. Pour récupérer l’ID de locataire, accédez à la page Vue d’ensemble de votre inscription d’application dans le Portail Microsoft Azure et copiez la valeur à partir de là.To retrieve the tenant ID, navigate to the Overview page for your app registration in the Azure portal, and copy the value from there.

ID de ressource de stockage AzureAzure Storage resource ID

L’ID de ressource Azure AD indique l’audience pour laquelle un jeton émis peut être utilisé pour fournir l’accès à une ressource Azure.An Azure AD resource ID indicates the audience for which a token that is issued can be used to provide access to an Azure resource. Dans le cas du stockage Azure, l’ID de ressource peut être spécifique à un seul compte de stockage ou s’appliquer à n’importe quel compte de stockage.In the case of Azure Storage, the resource ID may be specific to a single storage account, or it may apply to any storage account. Le tableau suivant décrit les valeurs que vous pouvez fournir pour l’ID de la ressource :The following table describes the values that you can provide for the resource ID:

ID de ressourceResource ID DescriptionDescription
https://<account>.blob.core.windows.net

https://<account>.queue.core.windows.net
Point de terminaison de service pour un compte de stockage donné.The service endpoint for a given storage account. Utilisez cette valeur pour acquérir un jeton qui autorise uniquement les demandes adressées à ce compte de stockage Azure et à ce service.Use this value to acquire a token for authorizing requests to that specific Azure Storage account and service only. Remplacez la valeur entre crochets par le nom de votre compte de stockage.Replace the value in brackets with the name of your storage account.
https://storage.azure.com/ À utiliser pour obtenir un jeton pour l’autorisation des requêtes vers n’importe quel compte de stockage Azure.Use to acquire a token for authorizing requests to any Azure Storage account.

Exemple de code .NET : Créer un objet blob de blocs.NET code example: Create a block blob

L’exemple de code montre comment obtenir un jeton d’accès d’Azure AD.The code example shows how to get an access token from Azure AD. Le jeton d’accès est utilisé pour authentifier l’utilisateur spécifié et autoriser une demande de création d’objet blob de blocs.The access token is used to authenticate the specified user and then authorize a request to create a block blob. Pour que cet exemple fonctionne, suivez d’abord les étapes décrites dans les sections précédentes.To get this sample working, first follow the steps outlined in the preceding sections.

Pour envoyer une requête de jeton, vous aurez besoin des valeurs suivantes lors de l’enregistrement de votre application :To request the token, you will need the following values from your app's registration:

  • Le nom de votre client Azure AD.The name of your Azure AD domain. Récupérez cette valeur à partir de la page Vue d’ensemble de votre instance Azure Active Directory.Retrieve this value from the Overview page of your Azure Active Directory.
  • L’ID du locataire (ou répertoire).The tenant (or directory) ID. Récupérez cette valeur à partir de la page Vue d’ensemble de votre inscription d’application.Retrieve this value from the Overview page of your app registration.
  • L’ID client (ou d’application).The client (or application) ID. Récupérez cette valeur à partir de la page Vue d’ensemble de votre inscription d’application.Retrieve this value from the Overview page of your app registration.
  • L’URI de redirection du client.The client redirection URI. Récupérez cette valeur à partir du paramètre Authentification pour l’inscription de votre application.Retrieve this value from the Authentication settings for your app registration.
  • La valeur de la clé secrète client.The value of the client secret. Récupérez cette valeur à partir de l’emplacement où vous l’avez précédemment copiée.Retrieve this value from the location to which you previously copied it.

Créer un compte de stockage et un conteneurCreate a storage account and container

Pour exécuter l’exemple de code, créez un compte de stockage dans le même abonnement que votre instance Azure Active Directory.To run the code sample, create a storage account within the same subscription as your Azure Active Directory. Puis créez un conteneur dans ce compte de stockage.Then create a container within that storage account. L’exemple de code crée un objet blob de blocs dans ce conteneur.The sample code will create a block blob in this container.

Ensuite, affectez explicitement le rôle Contributeur aux données Blob du stockage au compte d’utilisateur sous lequel vous allez exécuter l’exemple de code.Next, explicitly assign the Storage Blob Data Contributor role to the user account under which you will run the sample code. Pour connaître les instructions à suivre pour attribuer ce rôle sur le Portail Azure, consulter Attribution d’un rôle Azure pour l’accès à des données Blob et File d’attente avec le Portail Azure.For instructions on how to assign this role in the Azure portal, see Use the Azure portal to assign an Azure role for access to blob and queue data.

Nota

Lorsque vous créez un compte de stockage Azure, aucune autorisation d’accès aux données ne vous est automatiquement attribuée via Azure AD.When you create an Azure Storage account, you are not automatically assigned permissions to access data via Azure AD. Vous devez vous attribuer explicitement un rôle Azure pour le Stockage Azure.You must explicitly assign yourself an Azure role for Azure Storage. Vous pouvez l’attribuer au niveau de votre abonnement, groupe de ressources, compte de stockage, conteneur ou file d’attente.You can assign it at the level of your subscription, resource group, storage account, or container or queue.

Avant de vous attribuer un rôle pour l’accès aux données, vous pouvez accéder aux données de votre compte de stockage via le portail Azure, car ce dernier peut également utiliser la clé de compte pour l’accès aux données.Prior to assigning yourself a role for data access, you will be able to access data in your storage account via the Azure portal because the Azure portal can also use the account key for data access. Pour plus d’informations, consultez Choisir comment autoriser l’accès à des données blobs dans le portail Azure.For more information, see Choose how to authorize access to blob data in the Azure portal.

Créer une application web qui autorise l’accès au Stockage Blob avec Azure ADCreate a web application that authorizes access to Blob storage with Azure AD

Lorsque votre application accède au stockage Azure, elle le fait pour le compte de l’utilisateur, ce qui signifie que les ressources blob ou de file d’attente sont accessibles en utilisant les autorisations de l’utilisateur qui s’est connecté.When your application accesses Azure Storage, it does so on the user's behalf, meaning that blob or queue resources are accessed using the permissions of the user who is logged in. Pour tester cet exemple de code, vous avez besoin d’une application web qui invite l’utilisateur à se connecter à l’aide d’une identité Azure AD.To try this code example, you need a web application that prompts the user to sign in using an Azure AD identity. Vous pouvez créer la vôtre, ou utiliser l’exemple d’application fourni par Microsoft.You can create your own, or use the sample application provided by Microsoft.

Un exemple d’application web complet qui acquiert un jeton et l’utilise pour créer un objet blob dans le Stockage Azure est disponible sur GitHub.A completed sample web application that acquires a token and uses it to create a blob in Azure Storage is available on GitHub. Nous vous conseillons d’examiner et d’exécuter l’exemple complet pour mieux comprendre les exemples de code.Reviewing and running the completed sample may be helpful for understanding the code examples. Pour obtenir des instructions sur la façon d’exécuter l’exemple complet, veuillez consultez la section intitulée Afficher et exécuter l’exemple complet.For instructions about how to run the completed sample, see the section titled View and run the completed sample.

Ajouter des références et des instructions usingAdd references and using statements

Dans Visual Studio, installez la bibliothèque de client du Stockage Azure.From Visual Studio, install the Azure Storage client library. Dans le menu Outils, sélectionnez Gestionnaire de package NuGet, puis Console du gestionnaire de package.From the Tools menu, select NuGet Package Manager, then Package Manager Console. Tapez les commandes suivantes dans la fenêtre de la console pour installer les packages nécessaires à partir de la bibliothèque de client du Stockage Azure pour .NET :Type the following commands into the console window to install the necessary packages from the Azure Storage client library for .NET:

Install-Package Azure.Storage.Blobs
Install-Package Microsoft.Identity.Web -Version 0.4.0-preview

Ensuite, ajoutez le code suivant à l’aide des instructions sur le fichier HomeController.cs :Next, add the following using statements to the HomeController.cs file:

using Microsoft.Identity.Web; //MSAL library for getting the access token
using Azure.Storage.Blobs;

Créer un objet blob de blocsCreate a block blob

Ajoutez l’extrait de code suivant pour créer un objet blob de blocs.Add the following code snippet to create a block blob. N’oubliez pas de remplacer les valeurs entre crochets par vos propres valeurs :Remember to replace values in angle brackets with your own values:

private static async Task<string> CreateBlob(TokenAcquisitionTokenCredential tokenCredential)
{
    Uri blobUri = new Uri("https://<storage-account>.blob.core.windows.net/<container>/Blob1.txt");
    BlobClient blobClient = new BlobClient(blobUri, tokenCredential);

    string blobContents = "Blob created by Azure AD authenticated user.";
    byte[] byteArray = Encoding.ASCII.GetBytes(blobContents);

    using (MemoryStream stream = new MemoryStream(byteArray))
    {
        await blobClient.UploadAsync(stream);
    }
    return "Blob successfully created";
}

Nota

Pour autoriser les opérations d’objet blob et de file d’attente avec un jeton OAuth 2.0, vous devez utiliser HTTPS.To authorize blob and queue operations with an OAuth 2.0 token, you must use HTTPS.

Dans l’exemple ci-dessus, la bibliothèque cliente .NET gère l’autorisation de la demande de création de l’objet blob de blocs.In the example above, the .NET client library handles the authorization of the request to create the block blob. D’autres bibliothèques clientes du Stockage Azure pour d’autres langages gèrent également l’autorisation de la requête pour vous.Azure Storage client libraries for other languages also handle the authorization of the request for you. Toutefois, si vous appelez une opération Stockage Azure avec un jeton OAuth à l’aide de l’API REST, vous devez construire l’en-tête Autorisation à l’aide du jeton OAuth.However, if you are calling an Azure Storage operation with an OAuth token using the REST API, then you'll need to construct the Authorization header by using the OAuth token.

Pour appeler les opérations des services Blob et de File d’attente à l’aide des jetons d’accès OAuth, passez le jeton d’accès dans l’en-tête Authorization en utilisant le schéma Bearer et spécifiez une version de service 2017-11-09 ou ultérieure, comme indiqué dans l’exemple suivant :To call Blob and Queue service operations using OAuth access tokens, pass the access token in the Authorization header using the Bearer scheme, and specify a service version of 2017-11-09 or higher, as shown in the following example:

GET /container/file.txt HTTP/1.1
Host: mystorageaccount.blob.core.windows.net
x-ms-version: 2017-11-09
Authorization: Bearer eyJ0eXAiOnJKV1...Xd6j

Obtenir un jeton d’accès à partir d’Azure ADGet an access token from Azure AD

Ensuite, ajoutez une méthode qui demande un jeton à Azure AD pour le compte de l’utilisateur.Next, add a method that requests a token from Azure AD on the behalf of the user. Cette méthode définit l’étendue pour laquelle les autorisations doivent être accordées.This method defines the scope for which permissions are to be granted. Vous trouverez plus d’informations sur les autorisations et les étendues dans Autorisations et consentement dans le point de terminaison de la plateforme d’identités Microsoft.For more information about permissions and scopes, see Permissions and consent in the Microsoft identity platform endpoint.

Utilisez l’ID de ressource pour construire l’étendue pour laquelle acquérir le jeton.Use the resource ID to construct the scope for which to acquire the token. L’exemple construit l’étendue à l’aide de l’ID de ressource avec l’étendue user_impersonation intégrée, ce qui indique que le jeton est demandé pour le compte de l’utilisateur.The example constructs the scope by using the resource ID together with the built-in user_impersonation scope, which indicates that the token is being requested on behalf of the user.

Gardez à l’esprit que vous devrez peut-être présenter à l’utilisateur une interface lui permettant de donner son consentement pour la demande de jeton en son nom :Keep in mind that you may need to present the user with an interface that enables the user to consent to request the token their behalf:

[AuthorizeForScopes(Scopes = new string[] { "https://storage.azure.com/user_impersonation" })]
public async Task<IActionResult> Blob()
{
    string message = await CreateBlob(new TokenAcquisitionTokenCredential(_tokenAcquisition));
    ViewData["Message"] = message;
    return View();
}

Le consentement est le processus via lequel un utilisateur autorise une application à accéder à des ressources protégées en son nom.Consent is the process of a user granting authorization to an application to access protected resources on their behalf. La Plateforme d’identités Microsoft prend en charge le consentement incrémentiel. En d’autres termes, un principal de sécurité peut commencer par demander un ensemble d’autorisations minimal, puis ajouter des autorisations au fil du temps en fonction des besoins.The Microsoft identity platform supports incremental consent, meaning that a security principal can request a minimum set of permissions initially and add permissions over time as needed. Lorsque votre code demande un jeton d’accès, spécifiez l’étendue des autorisations dont votre application a besoin.When your code requests an access token, specify the scope of permissions that your app needs. Pour plus d’informations sur le consentement incrémentiel, consultez Consentement incrémentiel et dynamique.For more information about incremental consent, see Incremental and dynamic consent.

Afficher et exécuter l’exemple completView and run the completed sample

Pour exécuter l’exemple d’application, commencez par le cloner ou le télécharger depuis GitHub.To run the sample application, first clone or download it from GitHub. Puis mettez à jour l’application comme décrit dans les sections suivantes.Then update the application as described in the following sections.

Fournir des valeurs dans le fichier de paramètresProvide values in the settings file

Mettez à jour le fichier appsettings.json avec vos propres valeurs :Update the appsettings.json file with your own values, as follows:

{
  "AzureAd": {
    "Instance": "https://login.microsoftonline.com/",
    "Domain": "<azure-ad-domain-name>.onmicrosoft.com",
    "TenantId": "<tenant-id>",
    "ClientId": "<client-id>",
    "ClientSecret": "<client-secret>"
    "ClientCertificates": [
    ],
    "CallbackPath": "/signin-oidc"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft": "Warning",
      "Microsoft.Hosting.Lifetime": "Information"
    }
  },
  "AllowedHosts": "*"
}

Mettre à jour le conteneur et le nom du compte de stockageUpdate the storage account and container name

Dans le fichier HomeController.cs, mettez à jour l’URI qui fait référence à l’objet blob de blocs pour utiliser votre conteneur et le nom de votre compte de stockage, en remplaçant les valeurs entre crochets par vos propres valeurs :In the HomeController.cs file, update the URI that references the block blob to use the name of your storage account and container, replacing the values in angle brackets with your own values:

https://<storage-account>.blob.core.windows.net/<container>/Blob1.txt

Étapes suivantesNext steps