Exigence de l’authentification multifacteur

Nous avons déjà besoin d’une authentification multifacteur dans Microsoft Advertising online. L’authentification multifacteur est un processus de sécurité qui vous oblige à vérifier votre identité de deux manières différentes.

Importante

Depuis le 1er juin 2022, nous exigeons progressivement l’authentification multifacteur pour que les clients qui se connectent via des applications tierces utilisent l’API Bing Ads, l’API de contenu et l’API d’hôtel.

Vous devez mettre à jour votre application pour obtenir le consentement de l’utilisateur à l’aide de la nouvelle msads.manage étendue. Tous les développeurs d’applications doivent prendre des mesures pour utiliser la nouvelle étendue.

La nouvelle msads.manage étendue nécessite le renouvellement du consentement de tous les utilisateurs de votre application. Vous devez inviter les utilisateurs à donner leur consentement à l’aide de la nouvelle msads.manage étendue, qu’ils aient activé ou non l’authentification multifacteur. Cela garantit qu’ils fournissent une deuxième forme d’identification ou de preuve lors de l’octroi du consentement à votre demande.

Action requise

Vous devez mettre à jour votre application et inviter les utilisateurs à donner leur consentement à l’aide msads.manage de l’étendue via le point de terminaison Plateforme d'identités Microsoft. Tous les développeurs Microsoft Advertising doivent prendre des mesures pour utiliser la nouvelle étendue.

Avec chaque demande d’API, nous allons case activée le jeton d’accès pour garantir que l’utilisateur a accordé son consentement via la nouvelle msads.manage étendue. Lors de l’application de l’authentification multifacteur, tout jeton d’accès provisionné dans le cas contraire ne sera pas accepté.

Nous vous recommandons d’apporter les modifications nécessaires dès que possible.

Nous vous recommandons également d’informer et de guider les utilisateurs de votre application pour configurer l’authentification multifacteur afin qu’une deuxième preuve soit requise lorsqu’ils accordent des autorisations pour n’importe quelle application. Pour les exigences de Microsoft Advertising, il ne leur suffit pas d’activer l’authentification multifacteur. Dans les deux cas, vous devez obtenir le consentement de l’utilisateur en y invitant l’étendue msads.manage .

Après l’application de la loi

Lors de l’application de l’authentification multifacteur, nous authentifierons uniquement les jetons d’accès pour le compte d’un utilisateur qui a donné son consentement à votre application via l’étendue msads.manage sur le point de terminaison Plateforme d'identités Microsoft.

  • Avant l’application de l’authentification multifacteur, le point de terminaison Plateforme d'identités Microsoft prend en charge l’étendueads.manage. Les jetons d’accès que vous obtenez pour les utilisateurs via l’étendue ads.manage ne seront plus acceptés.

  • Avant l’application de l’authentification multifacteur, le point de terminaison Live Connect prend en charge l’étenduebingads.manage. Le point de terminaison Live Connect est déjà déconseillé et ne sera plus pris en charge. Les jetons d’accès que vous obtenez pour les utilisateurs via l’étendue bingads.manage ne seront plus acceptés.

Prise en charge du Kit de développement logiciel

La prise en charge de la nouvelle msads.manage étendue est disponible à partir de la version 13.0.10 des Kits de développement logiciel (SDK) Bing Ads (.NET, Java, Python et PHP).

La nouvelle msads.manage étendue est utilisée par défaut. Pour la compatibilité descendante, jusqu’à la date d’application, vous pouvez utiliser les ads.manage étendues ou bingads.manage avec une solution de contournement courte.

var oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
    Settings.Default["ClientId"].ToString(),
    apiEnvironment,
    OAuthScope.ADS_MANAGE // temporary workaround; remove or use MSADS_MANAGE instead
);
OAuthDesktopMobileAuthCodeGrant oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
    ClientId, 
    ApiEnvironment,
    OAuthScope.ADS_MANAGE // temporary workaround; remove or use MSADS_MANAGE instead
);
$authentication = (new OAuthDesktopMobileAuthCodeGrant())
    ->withClientId(ClientId)
    ->withEnvironment(ApiEnvironment)
    ->withOAuthScope(OAuthScope::ADS_MANAGE); // temporary workaround; remove or use MSADS_MANAGE instead
oauth_web_auth_code_grant = OAuthDesktopMobileAuthCodeGrant(
    client_id=CLIENT_ID,
    env=ENVIRONMENT,
    oauth_scope="ads.manage" # temporary workaround; remove or use "msads.manage" instead
)

Exemples de scénarios

Voici des exemples de scénarios qui peuvent s’appliquer à votre entreprise.

Exemple : Obtenir un nouveau jeton d’accès en actualisant avec une autre étendue

Un jeton d’accès représente les autorisations d’un utilisateur pour agir en son nom avec des autorisations limitées en fonction des étendues. Lorsque vous demandez le consentement pour gérer leurs comptes, vous définissez le paramètre d’étendue sur ads.manage et msads.manage. Vous demandez vraiment un jeton d’accès utilisateur qui dispose d’autorisations pour tout ce qui est défini par l’étendue.

Importante

Lors de l’application de l’authentification multifacteur, un jeton d’accès n’est accepté que s’il a été provisionné ou actualisé via l’étendue msads.manage . Vous pouvez continuer à actualiser les jetons via ads.manage, mais l’API Bing Ads ne les accepte pas.

Pour confirmer qu’un jeton d’accès sera accepté lors de l’application de l’authentification multifacteur, vous pouvez case activée l’étendue de la réponse. Si l’étendue inclut msads.manage , elle est acceptée.

Supposons, par exemple, qu’un utilisateur accepte actuellement que votre application gère ses comptes via les étendues ads.manage et msads.manage . Ils peuvent avoir accordé leur consentement via ads.manage le mois dernier, puis le consentement via msads.manage ce mois-ci.

Si vous actualisez le jeton avec ads.manage, la réponse d’actualisation du jeton inclut l’étendue ads.manage . Lors de l’application de l’authentification multifacteur, « MyAccessToken-1 » n’est pas accepté.

{
    "token_type":"Bearer",
    "scope":"https://ads.microsoft.com/ads.manage",
    "expires_in":3600,
    "ext_expires_in":3600,
    "access_token":"MyAccessToken-1",
    "refresh_token":"MyRefreshToken-1"
}

Si vous actualisez le jeton avec msads.manage, la réponse d’actualisation du jeton inclut les étendues ads.manage et msads.manage . Lors de l’application de l’authentification multifacteur, « MyAccessToken-2 » est accepté.

{
    "token_type":"Bearer",
    "scope":"https://ads.microsoft.com/msads.manage https://ads.microsoft.com/ads.manage",
    "expires_in":3600,
    "ext_expires_in":3600,
    "access_token":"MyAccessToken-2",
    "refresh_token":"MyRefreshToken-2"
}

Une erreur de invalid_grant est retournée si vous tentez d’actualiser le jeton à l’aide d’une étendue où l’utilisateur ne donne actuellement pas son consentement.

{
    "error":"invalid_grant",
    "error_description":"AADSTS70000: The request was denied because one or more scopes requested are unauthorized or expired. The user must first sign in and grant the client application access to the requested scope."
}

Voir aussi

FAQ OAuthDemander le consentement de l’utilisateur