En esta página, se describe cómo usar los parámetros de consulta y los encabezados 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 configurando el parámetro gcp-iap-mode en la cadena de consulta de la URL.
Estos parámetros de consulta se pueden incluir con cualquier ruta de acceso, no solo con la URL raíz.
Identidad del usuario transitorio
Si pasas el siguiente valor de parámetro, se devuelve un diccionario JSON con la identidad del usuario:
YOUR_APP_URL?gcp-iap-mode=IDENTITY
{"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 de parámetro borra la cookie de acceso de IAP:
YOUR_APP_URL?gcp-iap-mode=CLEAR_LOGIN_COOKIE
Si 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 tu 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 haya 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.
Tu 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 agregando 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