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 interfaz de usuario de tu aplicación o proporcionar opciones de solución de problemas.
Parámetros de consulta
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 en cualquier ruta, no solo en la URL raíz.
Transferir la identidad del usuario
Si se transfiere el siguiente valor de parámetro, se devuelve un diccionario JSON con la identidad del usuario:
YOUR_APP_URL?gcp-iap-mode=IDENTITY
Está disponible en cualquier cuenta de Google con la que se haya iniciado sesión, aunque la cuenta no tenga acceso a la aplicación. Puedes ir a la URL directamente o hacer referencia a ella para enviar solicitudes. A continuación, se muestra un ejemplo de valor devuelto por la URL:
{"email":"accounts.google.com:USER_EMAIL","sub":"accounts.google.com:118133858486581853996"}
Este valor puede ser útil para personalizar tu aplicación, por ejemplo, mostrando el nombre del usuario, transfiriendo la identidad a otra página o registrando datos de uso en los registros.
Borrar el inicio de sesión del usuario
El siguiente valor de parámetro borra la cookie de inicio de sesión de IAP:
YOUR_APP_URL?gcp-iap-mode=CLEAR_LOGIN_COOKIE
Si se incluye este parámetro, se borrarán todas las cookies emitidas por las compras en la aplicación de tu aplicación y se dirigirá al navegador a YOUR_APP_URL
. Si tu navegador tiene una sesión válida con el proveedor de identidades (IdP) de tu aplicación, puede que se produzca un inicio de sesión silencioso si solo se usa una cuenta con el IdP. Si se están usando varias cuentas, se abrirá una página de selección de cuenta para permitir el cambio de perfil.
Probar la verificación de JWT
IAP te ayuda a probar la lógica de verificación de JWTs enviando JWTs no válidos a páginas web de prueba.
Por ejemplo, IAP envía 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 debe detectar la firma no válida.
Puedes probar tu lógica de verificación en cualquiera de los siguientes casos añadiendo 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 es posterior a la actual. |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=PAST_EXPIRATION | La fecha de vencimiento se ha definido en el pasado. |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=ISSUER | Emisor incorrecto. |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=AUDIENCE | Audiencia incorrecta. |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=SIGNATURE | Firmado con un firmante incorrecto. |
Encabezados especiales
Detectar respuestas de las compras en la aplicación
Cuando IAP genera una respuesta HTTP, por ejemplo, cuando deniega el acceso (403) o solicita la autenticación (302 o 401), añade el encabezado de respuesta HTTP X-Goog-IAP-Generated-Response
. Al detectar la presencia de este encabezado, puedes realizar acciones como las siguientes:
Distingue entre los mensajes de error generados por las compras en aplicaciones y los mensajes de error generados por tu aplicación.
Detecta cuándo se deben añadir credenciales de IAP a una solicitud.