Saltar al contenido principal Saltar al contenido complementario

Crear y administrar clientes de OAuth

OAuth es un protocolo de seguridad para lo concerniente a autorización y delegación. Permite a aplicaciones de terceros acceder a los recursos de la API sin revelar las credenciales del usuario final. Un cliente OAuth solicita un código de autorización, lo intercambia por un token de acceso y utiliza el token para acceder al contenido de Qlik Cloud a través de las API.

Tipos de cliente OAuth

Un cliente OAuth es una aplicación web o software que solicita acceso a recursos en Qlik Cloud en nombre de un usuario. OAuth define dos tipos de clientes, los clientes públicos y los clientes confidenciales, a fin de asegurar la autorización entre una aplicación (el cliente) y el servidor de autorización (Qlik Cloud).

Qlik Cloud admite clientes confidenciales para aplicaciones web tradicionales (del lado del servidor) y clientes públicos para aplicaciones nativas y de una sola página que utilicen flujos de autorización específicos.

Para conocer la especificación oficial de OAuth 2.0 sobre los tipos de cliente, consulte la sección 2.1 del RFC 6749: Tipos de cliente OAuth 2.0.

Clientes públicos

Los clientes públicos son aplicaciones que no utilizan el secreto de cliente porque no pueden mantener la confidencialidad de las credenciales requeridas. En Qlik Cloud, se incluyen aplicaciones frontales como las aplicaciones de una sola página (SPA) con análisis integrados o extensiones de visualización personalizadas en Qlik Sense que requieren la autenticación del usuario.

Clientes confidenciales

Los clientes confidenciales pueden almacenar de forma segura un ID de cliente y un secreto de cliente y utilizarlos para autenticarse con el servidor de autorización. Estos clientes pueden acceder a los recursos protegidos porque poseen el secreto del cliente.

Ejemplo: una aplicación web con un backend seguro que interactúa con las API de Qlik Cloud para gestionar el acceso de los usuarios u orquestar tareas de actualización de datos.

Flujos de autorización de OAuth

Qlik admite dos flujos de autorización (tipos de concesión):

  • Flujo de códigos de autorización: para clientes confidenciales.

  • Flujo de códigos de autorización con clave de prueba para el intercambio de códigos (PKCE): para clientes públicos.

Flujo de códigos de autorización

Este flujo es utilizado por aplicaciones del lado del servidor en las que el código fuente no está expuesto públicamente. Consiste en intercambiar un código de autorización por un token de acceso, utilizándose el secreto del cliente para la autenticación. Las aplicaciones web que utilicen este flujo deben estar del lado del servidor porque el secreto del cliente se pasa al servidor de autorización durante el intercambio de tokens.

Nota informativaNunca comparta públicamente el secreto de su cliente, ya que compromete la seguridad de su espacio empresarial inquilino. Manténgalo seguro y en privado.

Para más información sobre el flujo de código de autorización, consulte la documentación oficial de OAuth 2.0: Flujo de código de autorización.

Flujo del código de autorización con PKCE

Las aplicaciones nativas y de una sola página no pueden almacenar el secreto de un cliente de forma segura porque su código fuente puede descompilarse o inspeccionarse en un navegador. PKCE mejora la seguridad al requerir el uso de un verificador de código para obtener un token de acceso.

Para más información sobre la autorización mediante PKCE, consulte la documentación oficial de OAuth 2.0: Flujo de códigos de autorización con clave de prueba para el intercambio de códigos (PKCE).

Ámbitos y permisos de OAuth

Los ámbitos de OAuth definen el nivel de acceso concedido a las aplicaciones cliente de OAuth. Por ejemplo, un token de acceso puede permitir el acceso total a los recursos o restringirlo al acceso de solo lectura. En Qlik Cloud, los ámbitos controlan el acceso de los clientes a la funcionalidad y los recursos disponibles. Sin ámbitos, los clientes no pueden acceder a ningún recurso.

Ámbitos de OAuth disponibles

La tabla muestra los ámbitos disponibles y sus permisos asociados:

Creación de clientes de OAuth

Los administradores de un espacio empresarial inquilino son los que gestionan los clientes de OAuth en el centro de actividades Administración, en la página OAuth. Con un cliente de OAuth, puede integrar su aplicación cliente con Qlik Cloud para acceder a los recursos de forma segura.

Límites de los clientes de OAuth

Se aplican los siguientes límites:

  • Máximo de 5 URL de redirección por cliente.

  • Máximo de 5 orígenes permitidos por cliente.

  • Máximo de 5 secretos de cliente por cliente.

  • Máximo de 200 clientes de OAuth por espacio empresarial inquilino.

Pasos para crear un cliente de OAuth

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.

  2. Haga clic en Crear nuevo.

  3. Seleccione un tipo de cliente:

    • Web para clientes confidenciales.

    • App de una sola página o Nativa para los clientes públicos.

    • Inserción anónima para clientes públicos.

  4. En el cuadro de diálogo, indique un nombre para el cliente de OAuth.

  5. Añada una descripción, si lo desea.

  6. Seleccione cualquiera de los ámbitos disponibles desplazándose o utilizando el campo de búsqueda.

    Nota de sugerenciaUtilice los botones Todos o Seleccionado para ver todos los ámbitos o únicamente los seleccionados.
  7. Indique una o varias URL de redirección para la aplicación del cliente de OAuth (máximo 5). Después haga clic en Añadir para añadir la URL de redirección a la lista permitida.

    • La URL de redirección es donde el servidor de autorización envía al navegador del usuario tras autenticar y conceder permiso a la aplicación cliente. Por ejemplo, https://www.exampleapp.com/oauth/callback, donde /oauth/callback gestiona las devoluciones de llamadas de autenticación del proveedor OAuth.

    • Qlik Cloud redirigirá al usuario a la aplicación después de una autorización satisfactoria solo si su URL está en la lista de elementos permitidos de URL de redireccionamiento.

    • Las URL deben comenzar por https://, a menos que el dominio sea localhost, en cuyo caso puede comenzar por http://. Las apps nativas también pueden utilizar el formato de enlace específico de la aplicación, por ejemplo, exampleapp://.

  8. Para los tipos de cliente Web o App de una sola página, especifique uno o más orígenes permitidos (máximo 5).

    • El acceso a la aplicación solo se concederá si la URL se añade a la lista de orígenes permitidos.

  9. Para el tipo de cliente Web, puede activar una de las siguientes opciones para el acceso automatizado al sistema sin interacción del usuario:

    • Permitir la comunicación de máquina a máquina (M2M): permite la comunicación de sistema a sistema sin intervención del usuario.

    • Permitir la suplantación de usuarios M2M: permite que su aplicación se autentique en nombre de los usuarios, actuando como ellos durante el proceso de autenticación.

  10. Para el tipo de cliente Web, seleccione una o ambas opciones en Método de autenticación:

    • Secreto de cliente (predeterminado)

    • JWT de clave privada, una opción más segura que autentica al cliente mediante un par de claves pública/privada en lugar de un secreto compartido.

      • Cuando selecciona JWT de clave privada, aparece el campo Clave pública. Introduzca la clave pública de su aplicación de terceros en formato JSON Web Key (JWK). La clave privada permanece en su aplicación para firmar JWT. Para obtener más información sobre el formato de la clave pública, consulte Crear un par de claves pública/privada para firmar JWT en el Portal para desarrolladores de Qlik.

        Nota informativaLa clave pública depende de los requisitos de su proveedor de identidad. Si la clave pública de su aplicación de terceros tiene un formato diferente, utilice una herramienta de terceros para convertirla a JWK.
  11. Haga clic en Crear.

  12. Haga clic en Copiar al portapapeles para guardar la ID del cliente y el secreto de cliente para su uso posterior. Almacene el secreto de cliente de forma segura.

    Nota informativaLos clientes públicos no tienen secreto de cliente.
  13. Haga clic en Hecho.

Clientes de OAuth para casos de uso específicos

Para los casos de uso del cliente de OAuth, consulte los siguientes recursos:

Crear clientes de OAuth para complementos de Qlik para Microsoft Office

Se requiere una configuración de cliente OAuth para instalar los complementos de Qlik para Microsoft Office. Los complementos los utilizan los desarrolladores de informes para preparar plantillas de informe para la generación de informes en la aplicación con Qlik Cloud.

Para que OAuth funcione en los complementos, el cliente de OAuth debe configurarse con la configuración exacta que se muestra a continuación.

Haga lo siguiente:

  1. En el centro de actividades Administración, en Qlik Cloud, vaya a OAuth.

  2. Haga clic en Crear nuevo.

  3. En el menú desplegable Tipo de cliente, seleccione App de una sola página. Aparecerán más campos.

  4. Inserte un Nombre. La Descripción es opcional.

  5. Como mínimo, marque la casilla de verificación para incluir el ámbito user_default. Puede incluir otros ámbitos en la configuración, pero sin user_default, la instalación no funcionará.

    Vea Ámbitos de OAuth disponibles para obtener una descripción completa de cada ámbito disponible.

  6. En el campo Agregar las URL de redireccionamiento, inserte la URL del espacio empresarial inquilino de Qlik Cloud, seguida de esta cadena de texto fija: /office-add-ins/oAuthLoginSuccess.html

    El resultado debería presentar el siguiente aspecto: https://<tenant or alias hostname>.<region>.qlikcloud.com/office-add-ins/oAuthLoginSuccess.html. Por ejemplo: http://ejemplo-empresa-123.us.qlikcloud.com/office-add-ins/oAuthLoginSuccess.html

  7. Haga clic en Añadir.

  8. En el campo Agregar orígenes permitidos, inserte la URL de su espacio inquilino y haga clic en Agregar.

  9. Haga clic en Crear.

  10. Aparecerá la ventana Copie su ID de cliente. Puede optar por copiar el ID del cliente al portapapeles o hacer clic en Hecho para cerrar la ventana.

Tras crear el cliente OAuth, obtenga el enlace XML del manifiesto actualizado en el centro de actividades Administración. Vaya a la página Configuración y seleccione la pestaña Correo electrónico e informes. En la sección Compartir e informes, seleccione los complementos de Qlik para Microsoft Office. Utilice el enlace proporcionado para implementar e instalar el complemento.

Para obtener más información sobre cómo generar el archivo de manifiesto, así como cómo implementar e instalar un complemento, consulte:

Crear un cliente de OAuth para inserciones anónimas del contenido de una app

Para incrustar contenido de una app para acceso anónimo usando qlik-embed, necesita crear un cliente de OAuth con un tipo específicamente diseñado para este caso de uso.

Nota informativa Esta funcionalidad solo está disponible con una suscripción a Qlik Anonymous Access. Para más información, vea Suscripciones a Qlik Anonymous Access.

Haga lo siguiente:

  1. En el centro de actividades Administración, vaya a la sección OAuth.

  2. Haga clic en Crear nuevo.

  3. En el menú desplegable Tipo de cliente, seleccione Incrustación anónima.

  4. Escriba un Nombre y, si lo desea, una Descripción para el cliente de OAuth.

  5. En Orígenes permitidos, introduzca cada uno de los orígenes que debe autorizar. Estos son los dominios que accederán al espacio empresarial inquilino de Qlik Cloud para recuperar la información para la analítica incrustada.

    Haga clic en Añadir tras insertar cada URL.

  6. Cuando haya terminado, haga clic en Crear.

  7. Haga clic en Copiar al portapapeles para guardar el ID de cliente para su uso posterior. Será necesario cuando el contenido de la app esté incrustado con qlik-embed.

  8. Haga clic en Hecho.

Editar clientes de OAuth

Puede cambiar el nombre de un cliente OAuth, actualizar la descripción o administrar las URL de redireccionamiento.

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.
  2. Localice el cliente de OAuth que desea editar.
  3. Haga clic en Más y seleccione Editar.
  4. Modifique las opciones del cliente de OAuth según sea necesario.
  5. Haga clic en Guardar.

Eliminar clientes de OAuth

Puede eliminar un cliente de OAuth cuando ya no lo necesite o para revocar el acceso.

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.

  2. Seleccione uno o varios clientes de OAuth que desee eliminar y, a continuación, haga clic en Eliminar.

  3. Confirme la eliminación.

Publicar clientes de OAuth

Los clientes de OAuth se vinculan inicialmente al espacio empresarial inquilino que los creó. No obstante, puede configurar un cliente de OAuth para que sea compartido por varios espacios empresariales inquilinos dentro de la misma región. Esto permite a las aplicaciones de terceros utilizar el mismo identificador de cliente en diferentes espacios empresariales inquilinos de Qlik Cloud.

Los propietarios de las aplicaciones pueden rotar los secretos y actualizar la configuración sin la interacción de un administrador del espacio empresarial inquilino. Los administradores del espacio empresarial inquilino no necesitan gestionar las credenciales ni conocer ningún detalle sobre la configuración del cliente publicado.

Para permitir que otros espacios empresariales inquilinos se conecten a un cliente de OAuth, debe publicarlo.

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.
  2. Localice el cliente de OAuth que desea publicar.
  3. Haga clic en Más junto al cliente y seleccione Publicar.
  4. Pulse Publicar para confirmar.

Una vez publicado el cliente de OAuth, pasa a estar disponible para su uso externo por parte de otros espacios empresariales inquilinos. Cuando un usuario visite un sitio web externo que utilice este cliente de OAuth, se le pedirá que introduzca el nombre de host de su espacio empresarial inquilino y sus credenciales de usuario, a menos que ya tenga una sesión activa en SaaS.

El inicio de sesión inicial requerirá el consentimiento de un administrador del espacio empresarial inquilino. Una vez aprobado, el cliente de OAuth aparecerá en el centro de actividades Administración del espacio empresarial inquilino.

Métodos de consentimiento

De manera predeterminada, Qlik Cloud solicita el consentimiento de los usuarios al autenticarse. Para agilizar el proceso, especialmente en el caso de las aplicaciones que son de confianza, puede configurar el método de consentimiento en la opción "De confianza", que ignora la solicitud de consentimiento.

Existen dos opciones para solicitar el consentimiento:

  • Obligatorio: se solicita el consentimiento del usuario cada vez que el cliente de OAuth solicita un nuevo ámbito. Este método garantiza la aprobación explícita del usuario para cada nivel de acceso.

  • De confianza: no se solicita el consentimiento del usuario. Esta opción solo está disponible para los clientes no publicados. Para los clientes publicados, el método de consentimiento siempre es Obligatorio para mantener la seguridad en varios espacios empresariales inquilinos.

Nota informativaPara los clientes que se utilizan como de Máquina a Máquina (M2M), el método de consentimiento debe cambiarse a De confianza (Trusted) después de crear el cliente.

Cambiar el método de consentimiento

Para cambiar el método de consentimiento de un cliente de OAuth, haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.
  2. En el cliente de OAuth, haga clic en Más y seleccione Cambiar método de consentimiento.
  3. Seleccione Obligatorio o De confianza y después haga clic en Cambiar método de consentimiento.

Ver y copiar la configuración de OAuth

En la sección OAuth del centro de actividades Administración, seleccione Ver configuración de OAuth para acceder a los detalles de autenticación de su espacio empresarial inquilino en Qlik Cloud. Esto mostrará un fragmento de código con los puntos de conexión y la configuración de OAuth, así como una URL que puede copiar para utilizarla en aplicaciones externas.

Puede utilizar esta configuración para integrar Qlik Cloud con aplicaciones de terceros, automatizar el acceso a las API o configurar la autenticación para los análisis integrados.

Gestionar los secretos de cliente

Si el secreto de un cliente se ve comprometido o su política de seguridad requiere actualizaciones periódicas, puede añadir o eliminar secretos. Para evitar tiempos de inactividad, puede añadir varios secretos de cliente (un máximo de 5), actualizar su aplicación cliente y, a continuación, eliminar el secreto antiguo.

Añadir un secreto de cliente

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.
  2. Localice el cliente de OAuth.
  3. Haga clic en Más y seleccione Administrar secretos.
  4. Haga clic en Generar un nuevo secreto de cliente.
  5. Copie el secreto de cliente y el ID de cliente, y guárdelos de forma segura.

    Nota informativaNo podrá acceder posteriormente al secreto de cliente.
  6. Haga clic en Cerrar.

Eliminar un secreto de cliente

Haga lo siguiente:

  1. Vaya a OAuth en el centro de actividades Administración.
  2. Localice el cliente de OAuth.
  3. Haga clic en Más y seleccione Administrar secretos.
  4. Haga clic en Eliminar junto al secreto del cliente.
  5. Haga clic en Cerrar.

Próximos pasos: crear aplicaciones cliente de OAuth

Tras registrar un cliente de OAuth en Qlik Cloud, puede crear aplicaciones cliente de OAuth para acceder al contenido de Qlik Cloud. Utilice el ID de cliente y el secreto de cliente asociados en su aplicación.

Si desea una guía paso a paso, consulte los tutoriales de la sección "OAuth Overview" del portal para desarrolladores de Qlik. Estos tutoriales abarcan cómo crear aplicaciones cliente utilizando lenguajes de programación populares.

¿Esta página le ha sido útil?

Si encuentra algún problema con esta página o su contenido (errores tipográficos, pasos que faltan o errores técnicos), no dude en ponerse en contacto con nosotros.