Cómo agregar clientes de OAuth
OAuth 2.0 se puede usar para autenticar aplicaciones que se encuentran fuera de Kintone para ejecutar solicitudes de API de Kintone. OAuth 2.0 proporciona una forma segura para que la aplicación acceda a los datos de Kintone, ya que no requiere que los usuarios almacenen su usuario y contraseñas de Kintone en la aplicación.
Para usar OAuth 2.0 con Kintone, primero debe registrar su aplicación con Kintone. Su aplicación deberá admitir el flujo de autorización de OAuth para obtener el token de acceso que se puede usar para ejecutar las API de Kintone.
Para obtener más información sobre OAuth 2.0, consulte el sitio oficial:
OAuth 2.0
Contenido
Registre su aplicación en Kintone
Primero debe registrar su aplicación en Kintone a través de la configuración Integración para generar las credenciales OAuth. Siga los pasos a continuación para registrar su solicitud:
-
Inicie sesión en Kintone, haga clic en el icono de engranaje situado en el menú superior derecho de Kintone y vaya a la página Administración de usuarios y sistemas.
-
Haga clic en OAuth en Administración del sistema.
-
Haga clic en el botón verde Añadir cliente OAuth debajo de Configurar servicios avanzados.
-
Introduzca los detalles del cliente OAuth.
- Nombre del cliente (obligatorio): El nombre de la aplicación. Los usuarios verán este nombre cuando se les pida que concedan acceso a la aplicación.
- Logotipo del cliente (opcional): El logotipo de la aplicación. Los usuarios verán este logotipo cuando se les pida que concedan acceso a la aplicación.
- Redireccionar punto final (obligatorio): La URL a la kintone.com redirigirá al usuario después de conceder acceso a la aplicación.
-
Al hacer clic en Guardar, se añadirá el cliente y se generará automáticamente la siguiente información:
- Client ID: Un identificador único que se crea cuando la aplicación se registra en kintone.com.
- Client secret: Valor secreto que se crea cuando la aplicación se registra en kintone.com.
- Authorization endpoint: La dirección URL del punto de conexión de autorización de OAuth.
- Token endpoint: La dirección URL del punto de conexión del token de OAuth.
-
Haga clic en Configurar usuarios junto al cliente añadido para establecer qué usuarios de su dominio Kintone tienen permiso para interactuar con el cliente. Cuando el cliente se registra inicialmente en kintone.com, de forma predeterminada, ningún usuario puede interactuar con la aplicación hasta que se les conceda permiso a través de esta configuración.
-
En la pantalla de configuración Configurar usuarios, elija qué usuarios podrán interactuar con el cliente para procesar el flujo OAuth y haga clic en Guardar. El cliente OAuth solo se habilitará para aquellos que estén seleccionados con la casilla de verificación en esta configuración.
Tenga en cuenta que cuando se crea un nuevo usuario en Kintone, la casilla de verificación del nuevo usuario está desmarcada de forma predeterminada y el cliente OAuth está desactivado para el usuario.
Implementación del marco de autorización de OAuth en la aplicación
kintone.com utiliza concesiones de código de autorización para el flujo de proceso de OAuth.
Flujo de concesión de código de autorización
Los pasos necesarios para ejecutar una API de Kintone son los siguientes:
- Solicitud de autorización
- Aprobación del usuario
- Recuperación del código de autorización
- Solicitud de token de acceso
- Ejecución de API
En los pasos siguientes se muestra un ejemplo de ejecución de cada tipo de API de protocolo OAuth mediante curl.
1. Solicitud de autorización
Se accede a la siguiente URL para solicitar la autorización como cliente del usuario. A modo de ejemplo, k:app_record:read se especifica en el ámbito.
|
|
Los detalles de los parámetros son los siguientes:
| Parámetro | Obligatorio | Descripción |
|---|---|---|
client_id |
Sí | El ID de cliente único. |
redirect_uri |
Sí | El punto de conexión de redireccionamiento. Asegúrese de codificar la URL. |
state |
Sí | Un valor aleatorio para evitar CSRF como se define en OAuth 2.0 características técnicas. En este ejemplo, se especifica el valor "state1". |
response_type |
Sí | Especificar code. |
scope |
Sí | El ámbito de aplicación. Consulte el siguiente artículo para obtener más detalles sobre el ámbito: Ámbitos de permisos de OAuth Al especificar varios ámbitos, cada ámbito debe estar separado por una coma. |
2. Aprobación del usuario
En la página siguiente que aparece, haga clic en Permitir para aprobar la solicitud de autorización.
El usuario será redirigido a la URL Redirect Endpoint, especificada en el paso 4 de la siguiente sección:
Registre su aplicación en Kintone
3. Recuperación del código de autorización
Cuando se aprueba la autorización, el navegador accede a la URL de redireccionamiento. El parámetro state y el parámetro code se añaden a la URL. Trate el code como código de autorización. Copie el archivo code parámetro, ya que se utilizará en el siguiente paso.
El código de autorización caduca en 10 minutos. Si caduca, repita el paso 1 para recuperarlo.
|
|
4. Solicitud de token de acceso
El token de acceso se genera mediante el código de autorización recuperado.
Los detalles de los parámetros necesarios son los siguientes:
Encabezado de solicitud
En el caso de la Authorization , establezca el valor conectando los siguientes valores:
- La cadena "Basic"
- Un ID de cliente y un secreto de cliente codificados en Base64, con el formato "ClientID:ClientSecret"
Por ejemplo, si el identificador de cliente es "clientid" y el secreto de cliente es "clientsecret", especifique "Basic Y2xpZW50aWQ6Y2xpZW50c2VjcmV0".
Cuerpo de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
grant_type |
Sí | Especificar authorization_code. |
redirect_uri |
Sí | El punto de conexión de redireccionamiento, que debe ser el mismo valor indicado en el paso 1. Asegúrese de codificar la URL. |
code |
Sí | El código de autorización recuperado en el paso anterior. |
Muestra
|
|
Respuesta
Los detalles de las respuestas con parámetros son los siguientes:
| Parámetro | Descripción |
|---|---|
access_token |
El token de autenticación al ejecutar la API. El período de validez es 1 hora. |
refresh_token |
Token para obtener un nuevo token de acceso cuando caduca un token de acceso. |
token_type |
El tipo de token. Especifique siempre bearer. |
expires_in |
El tiempo de expiración del token de acceso (segundos). |
scope |
El ámbito permitido por el token de acceso. |
Muestra
|
|
Cuando caduca el token de acceso
Si el token de acceso caduca, utilice refresh_token para recuperar el token de acceso.
El refresh_token no caducan.
Los detalles de los parámetros necesarios para utilizar el refresh_token son los siguientes:
| Parámetro | Obligatorio | Descripción |
|---|---|---|
grant_type |
Sí | Especificar refresh_token. |
refresh_token |
Sí | Token de actualización obtenido de la siguiente sección: Solicitud de token de acceso |
Muestra
|
|
Respuesta
|
|
5. Ejecución de API
Ejecute la API de Kintone con el token de acceso recuperado configurando el token de acceso en el archivo Authorization: Bearer encabezado. Solo las API definidas en el ámbito se pueden usar con este token de acceso.
En el ejemplo siguiente, se ejecuta Obtener API de registro.
|
|
Respuesta
|
|
Para obtener más información sobre API Get Record, consulte el siguiente artículo:
Obtener registro
Notas importantes
- Las funciones del cliente OAuth no se pueden utilizar desde dominios Kintone que utilicen restricciones de IP, a menos que la IP del cliente OAuth esté incluida en la lista blanca de la configuración de restricciones de IP. Para obtener más información sobre Restricciones de IP+, consulte el siguiente artículo de la ayuda de Kintone:
Restricciones de direcciones IP - Los tokens de actualización no caducan.
Limitaciones
- Se pueden registrar hasta 20 clientes OAuth
- Se pueden generar hasta 10 tokens de actualización a partir de 1 cliente OAuth para 1 usuario.
- Los códigos de autorización y los tokens de acceso tienen tiempos de caducidad. Los códigos/tokens caducados devolverán errores.
- Los códigos de autorización son válidos para: 10 minutos.
- Los tokens de acceso son válidos para 1 hora.