Leer en inglés

Compartir a través de


Requisito de autenticación multifactor

Ya se requiere la autenticación multifactor en Microsoft Advertising online. La autenticación multifactor es un proceso de seguridad que requiere que compruebe su identidad de dos maneras diferentes.

Importante

A partir del 1 de junio de 2022, se requiere gradualmente la autenticación multifactor para que los clientes que inicien sesión a través de aplicaciones de terceros usen Bing Ads API, Content API y Hotel API.

Debe actualizar la aplicación para obtener el consentimiento del usuario mediante el nuevo msads.manage ámbito. Todos los desarrolladores de aplicaciones deben realizar acciones para usar el nuevo ámbito.

El nuevo msads.manage ámbito requiere el consentimiento renovado de todos los usuarios de la aplicación. Debe solicitar a los usuarios el consentimiento mediante el nuevo msads.manage ámbito independientemente de si han activado o no la autenticación multifactor. Esto garantiza que proporcionen una segunda forma de identificación o prueba al conceder su consentimiento a la aplicación.

Acción necesaria

Debe actualizar la aplicación y pedir a los usuarios su consentimiento mediante msads.manage el ámbito a través del punto de conexión de Plataforma de identidad de Microsoft. Todos los desarrolladores de Microsoft Advertising deben tomar medidas para usar el nuevo ámbito.

Con cada solicitud de API comprobaremos el token de acceso para asegurarse de que el usuario concedió el consentimiento a través del nuevo msads.manage ámbito. Tras la aplicación de la autenticación multifactor, no se aceptará ningún token de acceso aprovisionado de lo contrario.

Se recomienda realizar los cambios necesarios lo antes posible.

También se recomienda informar y guiar a los usuarios de la aplicación para configurar MFA para que se requiera una segunda prueba cuando concedan permisos para cualquier aplicación. Para el requisito de Microsoft Advertising, no es suficiente para que activen MFA. En cualquier caso, debe obtener el consentimiento del usuario solicitando el msads.manage ámbito.

Después de la aplicación

Tras la aplicación de MFA, solo autenticaremos tokens de acceso en nombre de un usuario que concedió consentimiento a la aplicación a través del msads.manage ámbito en el punto de conexión de Plataforma de identidad de Microsoft.

  • Antes de la aplicación de MFA, el punto de conexión Plataforma de identidad de Microsoft admite el ads.manage ámbito. Los tokens de acceso que adquiera para los usuarios a través del ámbito ads.manage ya no se aceptarán.

  • Antes de la aplicación de MFA, el punto de conexión Live Connect admite el bingads.manage ámbito. El punto de conexión Live Connect ya está en desuso y ya no se admitirá. Los tokens de acceso que adquiera para los usuarios a través del bingads.manage ámbito ya no se aceptarán.

Compatibilidad con SDK

La compatibilidad con el nuevo msads.manage ámbito está disponible a partir de la versión 13.0.10 de los SDK de Bing Ads (.NET, Java, Python y PHP).

El nuevo msads.manage ámbito se usa de forma predeterminada. Por compatibilidad con versiones anteriores, hasta la fecha de cumplimiento puede usar los ads.manage ámbitos o bingads.manage con una breve solución alternativa.

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
)

Escenarios de ejemplo

Estos son escenarios de ejemplo que podrían aplicarse a su empresa.

Ejemplo: Obtención de un nuevo token de acceso mediante la actualización con un ámbito diferente

Un token de acceso representa los permisos de un usuario para actuar en su nombre con permisos limitados basados en ámbitos. Al solicitar consentimiento para administrar sus cuentas, establece el parámetro de ámbito en ads.manage y msads.manage. Realmente está solicitando un token de acceso de usuario que tenga permisos para lo que defina el ámbito.

Importante

Tras la aplicación de la autenticación multifactor, solo se aceptará un token de acceso si se ha aprovisionado o actualizado a través del ámbito msads.manage . Puede continuar actualizando los tokens a través de ads.manage, pero la API de Bing Ads no los aceptará.

Para confirmar que se aceptará un token de acceso tras la aplicación de la autenticación multifactor, puede comprobar el ámbito de respuesta. Si el ámbito incluye msads.manage , se aceptará.

Supongamos, por ejemplo, que actualmente un usuario da su consentimiento para que la aplicación administre sus cuentas a través de los ámbitos ads.manage y msads.manage . Es posible que hayan concedido el consentimiento a través de ads.manage el mes pasado y luego hayan concedido su consentimiento a través de msads.manage este mes.

Si actualiza el token con ads.manage , la respuesta de actualización del token incluirá el ámbito ads.manage . Tras la aplicación de la autenticación multifactor, no se aceptaría "MyAccessToken-1".

{
    "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 actualiza el token con msads.manage , la respuesta de actualización del token incluirá los ámbitos ads.manage y msads.manage . Tras la aplicación de la autenticación multifactor, se aceptaría "MyAccessToken-2".

{
    "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"
}

Se devolverá un error de invalid_grant si intenta actualizar el token mediante cualquier ámbito en el que el usuario no proporcione actualmente el consentimiento.

{
    "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."
}

Consulta también

Preguntas más frecuentes sobre OAuthSolicitar consentimiento del usuario