Compartir a través de


Solicitud de consentimiento del usuario

Importante

En junio de 2022, introdujimos la autenticación multifactor como requisito para Bing Ads. Es posible que tenga que realizar un cambio de código para cumplir con este requisito. Microsoft Advertising está realizando comprobaciones técnicas de cumplimiento a principios de octubre.

En esta entrada de blog se describen los pasos que debe seguir para garantizar el cumplimiento.

Para obtener más información, consulte la guía de requisitos de autenticación multifactor .

Una vez que haya registrado una aplicación, debe obtener el consentimiento del usuario para administrar su cuenta de Microsoft Advertising.

Sugerencia

Para obtener ayuda para solucionar problemas, consulte la guía de errores comunes de OAuth .

Importante

Se debe solicitar a cada usuario y dar su consentimiento a través de un control de explorador web al menos una vez para que la aplicación administre sus cuentas de Microsoft Advertising. Se trata de un flujo estándar de OAuth 2.0 y se define en detalle en la sección Concesión de código de autorización de la especificación de OAuth 2.0.

El flujo de código de autorización comienza con el cliente que dirige al usuario al punto de /authorize conexión. En esta solicitud, el cliente indica los permisos que necesita adquirir del usuario:

Nota:

Reemplace your_client_id siguiente por el identificador de aplicación (cliente) que el portal de registros de aplicaciones de Azure Portal asignó a la aplicación.

// 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. Copie la dirección URL siguiente y péguela en el explorador para ejecutar esta solicitud de ejemplo de consentimiento del usuario.

Nota:

Reemplace your_client_id en la dirección URL siguiente por el identificador de aplicación (cliente) que el portal de registros de aplicaciones de Azure Portal asignó a la aplicación.

<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. Inicie sesión con sus credenciales de cuenta de Microsoft y conceda su consentimiento a la aplicación para administrar sus cuentas de Microsoft Advertising.
  2. Después de iniciar sesión, se debe redirigir el explorador a https://localhost/myapp/ con un code elemento en la barra de direcciones. Puede omitir el mensaje de error en la página.
  3. A continuación, usará el código para obtener acceso y actualizar tokens.

El punto de conexión de la plataforma de identidad de Microsoft también garantizará que el usuario haya dado su consentimiento a los permisos indicados en el parámetro de scope consulta. Si el usuario no ha dado su consentimiento a ninguno de esos permisos, pedirá al usuario que dé su consentimiento a los permisos necesarios. Aunque esta guía se centra principalmente en la administración de cuentas de Microsoft Advertising a través scope=https://ads.microsoft.com/msads.managede , aquí se proporcionan más detalles sobre los permisos y el consentimiento en la plataforma de identidad de Microsoft.

Una vez que el usuario se autentique y conceda su consentimiento, el punto de conexión de la plataforma de identidad de Microsoft devolverá una respuesta a la aplicación en el indicado redirect_urimediante el método especificado en el response_mode parámetro . Por ejemplo, el URI de devolución de llamada incluye un código de autorización como se indica a continuación si el usuario concedió permisos a la aplicación para administrar sus cuentas de Microsoft Advertising: http://localhost/myapp/?code=CodeGoesHere& state=12345.

Si el usuario concedió a la aplicación permisos para administrar sus cuentas de Microsoft Advertising, debe usar el código inmediatamente en el paso siguiente. La breve duración del código de autorización, aproximadamente 5 minutos, está sujeta a cambios. Si el usuario denegó los permisos de la aplicación para administrar sus cuentas de Microsoft Advertising, el URI de devolución de llamada incluye un campo de descripción de error y error como se indica a continuación: http://localhost/myapp/?error=access_denied& error_description=ERROR_DESCRIPTION&state=ClientStateGoesHere. Para obtener más información sobre los errores de OAuth, consulte Errores comunes de OAuth y Códigos de error de autenticación y autorización.

En la tabla siguiente se incluyen los parámetros que los clientes de la API de Bing Ads pueden incluir en la solicitud de consentimiento. Para obtener más información sobre los parámetros opcionales, consulte la documentación del flujo de código de autorización de OAuth 2.0 de la plataforma de identidad de Microsoft.

Parámetro Obligatorio/opcional Descripción
client_id necesario Identificador de aplicación (cliente) que el portal de registros de aplicaciones de Azure Portal asignó a la aplicación.
code_challenge recomendado Se usa para proteger las concesiones de código de autorización a través de la clave de prueba para el intercambio de código (PKCE). Obligatorio si code_challenge_method está incluido. Para obtener más información, consulte RFC de PKCE. Ahora se recomienda para todos los tipos de aplicación: aplicaciones nativas, SPA y clientes confidenciales como aplicaciones web.
code_challenge_method recomendado Método usado para codificar para code_verifier el code_challenge parámetro . Puede ser uno de los siguientes valores:

- plain
- S256

Si se excluye, code_challenge se supone que es texto no cifrado si code_challenge se incluye. La plataforma de identidad de Microsoft admite tanto plain como S256. Para obtener más información, consulte RFC de PKCE.
prompt opcional Indica el tipo de interacción del usuario que requiere la aplicación. Entre los valores admitidos se incluyen los siguientes:
- prompt=login obligará al usuario a escribir sus credenciales en esa solicitud, negando el inicio de sesión único.
- prompt=none es lo contrario de "inicio de sesión", es decir, se asegurará de que el usuario no se presente con ningún aviso interactivo. Si la solicitud no se puede completar de forma silenciosa a través del inicio de sesión único, el punto de conexión de la plataforma de identidad de Microsoft devolverá un error interaction_required.
- prompt=consent desencadenará el cuadro de diálogo de consentimiento de OAuth después de que el usuario inicie sesión, solicitando al usuario que conceda permisos a la aplicación.
- prompt=select_account interrumpirá el inicio de sesión único y proporcionará la experiencia de selección de la cuenta, enumerando todas las cuentas de la sesión o cualquier cuenta recordada o una opción para elegir usar una cuenta diferente por completo.
redirect_uri necesario El redirect_uri de la aplicación, donde la aplicación puede enviar y recibir respuestas de autenticación. Debe coincidir exactamente con uno de los redirect_uris que registró en el portal, excepto que debe estar codificado como dirección URL. Para las aplicaciones móviles nativas &, debe usar el valor predeterminado de https://login.microsoftonline.com/common/oauth2/nativeclient.
response_mode recomendado Especifica el método que se debe usar para devolver el token resultante a la aplicación. Puede ser uno de las siguientes:

- query
- fragment
- form_post

query proporciona el código como parámetro de cadena de consulta en el URI de redireccionamiento. Si va a solicitar un token de identificador mediante el flujo implícito, no puede usar query como se especifica en la especificación OpenID. Si solo solicita el código, puede usar query, fragmento form_post. form_post ejecuta un POST que contiene el código en el URI de redireccionamiento. Para obtener más información, consulte Protocolo OpenID Connect.
response_type necesario Debe incluir code para el flujo del código de autorización.
scope necesario Una lista separada por espacios de ámbitos a los que desea que el usuario dé su consentimiento. Asegúrese de incluir https://ads.microsoft.com/msads.manage para solicitar al usuario acceso a Microsoft Advertising. Incluya offline_access para asegurarse de que se incluye un token de actualización en la respuesta.
state recomendado Valor incluido en la solicitud que también se devolverá en la respuesta del token. Puede ser una cadena de cualquier contenido que desee. Normalmente, se usa un valor único generado aleatoriamente para evitar ataques de falsificación de solicitudes entre sitios. El valor también puede codificar información sobre el estado del usuario en la aplicación antes de que se produjera la solicitud de autenticación, como la página o vista en la que se encontraba.
tenant necesario Se puede usar el valor {tenant} de la ruta de acceso de la solicitud para controlar quién puede iniciar sesión en la aplicación. Para asegurarse de que la aplicación admite cuentas personales de MSA y cuentas profesionales o educativas de Azure AD, se recomienda usar common como inquilino para la autenticación de bing Ads API.

En caso de que la aplicación requiera otro inquilino, consulte Puntos de conexión de la plataforma de identidad de Microsoft para obtener más información.

Pasos siguientes

Consulta también

Introducción