Solucionar problemas con el inicio de sesión único (SSO)

En este documento se describen los pasos para resolver los mensajes de error más frecuentes que se reciben al integrar o usar el inicio de sesión único (SSO) basado en SAML con G Suite cuando Google es el proveedor de servicios (SP).

Configuración y activación

"Este dominio no está configurado para utilizar el inicio de sesión único"

Este error suele indicar que estás intentando usar el inicio de sesión único con una edición estándar (gratuita) de G Suite, lo que actualmente no se admite. Si tienes la certeza de que estás usando G Suite o G Suite para Centros Educativos, verifica la configuración en tu proveedor de identidades para comprobar que has introducido el nombre de tu dominio de G Suite correctamente.

"No es posible acceder a esta cuenta porque el dominio se ha configurado de forma incorrecta. Inténtalo más tarde"

Este error indica que no has configurado el inicio de sesión único correctamente en la consola de administración de Google. Para corregir la situación, sigue estos pasos:

  1. En la consola de administración de Google, accede a Seguridad > Configurar inicio de sesión único (SSO) y, a continuación, marca la casilla Configurar SSO con un proveedor de identidades de terceros.
  2. Introduce las URL de las páginas de tu organización para iniciar sesión, cerrar sesión y cambiar de contraseña en los campos correspondientes.
  3. En el campo Certificado de verificación, elige y sube un archivo de certificado de verificación válido.
  4. Haz clic en Guardar cambios, espera unos minutos a que los cambios se apliquen y prueba la integración de nuevo.

Análisis de la respuesta SAML

"Falta el parámetro de respuesta necesario, SAMLResponse"

Este mensaje de error indica que el proveedor de identidades no ha facilitado a Google ningún tipo de respuesta SAML válida. Casi con total seguridad, este problema se debe a un error en la configuración del proveedor de identidades.

  • Consulta los registros de dicho proveedor y asegúrate de que no haya nada que le impida devolver correctamente una respuesta SAML.
  • Asegúrate de que el proveedor de identidades no envíe a G Suite una respuesta SAML cifrada, puesto que G Suite solo acepta respuestas SAML que no estén cifradas. Concretamente, ten en cuenta que los Servicios de federación de Active Directory 2.0 de Microsoft suelen enviar respuestas SAML cifradas como parte de la configuración predeterminada.
"Falta el parámetro de respuesta necesario, RelayState"

En la especificación SAML 2.0 es necesario que los proveedores de identidades recuperen y devuelvan un parámetro de URL RelayState de proveedores de recursos (como G Suite). En G Suite, se proporciona este valor al proveedor de identidades en la solicitud SAML. El contenido exacto puede diferir en cada inicio de sesión. Para que la autenticación se lleve a cabo correctamente, en la respuesta SAML debe devolverse el parámetro RelayState exacto. De acuerdo con la especificación estándar SAML, tu proveedor de identidades no debe modificar el parámetro RelayState durante el flujo de acceso.

  • Evalúa con más precisión este problema capturando los encabezados HTTP durante un intento de inicio de sesión. Extrae el parámetro RelayState de los encabezados HTTP con la solicitud y la respuesta SAML, y asegúrate de que los valores de RelayState en la solicitud y en la respuesta coincidan.
  • La mayoría de los proveedores de identidades de código abierto o disponibles en el mercado transmiten el parámetro RelayState perfectamente de forma predeterminada. Para obtener una fiabilidad y seguridad óptimas, recomendamos que utilices una de las siguientes soluciones actuales, pues no podemos ofrecer asistencia para tu propio software de SSO personalizado.

Contenido de la respuesta SAML

"No se puede acceder a este servicio porque tu solicitud de inicio de sesión contiene información de [destino|audiencia|destinatario] no válida. Inicia sesión e inténtalo de nuevo"

Este error indica que los elementos de destino, audiencia o destinatario de la aserción SAML contenían información no válida o estaban vacíos. En las aserciones SAML deben incluirse todos los elementos. Consulta la tabla que se muestra a continuación para obtener descripciones y ejemplos de cada elemento.

Elemento <Audience>
Descripción URI que identifica la audiencia de destino que requiere el valor de URI ACS. Nota: El valor del elemento no puede dejarse en blanco.
Valor obligatorio https://www.google.com/a/<tudominio.com>/acs
Ejemplo

<saml:Conditions
NotBefore="2014-11-05T17:31:37Z"

NotOnOrAfter="2014-11-05T17:37:07Z"
<saml:AudienceRestriction>
<saml:Audience>https://wwww.google.com/a/tudominio.com/acs<saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>

 

Elemento Atributo Destination (Destino) del tipo <StatusResponseType>
Descripción URI que indica a dónde se está enviando la aserción SAML. Se trata de un atributo opcional, pero si se declara, necesitará un valor de URI ACS.
Valor obligatorio https://www.google.com/a/<tudominio.com>/acs
Ejemplo

<saml:Response
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"

xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="7840062d379d82598d87ca04c8622f436bb03aa1c7"
Version="2.0"
IssueInstant="2014-11-05T17:32:07Z"

Destination+"https://wwww.google.com/a/tudominio.com/acs
       InResponseTo="midihfjkfkpcmbmfhhoehbokhbkeapbbinldpeen">

 

Elemento Atributo Recipient (Destinatario) de <SubjectConfirmationData>
 
Descripción

El atributo Recipient (Destinatario) define la entidad que quieres que reciba  
el Subject (Sujeto).

Atributo obligatorio que debe contener el URI ACS.

Nota: Distingue entre mayúsculas y minúsculas.

 

Valor

obligatorio

https://www.google.com/a/<tudominio.com>/acs
 
Ejemplo

<saml:Subject>

<saml:NameID SPNameQualifier="google.com/a/tudominio.com"

Format="urn:oasis:names:tc:SAML:2.0:nameid-format:email">usuario@tudominio.com</saml:NameID>

<saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">

<saml:SubjectConfirmationData NotOnOrAfter="2014-11-05T17:37:07Z"

Recipient="https://www.google.com/a/tudominio.com/acs"

InResponseTo="midihfjkfkpcmbmfhjoehbokhbkeapbbinldpeen"

</saml:SubjectConfirmation> 

Para obtener más información sobre todos los elementos obligatorios, consulta el artículo Requisitos de aserción SSO.

"No se puede acceder a este servicio porque tu solicitud de inicio de sesión no incluía los datos de destinatario. Inicia sesión e inténtalo de nuevo"

Este error suele indicar que en la respuesta SAML de tu proveedor de identidades falta un valor Recipient (Destinatario) legible (o que el valor de este campo no es correcto). El valor Recipient (Destinatario) es un componente importante de la respuesta SAML.

  1. Evalúa con más precisión este problema capturando los encabezados HTTP durante un intento de inicio de sesión.
  2. Extrae la solicitud y la respuesta SAML de los encabezados HTTP.
  3. Asegúrate de que el valor Destinatario esté presente en la respuesta SAML y de que coincida con el valor de la solicitud SAML.

Nota: Este mensaje de error también puede aparecer como "No se puede acceder a este servicio porque tu solicitud de inicio de sesión incluía datos de destinatario que no eran válidos. Inicia sesión e inténtalo de nuevo"

"No se puede acceder a esta cuenta, porque las credenciales de inicio de sesión no se pudieron verificar"

Este error indica que hay un problema con los certificados con los que se firma el flujo de autenticación. Normalmente, con este mensaje se indica que la clave privada con la que se firma la respuesta SAML no coincide con el certificado de clave pública que G Suite tiene en sus registros.

Este error también puede indicar que en la respuesta SAML no se incluye ningún nombre de usuario de cuenta de Google viable. G Suite analiza la respuesta SAML de un elemento XML llamado NameID, y espera que este elemento contenga un nombre de usuario o una dirección de correo electrónico completa de G Suite.

  • En la consola de administración de Google, accede a Herramientas avanzadas > Configurar inicio de sesión único (SSO) para ir a la página de configuración de SSO. Asegúrate de utilizar un certificado válido y vuelve a subirlo en el formulario de configuración de SSO.
  • Si usas una dirección de correo electrónico completa en el elemento NameID (es obligatorio si utilizas el inicio de sesión único con un entorno multidominio de G Suite), asegúrate de que el atributo Format del elemento NameID especifique que se va a utilizar una dirección de correo electrónico completa, como en el siguiente ejemplo: Format="urn:oasis:names:tc:SAML:2.0:nameid-format:email".
  • Asegúrate de rellenar el elemento NameID únicamente con un nombre de usuario o una dirección de correo electrónico válidos, no con, por ejemplo, un campo de ID de base de datos. Para asegurarte, extrae la respuesta SAML que envías a G Suite y comprueba que el valor del elemento NameID sea correcto.
  • Si el proveedor de identidades cifra la aserción SAML, inhabilita el cifrado y asegúrate de que la aserción se envíe a Google sin cifrar; de este modo, G Suite podrá leerla.
  • Comprueba que no hayas incluido caracteres ASCII no estándar en la respuesta SAML. Normalmente, este problema se produce en los atributos DisplayName (Nombre visible), GivenName (Nombre) y Surname (Apellido) del AttributeStatement (Resumen de atributo).

Por ejemplo:
<Attribute Name="http://schemas.microsoft.com/identity/claims/displayname">
<AttributeValue>Blüte, Eva</AttributeValue>
</Attribute>
<Attribute  
Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname">
<AttributeValue>Eva</AttributeValue>
</Attribute>
<Attribute  
Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname">
<AttributeValue>Blüte</AttributeValue>
</Attribute>

Estos atributos no se admiten, por lo que puedes omitirlos. En caso de que no puedas,  
solo deben incluir caracteres ASCII estándar. 
 

"No se puede acceder a este servicio, porque tus credenciales de inicio de sesión han caducado. Inicia sesión e inténtalo de nuevo"

Por motivos de seguridad, el flujo de inicio de sesión único se debe completar en un plazo determinado; de lo contrario, se producirá un fallo en la autenticación. Si el reloj del proveedor de identidades no está ajustado correctamente, todos (o casi todos) los intentos de inicio de sesión parecerán encontrarse fuera del plazo aceptable, por lo que la autenticación fallará y se mostrará el mensaje de error anterior.

  • Comprueba el reloj del servidor de tu proveedor de identidades. En casi todos los casos, este error se debe a que el reloj del proveedor de identidades no está ajustado correctamente, lo que añade marcas de tiempo incorrectas a la respuesta SAML.
  • Vuelve a sincronizar el reloj del servidor del proveedor de identidades con un servidor de horario de Internet fiable. Cuando esta incidencia se produce repentinamente en un entorno de producción, suele deberse a un fallo en la última sincronización, lo que provoca que la hora del servidor sea inexacta. Repetir la sincronización horaria (con un servidor horario más fiable, si es posible) solucionará este problema rápidamente.
  • Este problema también puede ocurrir si vuelves a enviar SAML desde un intento de inicio de sesión anterior. Para saber cómo depurar este error, examina la solicitud y respuesta SAML obtenidas de los registros del encabezado HTTP capturados durante un intento de inicio de sesión.
"No se puede acceder a este servicio, porque tus credenciales de inicio de sesión todavía no son válidas. Inicia sesión e inténtalo de nuevo"

Por motivos de seguridad, el flujo de inicio de sesión único se debe completar en un plazo determinado; de lo contrario, se producirá un fallo en la autenticación. Si el reloj del proveedor de identidades no está ajustado correctamente, todos (o casi todos) los intentos de inicio de sesión parecerán encontrarse fuera del plazo aceptable, por lo que la autenticación fallará y se mostrará el mensaje de error anterior.

  • Comprueba el reloj del servidor de tu proveedor de identidades. En casi todos los casos, este error se debe a que el reloj del proveedor de identidades no está ajustado correctamente, lo que añade marcas de tiempo incorrectas a la respuesta SAML.
  • Vuelve a sincronizar el reloj del servidor del proveedor de identidades con un servidor de horario de Internet fiable. Cuando esta incidencia se produce repentinamente en un entorno de producción, suele deberse a un fallo en la última sincronización, lo que provoca que la hora del servidor sea inexacta. Repetir la sincronización horaria (con un servidor horario más fiable, si es posible) solucionará este problema rápidamente.
¿Te ha resultado útil esta información?
¿Cómo podemos mejorar esta página?