Usar encabezados y parámetros de consulta

En esta página, se describe cómo usar los encabezados y los parámetros de consulta de Identity-Aware Proxy (IAP) para mejorar la IU de tu aplicación o proporcionar opciones de solución de problemas.

Parámetros de búsqueda

Se pueden realizar diferentes acciones si se configura el parámetro gcp-iap-mode en la cadena de consulta de URL. Estos parámetros de consulta se pueden incluir en cualquier ruta, no solo en la URL raíz.

Identidad del usuario transitorio

Cuando se pasa el siguiente valor del parámetro, se muestra un diccionario JSON con la identidad del usuario:

YOUR_APP_URL?gcp-iap-mode=IDENTITY

Esta opción se encuentra disponible desde cualquier Cuenta de Google a la que se haya accedido, incluso si la cuenta no tiene acceso a la aplicación. Puedes navegar directamente a la URL o hacer referencia a ella para realizar solicitudes a la URL. A continuación, verás un valor de ejemplo que muestra la URL:

{"email":"accounts.google.com:USER_EMAIL","sub":"accounts.google.com:118133858486581853996"}

Puede que este valor te resulte útil para personalizar tu aplicación, por ejemplo, si deseas que muestre el nombre del usuario, que transfiera una identidad a otra página o que capture datos de uso de los registros.

Eliminación de datos de acceso del usuario

El siguiente valor del parámetro borra la cookie de acceso de IAP:

YOUR_APP_URL?gcp-iap-mode=CLEAR_LOGIN_COOKIE

Cuando pasas este parámetro, se borran todas las cookies emitidas por IAP para tu app y se navega por el navegador a YOUR_APP_URL. Si el navegador tiene una sesión válida con el proveedor de identidad (IdP) de tu app, es posible que se produzca un acceso silencioso cuando solo hay una cuenta en uso con el IdP. Si hay varias cuentas en uso, se abrirá una página de selección de cuentas para permitir el cambio de perfil.

Prueba de verificación JWT

IAP te ayuda a probar la lógica de verificación de JWT pasando JWT no válidos a las páginas web de prueba.

Por ejemplo, IAP pasa un JWT con una firma no válida para cualquier solicitud que contenga los parámetros de consulta gcp-iap-mode=SECURE_TOKEN_TEST y iap-secure-token-test-type=SIGNATURE. La lógica de verificación debería detectar la firma no válida.

Puedes probar tu lógica de verificación en cualquiera de las siguientes situaciones. Para ello, agrega los parámetros adecuados a una solicitud.

Parámetros Caso de prueba
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=NOT_SET Un JWT válido.
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=FUTURE_ISSUE La fecha de emisión está programada en el futuro.
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=PAST_EXPIRATION La fecha de vencimiento está programada en el pasado.
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=ISSUER La entidad emisora es incorrecta.
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=AUDIENCE El público es incorrecto.
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=SIGNATURE Firmado con un firmante incorrecto.

Encabezados especiales

Detecta respuestas de IAP

Cuando IAP genera una respuesta HTTP, como cuando niega el acceso (403) o solicita autenticación (302 o 401), agrega el encabezado de respuesta HTTP X-Goog-IAP-Generated-Response. Al detectar la presencia de este encabezado, puedes realizar acciones como las siguientes:

  • Distinguir entre los mensajes de error generados por IAP y los mensajes de error generados por tu aplicación

  • Detectar cuándo se deben agregar credenciales de IAP a una solicitud