Générez un jeton d'authentification
Dans cet article, vous apprendrez à générer le jeton d'authentification du principal du service, le jeton d'authentification d'un utilisateur et le jeton d'actualisation d'un utilisateur.
Inscrivez votre application avec Microsoft Entra ID.
Pour approvisionner la plateforme Azure Data Manager for Energy, vous devez inscrire votre application sur la page d’inscription de l’application du Portail Microsoft Azure. Vous pouvez utiliser un compte Microsoft ou un compte professionnel ou scolaire pour inscrire une application. Pour savoir comment configurer, consultez Documentation pour inscrire votre application.
Dans la section Vue d’ensemble de l’application, si aucune URI de redirection n’est spécifié, vous pouvez sélectionner Ajouter une plateforme>Web, ajoutez
http://localhost:8080
et sélectionnez Enregistrer.
Paramètres de récupération
Vous pouvez également trouver les paramètres une fois que l’application est inscrite sur le Portail Microsoft Azure.
Rechercher l’identifiant de locataire
Accédez au compte Microsoft Entra pour votre organisation. Vous pouvez chercher Microsoft Entra ID dans la barre de recherche du portail Microsoft Azure.
Dans l’onglet Vue d’ensemble, sous la section Informations de base, trouvez Identifiant du locataire.
Copiez la valeur
tenant-ID
et collez-la dans un éditeur pour pouvoir l’utiliser ultérieurement.
Trouvez l’identifiant client
Un client-id
est la même valeur que celle que vous utilisez pour inscrire votre application lors de l’approvisionnement de votre instance Azure Data Manage pour Energy. Il est souvent appelé app-id
.
Accédez à la page Vue d’ensemble d'Azure Data Manager pour Energy. Dans le volet Essentials, recherchez Identifiant client.
Copiez la valeur
client-id
et collez-la dans un éditeur pour pouvoir l’utiliser ultérieurement.Actuellement, une instance Azure Data Manager pour Energy permet à un
app-id
d’être associé à une instance.Important
Le
client-id
qui est transmis comme valeur dans les appels d’API de droits d’utilisation doivent être le même que celui qui a été utilisé pour provisionner votre instance Azure Data Manager pour Energy.
Trouver une clé secrète client
Un client-secret
est une valeur de chaîne que votre application peut utiliser à la place d’un certificat pour s’identifier. Il est parfois appelé mot de passe d’application.
Accédez à Enregistrements d’application.
Sous la section Gérer, sélectionnez Certificats et secrets.
Sélectionnez Nouvelle clé secrète client pour créer une clé secrète client pour l’identifiant client que vous avez utilisé pour créer votre instance Azure Data Manager pour Energy.
Enregistrez la valeur du secret en prévision d’une utilisation ultérieure dans le code de votre application cliente.
Le jeton d’accès du
app-id
et duclient-secret
dispose de l’accès administrateur de l’infrastructure à l’instance.Attention
N’oubliez pas d’enregistrer la valeur du secret. Cette valeur secrète n’est plus affichée après avoir quitté cette page pour la création d’une clé secrète client.
Trouver un uri de redirection
Le redirect-uri
de votre application, où votre application envoie et reçoit les réponses d’authentification. Il doit correspondre exactement à l’un des URI de redirection que vous avez enregistrés dans le portail, sauf qu’il doit être encodé au format URL.
- Accédez à Enregistrements d’application.
- Dans la section Gérer, sélectionnez Authentification.
- Récupérez le
redirect-uri
(ou URL de réponse) de votre application pour recevoir les réponses de Microsoft Entra ID.
Trouvez l’url d’adme de votre instance Azure Data Manager for Energy
Créez une instance Azure Data Manager pour Energy en utilisant le
client-id
généré ci-dessus.Accédez à votre page Vue d’ensemble d'Azure Data Manager pour Energy sur le Portail Microsoft Azure.
Sur le volet Éléments essentiels, copiez l’URI.
Trouvez l’identifiant de la partition de données
Vous avez deux façons d’obtenir la liste des partitions de données dans votre instance Azure Data Manager pour Energy.
Option 1 : sous la section Avancé de votre interface utilisateur Azure Data Manager pour Energy, accédez à l’élément de menu Partitions de données.
Option 2 : dans le volet Essentials de votre page Vue d’ensemble d'Azure Data Manager pour l’énergie, sous le champ Partitions de données, sélectionnez l’affichage.
Trouver un domaine
Par défaut, le domain
est dataservices.energy pour toutes les instances Azure Data Manager for Energy.
Générer le jeton d’authentification d’identifiant client
Exécutez la commande curl suivante dans Azure Cloud Bash après avoir remplacé les valeurs d’espace réservé par les valeurs correspondantes trouvées aux étapes précédentes. Le jeton d’accès dans la réponse est le jeton d’authentification client-id
.
Format de la demande
curl --location --request POST 'https://login.microsoftonline.com/<tenant-id>/oauth2/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=<client-id>.default' \
--data-urlencode 'client_id=<client-id>' \
--data-urlencode 'client_secret=<client-secret>' \
--data-urlencode 'resource=<client-id>'
Exemple de réponse
{
"token_type": "Bearer",
"expires_in": 86399,
"ext_expires_in": 86399,
"access_token": "abcdefgh123456............."
}
Générer le jeton d’authentification de l’utilisateur
La génération du jeton d’authentification d’un utilisateur est un processus en deux étapes.
Obtenir le code d’autorisation
La première étape pour obtenir un jeton d’accès pour de nombreux flux OpenID Connect (OIDC) et OAuth 2.0 consiste à rediriger l’utilisateur vers le point de terminaison /authorize
de la plateforme d'identités Microsoft. Microsoft Entra ID connecte l’utilisateur et demande son consentement pour les autorisations demandées par votre application. Dans le flux d’octroi de code d’autorisation, une fois le consentement obtenu, Microsoft Entra ID retourne un code d’autorisation à votre application qu’elle peut échanger au point de terminaison /token
de la plateforme d'identités Microsoft pour un jeton d’accès.
Préparez le format de requête à l’aide des paramètres.
https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id> &response_type=code &redirect_uri=<redirect-uri> &response_mode=query &scope=<client-id>%2f.default&state=12345&sso_reload=true
Après avoir remplacé les paramètres, vous pouvez coller la requête dans l'URL de n'importe quel navigateur et sélectionner Entrée.
Connectez-vous à votre Portail Microsoft Azure si vous n’êtes pas déjà connecté.
Vous pouvez voir le message d'erreur « Hmmm... impossible d’accéder à cette page » dans le navigateur. Vous pouvez l’ignorer.
Le navigateur redirige vers une
http://localhost:8080/?code={authorization code}&state=...
après une authentification réussie.Copiez la réponse à partir de la barre d’URL du navigateur et récupérez le texte entre
code=
et&state
.http://localhost:8080/?code=0.BRoAv4j5cvGGr0...au78f&state=12345&session....
Gardez cette
authorization-code
sous la main pour une utilisation ultérieure.Paramètre Description code Le code d’autorisation demandé par l’application. L’application peut utiliser ce code d’autorisation pour demander un jeton d’accès pour la ressource cible. Les codes d’autorisation ont des durées de vie courtes. Généralement, ils expirent au bout de 10 minutes. state Si un paramètre d’état est inclus dans la demande, la même valeur doit apparaître dans la réponse. L’application doit vérifier que les valeurs state de la requête et de la réponse sont identiques. Cela permet de détecter les attaques CSRF menaçant le client. session_state Une valeur unique identifiant la session utilisateur actuelle. Cette valeur est un GUID, mais elle doit être traitée comme une valeur opaque n’ayant fait l’objet d’aucune analyse.
Avertissement
L’exécution de l’URL dans Postman ne fonctionnera pas, car elle nécessite une configuration supplémentaire pour la récupération des jetons.
Obtenir un jeton d’authentification et un jeton d’actualisation
La deuxième étape consiste à obtenir le jeton d’authentification et le jeton d’actualisation. Votre application utilise le code d’autorisation reçu à l’étape précédente pour demander un jeton d’accès en envoyant une requête POST au point de terminaison /token
.
Format de la demande
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<client-id>
&scope=<client-id>%2f.default openid profile offline_access
&code=<authorization-code>
&redirect_uri=<redirect-uri>
&grant_type=authorization_code
&client_secret=<client-secret>' 'https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token'
Exemple de réponse
{
"token_type": "Bearer",
"scope": "User.Read profile openid email",
"expires_in": 4557,
"access_token": "eyJ0eXAiOiJKV1QiLCJub25jZSI6IkJuUXdJd0ZFc...",
"refresh_token": "0.ARoAv4j5cvGGr0GRqy180BHbR8lB8cvIWGtHpawGN..."
}
Paramètre | Description |
---|---|
token_type | Indique la valeur du type de jeton. Le seul type pris en charge par Microsoft Entra ID est Porteur. |
scope | Liste séparée par un espace des autorisations Microsoft Graph pour laquelle le jeton d’accès est valide. |
expires_in | Durée de validité du jeton d’accès (en secondes). |
access_token | Le jeton d’accès demandé. Votre application peut utiliser ce jeton pour appeler Microsoft Graph. |
refresh_token | Un jeton d’actualisation OAuth 2.0. Votre application peut utiliser ce jeton pour acquérir des jetons d’accès supplémentaires après l’expiration du jeton d’accès actuel. Les jetons d’actualisation ont une durée de vie longue et peuvent être utilisés pour conserver l’accès aux ressources pendant des périodes de temps étendues. |
Pour plus d’informations sur la génération d’un jeton d’accès utilisateur et l’utilisation d’un jeton d’actualisation pour générer un nouveau jeton d’accès, consultez Générer des jetons d’actualisation.
OSDU® est une marque déposée de The Open Group.
Étapes suivantes
Pour en savoir plus sur l’utilisation du jeton d’actualisation généré, consultez :