Planes de hosting
Servicios de hosting que se adaptan a las necesidades de tu proyecto
Planes Multicuenta
Hosting para desarrolladores, agencias y empresas, pudiendo gestionar las cuentas de tus clientes
Dominios
Registra o transfiere tu dominio de forma sencilla y al mejor precio
Soluciones
Conócenos
Cuando un cliente quiere trasladar todo el correo de un dominio alojado en Google Workspace hacia nuestros servidores, la herramienta de siempre sigue siendo imapsync. El problema es que Google ya no permite conectar por IMAP usando la contraseña normal de la cuenta, así que el método clásico --password1 'lacontraseña' no funciona contra Gmail.
En esta guía explicamos las dos formas válidas de autenticar el origen Google Workspace y, en concreto, cómo configurar una cuenta de servicio (service account) con delegación a nivel de dominio, que es la vía recomendada para migrar todas las cuentas de un dominio de una sola vez sin tener que tocar a cada usuario.
Google ha retirado el acceso por "aplicaciones menos seguras" (basic auth) de forma escalonada:
Por tanto, el IMAP "normal" con la contraseña de la cuenta ya no existe en Google Workspace. Hay que autenticar con OAuth 2.0, y para ello tenemos dos caminos.
| Cuenta de servicio (XOAUTH2) | Contraseñas de aplicación | |
|---|---|---|
| Ideal para | Migrar un dominio completo | Migrar una o pocas cuentas |
| Hay que tocar a cada usuario | No | Sí (activar verificación en 2 pasos + generar código) |
| Qué necesitas | 1 fichero JSON (lo crea el admin una vez) | Un código de 16 caracteres por cuenta |
| Acceso necesario | Admin de Workspace + Google Cloud | Acceso a cada cuenta |
Si solo vas a migrar una o dos cuentas, las contraseñas de aplicación (descritas en Trasladar cuentas Gmail a Hostsuar) son lo más rápido. Para un dominio entero, sigue con la cuenta de servicio.
Estos pasos los realiza una sola vez un superadministrador del dominio Google Workspace. Al terminar, se obtiene un fichero JSON que sirve para autenticar todas las cuentas del dominio.
Accede a console.cloud.google.com con la cuenta de administrador y crea un proyecto nuevo (por ejemplo migracion-correo) o selecciona uno existente.

En el menú lateral ve a APIs y servicios → Biblioteca, busca Gmail API y pulsa Habilitar. Este paso es imprescindible: sin la Gmail API habilitada la migración fallará al conectar.

Ve a APIs y servicios → Credenciales → Crear credenciales → Cuenta de servicio y ponle un nombre. El asistente te ofrecerá después dos pasos marcados como (opcional): "Permisos / Otorgar acceso al proyecto" (seleccionar un rol) y "Principales con acceso". Deja ambos vacíos y continúa: esta cuenta de servicio no necesita ningún rol IAM sobre el proyecto, porque el acceso a los buzones se concede en el paso 4 (delegación a nivel de dominio), no aquí. Pulsa Listo para crearla.
Después, dentro de la cuenta de servicio, entra en la pestaña Claves → Agregar clave → Crear clave nueva y elige el formato JSON (no uses P12).

Se descargará un fichero con esta estructura, que renombrarás a secret.xoauth2.json:
{ "type": "service_account", "project_id": "...", "private_key_id": "...", "private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n", "client_email": "xxx@proyecto.iam.gserviceaccount.com", "client_id": "1234567890...", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://accounts.google.com/o/oauth2/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url": "..." }
Apunta el valor de client_id del JSON (un número largo): lo necesitaremos en el siguiente paso. Es el identificador OAuth2 de la cuenta de servicio y es justo el que se pega en el campo ID de cliente de la delegación a nivel de dominio (paso 4).
Este paso es en la consola de administración de Google Workspace (admin.google.com), que es un sitio distinto del Google Cloud Console donde creaste la cuenta de servicio.
Lo más rápido es ir directamente a la URL de delegación (logueado como superadministrador):
https://admin.google.com/ac/owl/domainwidedelegation
O bien, navegando: Menú (☰) → Seguridad → Control de acceso y de datos → Controles de API → "Gestionar delegación de todo el dominio". Una vez ahí, pulsa Añadir nueva y:
client_id del paso anterior.https://mail.google.com/,https://www.googleapis.com/auth/gmail.imap_admin
Muy importante:
https://mail.google.com/es el scope de acceso IMAP completo y el que exige imapsync; es imprescindible. Añadimos ademásgmail.imap_admin, el scope específico para delegación de dominio, que fuerza a mostrar todas las etiquetas y mensajes por IMAP aunque el usuario los hubiera ocultado o tuviera límites de carpeta, de modo que no se quede nada sin migrar. Los scopes de solo lectura (gmail.readonly) no permiten iniciar sesión por IMAP y la migración no funcionará.
Pulsa Autorizar para guardar.
En la consola de administración, ve a Aplicaciones → Google Workspace → Gmail → Acceso de usuario final y asegúrate de que el acceso IMAP está activado (normalmente lo está por defecto).
Con esto, la parte de Google está lista. El administrador solo tiene que entregarnos el fichero secret.xoauth2.json y confirmar que autorizó el client_id con los scopes del paso 4.