Saltar al contenido
Google Workspace

Onboarding Google Workspace (Gmail) — modalidad archivo

Esta guía es para el administrador del dominio Google Workspace del cliente. Es el paralelo de la guía Microsoft 365, adaptado a Workspace.

Tiempo: ~25 minutos. Permisos que necesitas: Super Admin de Google Workspace.

Antes de empezar — qué cambia y qué no

Lo que NO cambia:

  • Tu MX, SPF, DKIM, DMARC permanecen iguales.
  • Gmail sigue entrando exactamente como hoy.
  • Aplicaciones cliente (Gmail web, Apple Mail, Outlook conectado a Gmail vía IMAP) — sin tocar.

Lo que añades:

  • Un service account de Google Cloud + Domain-Wide Delegation que solo lee mensajes (no envía, no borra) y solo de los usuarios del piloto.
  • Una routing rule en Workspace Admin que añade BCC ciego a un destinatario nuestro por cada mensaje del piloto.

Paso 1 — Service account en Google Cloud

Google Cloud Console → proyecto a elegir (puedes crear uno nuevo ics-jmail-archive o reutilizar uno que ya gestiones).

APIs & Services → Enabled APIs → Enable APIs and services:

  • Habilitar Gmail API.
  • Habilitar Admin SDK API.

IAM & Admin → Service Accounts → Create Service Account:

CampoValor
Nameics-jmail-archive
DescriptionICS jmail.com.es archive — Gmail bulk + resync
(Sin roles a nivel proyecto — el acceso viene por DWD, no IAM)

Tras crearla, en la pestaña Keys del service account → Add key → Create new key → JSON. Descarga el JSON y guárdalo en sitio seguro: nos lo pasarás vía Vaultwarden.

Anota también:

  • El email del service account (ics-jmail-archive@<tu-proyecto>.iam.gserviceaccount.com).
  • El Unique ID del service account (Numeric — visible en la pestaña Details).

Paso 2 — Domain-Wide Delegation en Workspace

Workspace Admin Console → Security → Access and data control → API controls → Manage Domain-Wide Delegation.

Add new y poner:

CampoValor
Client IDel Unique ID del service account del paso 1
OAuth scopeshttps://www.googleapis.com/auth/gmail.readonly
Overwrite existing client ID(sin marcar)
gmail.readonly permite leer mensajes pero no enviar, no modificar, no borrar. Si en futuro activamos “borrar lo viejo en origen”, pediremos gmail.modify adicional.

Paso 3 — Grupo o OU para acotar el piloto

DWD por defecto da al service account acceso a todos los usuarios del dominio. Para piloto restringimos vía OAuth API Controls → Manage Third-Party App Access → App Access Controls.

Camino más limpio para piloto:

  1. Workspace Admin → Directory → Groups → crear grupo archive-pilot-jmail@<tu-dominio> y añadir los buzones piloto.
  2. Security → Access and data control → API controls → Domain wide delegation → editar la entrada del paso 2 → en “Trusted for” (si tu versión de Workspace ya lo expone) acotar a ese grupo.

La opción de scope-restriction-per-DWD existe en planes Workspace Enterprise pero no en todos los SKU Business. Si tu plan no la tiene, hay dos alternativas:

  • Trust nivel dominio: el service account ve todos los buzones, y nosotros nos comprometemos por contrato a operar solo sobre los buzones piloto. Auditable lado nuestro, pero el admin del dominio confía en nosotros más allá de lo técnico.
  • Service account por OU: usar Google Cloud Identity Premium con app-acquired user mapping. Más laborioso. Lo evaluamos contigo si el SKU lo requiere.

Si dudas qué tienes, dinos tu plan Workspace y te decimos qué camino seguir.

Paso 4 — Routing rule “Add Bcc”

Workspace Admin Console → Apps → Google Workspace → Gmail → Routing.

Hay dos lugares donde se puede configurar:

  • Routing (recomendado): aplica a entrada y salida.
  • Compliance → Content compliance (alternativo): permite reglas más finas.

Usamos Routing → Add Setting → “Receiving routing” + Routing → “Sending routing” — uno cada uno para capturar entrada y salida.

4.a — Receiving routing (mensajes entrantes)

Add Setting:

CampoValor
DescriptionICS jmail archive — BCC inbound
Email messages to affectInbound
For the above types of messages, do the following(avanzado) marcar Modify message
Recipients → Also deliver toarchive@<tu-dominio>.jmail.com.es
Account types to affectUsers y Groups
Filter (parte clave)Only affect specific envelope recipients → addresses listed in group → seleccionar archive-pilot-jmail@<tu-dominio>
Headersdejar default — añadir X-Jmail-Archive-Source: gmail

4.b — Sending routing (mensajes salientes)

Add Setting equivalente con:

CampoValor
DescriptionICS jmail archive — BCC outbound
Email messages to affectOutbound
Recipients → Also deliver toarchive@<tu-dominio>.jmail.com.es
Account types to affectUsers y Groups
FilterOnly affect specific envelope senders → addresses listed in group → seleccionar archive-pilot-jmail@<tu-dominio>
Headersañadir X-Jmail-Archive-Source: gmail
La propagación de cambios en Workspace Routing puede tardar hasta 30 minutos en aplicarse a todos los usuarios. Después de guardar, espera y verifica con un test antes de declarar el piloto activo.

Paso 5 — Datos que nos pasas

Para arrancar nuestro lado:

  1. El JSON del service account (paso 1) — vía Vaultwarden compartido.
  2. El email del service account y su Unique ID.
  3. Confirmación de que DWD está aplicada (paso 2).
  4. Dominios piloto (típicamente 1-2).
  5. Lista de buzones piloto (típicamente 2-5).
  6. Cuánto histórico bulk bajamos: default 6 meses.
  7. Ventana para el cutover.

Lo que pasa después de cutover

Igual que en M365 — ver sección equivalente de la guía M365.

Si algo va mal

  • No nos llega ningún BCC: confirma que el grupo archive-pilot-jmail@<tu-dominio> tiene miembros y que las routing rules apuntan a ese grupo como filtro. Workspace tarda en propagar (~30 min).
  • El service account devuelve forbidden al hacer bulk: comprueba que la DWD del paso 2 está aplicada y el scope incluye gmail.readonly (exactamente esa string, sin trailing slash).
  • Llega BCC pero solo de algunos usuarios: el filtro de la routing rule está apuntando al grupo equivocado o el usuario no está añadido al grupo.

Resumen ejecutivo — checklist enviable

1. Service account "ics-jmail-archive" en Google Cloud + JSON key.
   APIs habilitadas: Gmail API, Admin SDK API.
   Pásanos: JSON completo (vía Vaultwarden), email del SA, Unique ID.

2. Domain-Wide Delegation del SA en Workspace Admin con scope
   gmail.readonly.

3. Grupo "archive-pilot-jmail@<tu-dominio>" con los usuarios piloto.
   Si tu SKU Workspace permite, acotar DWD a ese grupo.

4. Dos routing rules en Apps → Gmail → Routing:
   - Inbound: Also deliver to archive@<tu-dominio>.jmail.com.es,
     filtro envelope recipient ∈ grupo piloto.
   - Outbound: idem para envelope sender ∈ grupo piloto.
   Ambas añaden header X-Jmail-Archive-Source: gmail.

5. Datos del piloto:
   - 1-2 dominios
   - 2-5 buzones (lista completa)
   - histórico a bulkear (default 6 meses)
   - ventana de cutover (30 min)