El acceso a OAuth debe estar habilitado para su organización. Su configuración inicial proporciona el endpoint de tokens regional, el emisor, la audiencia y el método de autenticación del cliente. Si necesita estos valores de configuración o no puede acceder a la gestión de clientes, comuníquese con el Soporte de Living Security.
Antes de comenzar
- Cree una cuenta de servicio con únicamente los permisos que necesita la integración.
- Utilice una credencial de administración con
service_account:managey cada permiso que desee conceder al nuevo cliente. La cuenta de destino también debe contar con esos permisos. Un cliente no puede ampliar la autoridad de ninguna de las dos cuentas. - Elija la región de la organización. Las credenciales de API y los tokens de acceso OAuth corresponden al host de API regional que coincida.
- Mantenga el secreto del cliente y los tokens en el almacenamiento de secretos de su servidor. No los incluya nunca en código de navegador, aplicaciones móviles, control de código fuente ni registros de solicitudes.
Crear un cliente
POST /v1/oauth_clients requiere service_account_id, una lista no vacía de scopes explícitos y una Idempotency-Key. No se aceptan comodines. Un cliente admite hasta 100 alcances, con una longitud combinada máxima de 4,096 caracteres. Cada cuenta de servicio puede tener como máximo 20 clientes u operaciones de creación o limpieza sin resolver. La revocación deniega de inmediato el acceso a la API. Un cliente, o una creación incierta en el proveedor, sigue contando para el límite hasta que se confirme la limpieza remota. Una reserva abandonada, o una creación que se haya demostrado fallida antes de que comenzara el trabajo del proveedor, puede liberar su espacio de forma segura. Su clave de reintento sigue perteneciendo al intento original; recupere ese recibo antes de decidir si se debe crear un reemplazo.
Elija una clave de reintento para este intento de creación y consérvela de forma persistente antes de enviar la solicitud. Utilice entre 1 y 255 caracteres ASCII visibles, sin espacios. Reutilícela con la misma cuenta, los mismos alcances, la misma entidad de administración, la misma región y la misma versión de API después de una respuesta perdida. Rotar la credencial de administración bajo la misma cuenta de servicio no crea una nueva identidad de reintento.
Instale el paquete requests de Python. Cargue los siguientes valores de entorno mediante su gestión habitual de secretos y configuración:
Python
201 y contienen un recurso oauth_client con id, service_account_id, client_id, scopes, status, created_at y client_secret. Las respuestas se marcan con Cache-Control: no-store.
ididentifica el recurso de la plataforma. Guárdelo para su consulta y revocación.client_ididentifica al cliente durante el intercambio de tokens. No es el ID del recurso de la plataforma. Puede sernullmientras la creación está pendiente.client_secretse devuelve únicamente a la solicitud que completa la creación. Toda solicitud de creación repetida devuelvenull, incluido un reintento tras perder la respuesta de éxito. La consulta nunca devuelve un secreto.
Recuperarse de una respuesta perdida o interrumpida
Repita la misma solicitud de creación con la clave de reintento guardada para recuperar el recibo del recurso. El recibo refleja el estado actual, por lo que un cliente revocado permanece revocado. Esta operación no utiliza el contrato general de reproducción de respuestas en caché de 24 horas y no devuelve un encabezadoIdempotent-Replayed.
Consulte errores para obtener los ID de solicitud y los detalles de recuperación. No envíe nunca un secreto de cliente ni un token de acceso con una solicitud de soporte.
Inspeccionar y revocar
Utilice su credencial de administración y elid del recurso de la plataforma:
La revocación bloquea las solicitudes posteriores a la API del cliente, incluidas las realizadas con tokens ya emitidos. No cancela el trabajo que la API ya haya aceptado. La limpieza remota de credenciales puede completarse más tarde. Repetir la revocación es seguro y no requiere clave de reintento. Continúe utilizando la credencial de administración si el cliente que se revoca es, a su vez, un llamador de la API.

