Demander le consentement de l’utilisateur

Importante

En juin 2022, nous avons introduit l’authentification multifacteur comme exigence pour Bing Ads. Vous devrez peut-être quand même apporter une modification au code pour vous conformer à cette exigence. Microsoft Advertising effectue des vérifications techniques de l’application au début du mois d’octobre.

Ce billet de blog décrit les étapes à suivre pour garantir la conformité.

Pour plus d’informations, consultez le guide des exigences d’authentification multifacteur .

Une fois que vous avez inscrit une application, vous devez obtenir le consentement de l’utilisateur pour gérer son compte Microsoft Advertising.

Conseil

Pour obtenir de l’aide sur la résolution des problèmes, consultez le Guide des erreurs OAuth courantes .

Importante

Chaque utilisateur doit être invité à donner son consentement via un contrôle de navigateur web au moins une fois pour que votre application gère ses comptes Microsoft Advertising. Il s’agit d’un flux OAuth 2.0 standard qui est défini en détail dans la section Octroi de code d’autorisation de la spécification OAuth 2.0.

Le flux de code d’autorisation commence par le client qui dirige l’utilisateur vers le point de /authorize terminaison. Dans cette requête, le client indique les autorisations qu’il doit acquérir auprès de l’utilisateur :

Remarque

Remplacez your_client_id ci-dessous par l’ID d’application (client) que le Portail Azure - inscriptions d'applications portail a attribué à votre application.

// Line breaks for legibility only

https://login.microsoftonline.com/{tenant}/oauth2/v2.0/authorize?
client_id=your_client_id
&response_type=code
&redirect_uri=http%3A%2F%2Flocalhost%2Fmyapp%2F
&response_mode=query
&scope=openid%20offline_access%20https%3A%2F%2Fads.microsoft.com%2Fmsads.manage
&state=12345
  1. Cliquez sur le lien ci-dessous pour exécuter cet exemple de demande de consentement de l’utilisateur.

Remarque

Remplacez your_client_id dans l’URL ci-dessous par l’ID d’application (client) que le Portail Azure - inscriptions d'applications portail a attribué à votre application.

<https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=your_client_id&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%2Fmyapp%2F&response_mode=query&scope=openid%20offline_access%20https%3A%2F%2Fads.microsoft.com%2Fmsads.manage&state=12345>
  1. Connectez-vous avec vos informations d’identification de compte Microsoft et accordez votre consentement à votre application pour gérer vos comptes Microsoft Advertising.
  2. Une fois connecté, votre navigateur doit être redirigé vers https://localhost/myapp/ avec un dans la barre d’adresse code . Vous pouvez ignorer le message d’erreur sur la page.
  3. Ensuite, vous allez utiliser le code pour obtenir des jetons d’accès et d’actualisation.

Le point de terminaison Plateforme d'identités Microsoft garantit également que l’utilisateur a consenti aux autorisations indiquées dans le paramètre de scope requête. Si l’utilisateur n’a pas consenti à l’une de ces autorisations, il demande à l’utilisateur de donner son consentement aux autorisations requises. Bien que ce guide soit principalement axé sur la gestion des comptes Microsoft Advertising via scope=https://ads.microsoft.com/msads.manage, plus de détails sur les autorisations et le consentement dans le Plateforme d'identités Microsoft sont fournis ici.

Une fois que l’utilisateur authentifie et accorde son consentement, le point de terminaison Plateforme d'identités Microsoft retourne une réponse à votre application au niveau indiquéredirect_uri, à l’aide de la méthode spécifiée dans le response_mode paramètre . Par exemple, l’URI de rappel inclut un code d’autorisation comme suit si l’utilisateur a accordé des autorisations à votre application pour gérer ses comptes Microsoft Advertising : http://localhost/myapp/?code=CodeGoesHere& state=12345.

Si l’utilisateur a accordé à votre application des autorisations pour gérer ses comptes Microsoft Advertising, vous devez utiliser le code immédiatement à l’étape suivante. La courte durée du code d’autorisation, environ 5 minutes, est susceptible d’être modifiée. Si l’utilisateur a refusé les autorisations de votre application pour gérer ses comptes Microsoft Advertising, l’URI de rappel inclut un champ de description d’erreur et d’erreur comme suit : http://localhost/myapp/?error=access_denied& error_description=ERROR_DESCRIPTION&state=ClientStateGoesHere. Pour plus d’informations sur les erreurs OAuth, consultez Erreurs OAuth courantes et Codesd’erreur d’authentification et d’autorisation.

Le tableau suivant inclut les paramètres que les clients de l’API Bing Ads peuvent inclure dans la demande de consentement. Pour plus d’informations sur les paramètres facultatifs, consultez la documentation sur le flux de code d’autorisation Plateforme d'identités Microsoft OAuth 2.0.

Paramètre Requis/Facultatif Description
client_id obligatoire ID d’application (client) attribué par le portail Portail Azure - inscriptions d'applications à votre application.
code_challenge recommandé Utilisé pour sécuriser les octrois de code d’autorisation via la clé de preuve pour l’échange de code (PKCE). Obligatoire si code_challenge_method est inclus. Pour plus d’informations, consultez le RFC PKCE. Cette option est désormais recommandée pour tous les types d’applications : applications natives, API et clients confidentiels comme les applications web.
code_challenge_method recommandé Méthode utilisée pour encoder le code_verifier pour le code_challenge paramètre . Peut être l’une des valeurs suivantes :

- plain
- S256

S’il est exclu, code_challenge est supposé être en texte clair si code_challenge est inclus. Plateforme d'identités Microsoft prend en charge à la fois plain et S256. Pour plus d’informations, consultez le RFC PKCE.
prompt facultatif Indique le type d’interaction utilisateur requis par votre application. Les valeurs prises en charge sont les suivantes :
- prompt=login force l’utilisateur à entrer ses informations d’identification sur cette demande, ce qui annule l’authentification unique.
- prompt=none est l’opposé de « connexion », c’est-à-dire qu’il garantit que l’utilisateur ne reçoit aucune invite interactive que ce soit. Si la demande ne peut pas être effectuée en mode silencieux via l’authentification unique, le point de terminaison Plateforme d'identités Microsoft retourne une erreur interaction_required.
- prompt=consent déclenche la boîte de dialogue de consentement OAuth une fois que l’utilisateur se connecte, en demandant à l’utilisateur d’accorder des autorisations à l’application.
- prompt=select_account interrompt l’authentification unique et fournit l’expérience de sélection du compte, en répertoriant tous les comptes de session ou tout compte mémorisé, ou en choisissant d’utiliser un autre compte.
redirect_uri obligatoire La redirect_uri de votre application, où les réponses d’authentification peuvent être envoyées et reçues par votre application. Il doit correspondre exactement à l’une des redirect_uris que vous avez inscrites dans le portail, sauf qu’il doit être encodé en URL. Pour les applications mobiles natives &, vous devez utiliser la valeur par défaut de https://login.microsoftonline.com/common/oauth2/nativeclient.
response_mode recommandé Spécifie la méthode à utiliser pour renvoyer le jeton obtenu à votre application. Les options disponibles sont :

- query
- fragment
- form_post

query fournit le code sous la forme d’un paramètre de chaîne de requête sur votre URI de redirection. Si vous demandez un jeton d’ID à l’aide du flux implicite, vous ne pouvez pas utiliser query comme spécifié dans la spécification OpenID. Si vous demandez uniquement le code, vous pouvez utiliser query, fragmentou form_post. form_post exécute une requête POST contenant le code vers votre URI de redirection. Pour plus d’informations, consultez Protocole OpenID Connect.
response_type obligatoire Doit inclure code pour le flux de codes d’autorisation.
scope obligatoire Liste d’étendues séparées par des espaces pour lesquelles vous souhaitez que l’utilisateur donne son consentement. Veillez à inclure https://ads.microsoft.com/msads.manage pour inviter l’utilisateur à accéder à Microsoft Advertising. Inclure offline_access pour vous assurer qu’un jeton d’actualisation est inclus dans la réponse.
state recommandé Valeur incluse dans la requête qui sera également retournée dans la réponse du jeton. Il peut s’agir d’une chaîne de n’importe quel contenu que vous souhaitez. Une valeur unique générée de manière aléatoire est généralement utilisée pour empêcher les attaques de falsification de requête intersites. La valeur peut également encoder des informations sur l’état de l’utilisateur dans l’application avant la demande d’authentification, telles que la page ou l’affichage sur lequel il se trouve.
tenant obligatoire La valeur {tenant} dans le chemin d’accès de la requête peut être utilisée pour contrôler qui peut se connecter à l’application. Pour vous assurer que votre application prend en charge les comptes personnels MSA et les comptes professionnels ou scolaires Azure AD, nous vous suggérons d’utiliser common comme locataire pour l’authentification de l’API Bing Ads.

Si votre application nécessite un autre locataire, consultez Plateforme d'identités Microsoft points de terminaison pour plus d’informations.

Étapes suivantes

Voir aussi

Prise en main