Incorporación de Google como proveedor de identidades para los usuarios invitados de B2B

Sugerencia

En este artículo se describe cómo agregar Google como proveedor de identidades para la colaboración B2B. Si el inquilino está configurado para la administración de identidades y acceso de clientes, consulte Incorporación de Google como proveedor de identidades para los clientes.

Si configura la federación con Google, puede permitir que los usuarios invitados puedan iniciar sesión en sus aplicaciones y recursos compartidos con sus propias cuentas de Google, sin tener que crear cuentas Microsoft. Después de agregar Google como una de las opciones de inicio de sesión de la aplicación, en la página Iniciar sesión, el usuario puede escribir la dirección de correo electrónico de Gmail que utiliza para iniciar sesión en Google.

Sign in options for Google users

Nota:

La federación de Google está diseñada específicamente para los usuarios de Gmail. Para la federación con dominios de Google Workspace, use la federación del proveedor de identidades de SAML/WS-Fed.

Importante

  • A partir del 12 de julio de 2021, si los clientes de Microsoft Entra B2B configuran nuevas integraciones de Google para su uso con el registro de autoservicio o para invitar a usuarios externos para sus aplicaciones personalizadas o de línea de negocio, la autenticación podría bloquearse para los usuarios de Gmail (con la pantalla de error que se muestra en la página Qué esperar). Este problema solo se produce si crea la integración de Google para flujos de usuario de registro de autoservicio o invitaciones después del 12 de julio de 2021, y las autenticaciones de Gmail en las aplicaciones personalizadas o de línea de negocio no se han movido a las vistas web del sistema. Dado que las vistas web del sistema están habilitadas de forma predeterminada, la mayoría de las aplicaciones no se verán afectadas. Para evitar el problema, le recomendamos encarecidamente que traslade las autenticaciones de Gmail a exploradores del sistema antes de crear nuevas integraciones de Google para el registro de autoservicio. Consulte Acción necesaria para las vistas web insertadas.
  • A partir del 30 de septiembre de 30, 2021, , Google retira la compatibilidad con el inicio de sesión en vista web. Si sus aplicaciones autentican a los usuarios con una vista web insertada y va a usar la federación de Google con Azure AD B2C o Microsoft Entra B2B para las invitaciones de usuarios externos o el registro de autoservicio, los usuarios de Google Gmail no podrán autenticarse. Más información.

¿Cuál es la experiencia del usuario de Google?

Puede invitar a un usuario de Google a la colaboración B2B de varias maneras. Por ejemplo, puede agregarlos al directorio a través del Centro de administración de Microsoft Entra. Cuando este usuario canjee su invitación, su experiencia variará en función de si ya ha iniciado sesión o no en Google:

  • Se pedirá a los usuarios invitados que no hayan iniciado sesión en Google que lo hagan.
  • Se pedirá a los usuarios invitados que ya hayan iniciado sesión en Google que elijan la cuenta que desean usar. Deben elegir la cuenta donde hayan recibido la invitación.

Los usuarios invitados que ven un error "encabezado demasiado largo" pueden eliminar sus cookies o abrir una ventana privada o de incógnito e intentar iniciar sesión de nuevo.

Screenshot that shows the Google sign-in page.

Puntos de conexión de inicio de sesión

Ahora, los usuarios invitados de Google pueden iniciar sesión en sus aplicaciones multiinquilino o en las aplicaciones propias de Microsoft utilizando un punto de conexión común (en otras palabras, una dirección URL general de la aplicación que no incluya el contexto del inquilino). Durante el proceso de inicio de sesión, el usuario invitado elige Opciones de inicio de sesión y después selecciona Sign in to an organization (Iniciar sesión en una organización). A continuación, el usuario escribe el nombre de la organización y continúa iniciando sesión con las credenciales de Google.

Los usuarios invitados de Google también pueden usar puntos de conexión de la aplicación que incluyan la información del inquilino; por ejemplo:

  • https://myapps.microsoft.com/?tenantid=<your tenant ID>
  • https://myapps.microsoft.com/<your verified domain>.onmicrosoft.com
  • https://portal.azure.com/<your tenant ID>

También puede proporcionar a los usuarios invitados de Google un vínculo directo a una aplicación o recurso que incluya la información del inquilino; por ejemplo, https://myapps.microsoft.com/signin/Twitter/<application ID?tenantId=<your tenant ID>.

Desuso de la compatibilidad con el inicio de sesión en vista web

A partir del 30 de septiembre de 2021, Google retira la compatibilidad con el inicio de sesión en la vista web insertada. Si sus aplicaciones autentican a los usuarios con una vista web insertada y va a usar la federación de Google con Azure AD B2C o Microsoft Entra B2B para las invitaciones de usuarios externos o el registro de autoservicio, los usuarios de Google Gmail no podrán autenticarse.

Estos son escenarios conocidos que afectarán a los usuarios de Gmail:

  • Aplicaciones de Microsoft (por ejemplo, Teams y Power Apps) en Windows
  • Aplicaciones de Windows que usan el control WebView, WebView2 o el control WebBrowser anterior, para la autenticación. Estas aplicaciones deben migrarse para usar el flujo Administrador de cuentas web (WAM).
  • Aplicaciones Android que usan el elemento de interfaz de usuario WebView
  • Aplicaciones iOS con UIWebView/WKWebview
  • Aplicaciones que usan ADAL

Este cambio no afecta a:

  • Aplicaciones web
  • Servicios de Microsoft 365 a los que se accede a través de un sitio web (por ejemplo, SharePoint Online, aplicaciones web de Office y aplicación web de Teams)
  • Aplicaciones móviles que usan vistas web del sistema para la autenticación (SFSafariViewController en iOS, Pestañas personalizadas en Android).
  • Identidades de Google Workspace, por ejemplo cuando usa la federación basada en SAML con Google Workspace.
  • Aplicaciones de Windows que usan el Administrador de cuentas web (WAM) o el Agente de autenticación web (WAB).

Acción necesaria para las vistas web insertadas

Modifique sus aplicaciones para que usen el explorador del sistema para el inicio de sesión. Para más información, consulte Vista web incrustada frente a explorador de sistema en la documentación de MSAL.NET. Todos los SDK de MSAL usan el explorador del sistema de forma predeterminada.

Qué esperar

A partir del 30 de septiembre, Microsoft implantará globalmente un flujo de inicio de sesión del dispositivo que actúa como solución alternativa para las aplicaciones que aún usan vistas web insertadas para asegurarse de que la autenticación no se bloquea.

Inicio de sesión con el flujo de inicio de sesión del dispositivo

El flujo de inicio de sesión del dispositivo solicita a los usuarios que inicien sesión con una cuenta de Gmail en una vista web insertada que escriban un código en un explorador independiente para terminar el proceso. Si los usuarios inician sesión con su cuenta de Gmail por primera vez sin sesiones activas en el explorador, verán la siguiente secuencia de pantallas. Si una cuenta de Gmail existente ya ha iniciado sesión, es posible que se eliminen algunos de estos pasos.

  1. En la pantalla Iniciar sesión, el usuario escribe su dirección de Gmail y selecciona Siguiente.

    Screenshot showing the sign-in screen

  2. Aparece la siguiente pantalla, en la que se le pide al usuario que abra una nueva ventana, vaya a https://microsoft.com/devicelogin y escriba el código alfanumérico de nueve dígitos que se muestra.

    Screenshot showing the 9-digit code

  3. Se abre la página de inicio de sesión del dispositivo, donde el usuario puede escribir el código.

    Screenshot showing the device sign-in page

  4. Si los códigos coinciden, por motivos de seguridad, se pide al usuario que vuelva a escribir su correo electrónico para confirmar la aplicación y la ubicación de inicio de sesión.

    Screenshot showing the screen for reentering email

  5. El usuario inicia sesión en Google con su correo electrónico y contraseña.

    Screenshot showing the Google sign-in screen

  6. Una vez más, se les pide que confirmen la aplicación en la que inician sesión.

    Screenshot showing application confirmation screen

  7. El usuario selecciona Continuar. Un mensaje confirma que han iniciado sesión. El usuario cierra la pestaña o ventana y se le devuelve a la primera pantalla, donde ahora ha iniciado sesión en la aplicación.

    Screenshot showing sign-in confirmation

Como alternativa, puede hacer que los usuarios de Gmail nuevos y existentes inicien sesión con el código de acceso de un solo uso por correo electrónico. Para que los usuarios de Gmail usen el código de acceso de un solo uso por correo electrónico:

  1. Habilitación del código de acceso de un solo uso por correo electrónico.
  2. Elimine la federación de Google.
  3. Restablezca el estado de canje de los usuarios de Gmail para que puedan usar el código de acceso de un solo uso por correo electrónico en el futuro.

Si desea solicitar una extensión, los clientes con identificadores de cliente de OAuth afectados deben haber recibido un correo electrónico de los desarrolladores de Google con la siguiente información relacionada con una extensión de aplicación de directivas de un solo uso, que debe completarse antes del 31 de enero de 2022:

  • "Si es necesario, puede solicitar una extensión de aplicación de directivas de un solo uso para vistas web insertadas para cada identificador de cliente de OAuth que aparece hasta el 31 de enero de 2022. Para mayor claridad, la directiva para vistas web insertadas se aplicará el 1 de febrero de 2022 sin excepciones ni extensiones."

Las aplicaciones que se migran a una vista web permitida para la autenticación no se verán afectadas, y los usuarios podrán autenticarse a través de Google como de costumbre.

Si las aplicaciones no se migran a una vista web permitida para la autenticación, los usuarios de Gmail afectados verán la pantalla siguiente.

Google sign-in error if apps are not migrated to system browsers

Distinción entre CEF/Electron y vistas web insertadas

Además del desuso de la vista web insertada y la compatibilidad con el inicio de sesión en el marco, Google también va a dejar de usar la autenticación de Gmail basada en Chromium Embedded Framework (CEF). En el caso de las aplicaciones basadas en CEF, como las aplicaciones de Electron, Google deshabilitará la autenticación el 30 de junio de 2021. Las aplicaciones afectadas han recibido un aviso de Google directamente y no se tratan en esta documentación. Este documento pertenece a las vistas web insertadas descritas anteriormente, que Google restringirá en una fecha diferente a partir del 30 de septiembre de 2021.

Acción necesaria para marcos insertados

Siga la guía de Google para determinar si sus aplicaciones se verán afectadas por este cambio.

Paso 1: configuración de un proyecto de desarrollador de Google

En primer lugar, cree un nuevo proyecto en la consola de desarrolladores de Google para obtener un Id. de cliente y un secreto de cliente que pueda agregar después a Microsoft Entra External ID.

  1. Vaya a las API de Google de https://console.developers.google.com e inicie sesión con su cuenta de Google. Se recomienda utilizar una cuenta de Google compartida con el equipo.

  2. Si se le solicita, acepte los términos del servicio.

  3. Cree un proyecto: en la parte superior de la página, seleccione el menú del proyecto para abrir la página Selección de un proyecto. Elija Nuevo proyecto.

  4. En la página Nuevo proyecto, escriba un nombre para el proyecto (por ejemplo, MyB2BApp) y, luego, seleccione Crear:

    Screenshot that shows a New Project page.

  5. Abra el proyecto nuevo seleccionando el vínculo en el cuadro de mensaje Notificaciones o con el menú del proyecto en la parte superior de la página.

  6. En el menú de la izquierda, selecciona API y servicios y después selecciona Pantalla de consentimiento de OAuth.

  7. En Tipo de usuario, seleccione Externo y, luego, Crear.

  8. En la pantalla de consentimiento de OAuth, en Información de la aplicación, escriba un nombre de aplicación.

  9. En Correo electrónico de soporte del usuario, seleccione una dirección de correo electrónico.

  10. En Dominios autorizados, seleccione Agregar dominio y, luego, agregue el dominio microsoftonline.com.

  11. En Información de contacto del desarrollador, escriba una dirección de correo electrónico.

  12. Seleccione Guardar y continuar.

  13. En el menú de la izquierda, seleccione Credenciales.

  14. Seleccione Crear credenciales y, luego, Identificador de cliente de OAuth.

  15. En el menú Tipo de aplicación, seleccione Aplicación web. Asigne un nombre adecuado a la aplicación, como Microsoft Entra B2B. En URI de redireccionamiento autorizados, agregue estos URI:

    • https://login.microsoftonline.com
    • https://login.microsoftonline.com/te/<tenant ID>/oauth2/authresp
      (donde <tenant ID> es el id. de inquilino)
    • https://login.microsoftonline.com/te/<tenant name>.onmicrosoft.com/oauth2/authresp
      (donde <tenant name> es el nombre del inquilino)

    Nota:

    Para encontrar su id. de arrendatario cliente, inicie sesión en el Centro de administración de Microsoft Entra. En Identidad, seleccione Información general y copie el Id. de inquilino.

  16. Seleccione Crear. Copie el identificador de cliente y el secreto de cliente. Lo usará al agregar el proveedor de identidades en el Centro de administración de Microsoft Entra.

    Screenshot that shows the OAuth client ID and client secret.

  17. Puede dejar el proyecto con el estado de publicación Pruebas y agregar usuarios de prueba a la pantalla de consentimiento de OAuth. O bien, puede seleccionar el botón Publicar aplicación en la pantalla de consentimiento de OAuth para que la aplicación esté disponible para cualquier usuario con una cuenta de Google.

    Nota

    En algunos casos, la aplicación podría requerir la verificación por parte de Google (por ejemplo, si actualiza el logotipo de la aplicación). Para más información, consulte la ayuda sobre el estado de comprobación de Google.

Paso 2: Configurar la federación de Google en Microsoft Entra External ID

Defina ahora el identificador y el secreto de cliente de Google. Para hacerlo, puede usar el Centro de administración de Microsoft Entra o PowerShell. No olvide probar la configuración de la federación de Google; para ello, invítese a usted mismo. Use una dirección de Gmail e intente canjear la invitación con su cuenta de Google invitada.

Para configurar la federación de Google en el Centro de administración de Microsoft Entra

  1. Inicie sesión en el Centro de administración de Microsoft Entra al menos como Administrador del proveedor de identidades externo.

  2. Vaya a Identidad>Identidades externas>Todos los proveedores de identidades y seleccione el botónGoogle.

  3. Escriba el identificador y el secreto de cliente que obtuvo anteriormente. Seleccione Guardar:

    Screenshot that shows the Add Google identity provider page.

Configuración de la federación de Google con PowerShell

  1. Instale la última versión del módulo Microsoft Graph de PowerShell.

  2. Conéctese al inquilino mediante el comando Connect-MgGraph.

  3. En el símbolo del sistema, inicie sesión con la cuenta de administrador global administrada.

  4. Ejecute los comandos siguientes:

    $params = @{
       "@odata.type" = "microsoft.graph.socialIdentityProvider"
       displayName = "Login with Google"
       identityProviderType = "Google"
       clientId = "<client ID>"
       clientSecret = "<client secret>"
    }
    
    New-MgIdentityProvider -BodyParameter $params
    

    Nota:

    Use el identificador y el secreto de cliente de la aplicación que creó en "Paso 1: Configuración de un proyecto de desarrollador de Google". Para más información, consulte New-MgIdentityProvider.

Agregación del proveedor de identidades de Google a un flujo de usuario

En este momento, el proveedor de identidades de Google se configura en el inquilino de Microsoft Entra. Los usuarios que canjeen invitaciones suyas pueden utilizar Google para iniciar sesión. Sin embargo, si ha creado flujos de usuario del registro de autoservicio, también debe agregar Google a las páginas de inicio de sesión de los flujos de usuario. Para agregar el proveedor de identidades de Google a un flujo de usuario:

  1. Vaya a Identidad> Identidades externas> Flujos de usuarios.

  2. Seleccione el flujo de usuario en el que quiere agregar el proveedor de identidades de Google.

  3. En Configuración, seleccione Proveedores de identidades.

  4. En la lista de proveedores de identidades, seleccione Google.

  5. Seleccione Guardar.

¿Cómo se quita la federación de Google?

La configuración de la federación de Google se puede eliminar. Si lo hace, los usuarios invitados de Google que ya hayan canjeado su invitación no podrán iniciar sesión. Sin embargo, puede concederles acceso de nuevo a sus recursos al restablecer el estado de canje.

Para eliminar la federación de Google en el Centro de administración de Microsoft Entra

  1. Inicie sesión en el Centro de administración de Microsoft Entra al menos como Administrador del proveedor de identidades externo.

  2. Vaya a Identidad>External Identities>Todos los proveedores de identidades.

  3. En la línea de Google, seleccione el botón de puntos suspensivos ( ... ) y, a continuación, seleccione Eliminar.

    Screenshot that shows the Delete button for the social identity provider.

  4. Seleccione para confirmar la eliminación.

Para eliminar la federación de Google mediante PowerShell

  1. Instale la última versión del módulo Microsoft Graph de PowerShell.

  2. Conéctese al inquilino mediante el comando Connect-MgGraph.

  3. En el símbolo del sistema, inicie sesión con la cuenta de administrador global administrada.

  4. Escriba el comando siguiente:

    Remove-MgIdentityProvider -IdentityProviderBaseId Google-OAUTH
    

    Nota:

    Para obtener más información, vea Remove-MgIdentityProvider.