Saltar al contenido principal
La Identity API gestiona socios y sus aplicaciones. Úsala cuando gestionas socios desde tus propias herramientas en lugar de la Console.

Antes de empezar


Para gestionar socios, un usuario necesita los permisos partners de plugin-identity: get para leer socios y catálogos de ámbito, post para crear un socio, patch para cambiar uno y delete para eliminar uno. Gestionar sus aplicaciones necesita los permisos applications get, post y delete. El rol plugin-identity-editor-role los tiene todos.

Las operaciones


Para saber qué dimensiones acepta un producto en scope, lee su catálogo de ámbito. Cada dimensión tiene un name y los indicadores required, multi y explicit.

Los campos del socio


La respuesta también trae id, applicationsCount, createdAt y updatedAt. Reglas que se aplican a los campos:
  • product es el slug de producto que trae el catálogo de ámbito del producto, como plugin-br-pix-jd.
  • Escribe actions en minúsculas, como las devuelve Consultar el techo de socios de un producto: verbos HTTP como get, post, patch y delete en Midaz, Pix JD y Reporter, y acciones nombradas como read y activate en Flowker.
  • resources × actions es un producto cartesiano completo. Para dar acciones distintas sobre recursos distintos, envía más de una entrada para el mismo producto.
  • Access Manager rechaza el comodín * en resources, actions y values. Lista los elementos.
  • Un producto en scope también debe estar en permissions.
  • Un producto cuyo catálogo de ámbito declara dimensiones necesita al menos una entrada de ámbito en cada socio con permisos en ese producto. La excepción es una entrada de permisos que tiene solo permisos que el producto reserva para socios: no necesita ámbito, y aplica a todo el tenant. Sin una entrada de ámbito, Access Manager rechaza crear o cambiar el socio, con IDE-1060. Un socio guardado sin ella antes de esta regla se rechaza con 403 en cada solicitud a ese producto, hasta que agregues una entrada de ámbito.
  • Una dimensión que el catálogo marca como required necesita una entrada de ámbito en cada socio con permisos en ese producto, o Access Manager rechaza con IDE-0001. Una dimensión sin multi acepta solo un valor, o Access Manager rechaza con IDE-0002.
  • Para una dimensión que el catálogo marca como explicit, un permiso sobre la colección de esa dimensión necesita una entrada de ámbito que liste sus IDs. Sin ella, Access Manager rechaza con IDE-1052. El socio alcanza solo los IDs que listas.
  • Access Manager no verifica que los values existan en el producto. Usa los identificadores que devuelve la propia API del producto.
  • state es active o suspended, nunca expired. Después de validUntil, una lectura sigue devolviendo el estado guardado.
  • Después de la fecha validUntil del socio, Access Manager rechaza sus solicitudes, también con un token que ya tiene, y rechaza tokens nuevos.

El campo de lista de IP permitidas


ipAllowlist tiene tres significados en PATCH: Cada entrada de la lista propia del socio debe ser un rango IPv4 de /24 o más estrecho, o un rango IPv6 de /48 o más estrecho. Una entrada más amplia se rechaza con IDE-1052. Una entrada que el socio ya tiene no se verifica de nuevo. En POST, omite el campo o envía null para usar la lista de tu tenant. Cuando un socio tiene su propia lista de IP, esa lista reemplaza la lista de IP del tenant para las solicitudes del socio. validFrom y validUntil funcionan de forma parecida en PATCH. Omite un límite para conservarlo, envía un instante para definirlo o envía null para quitarlo.

Ejemplos


Reemplaza los marcadores por la URL base de tu Identity API, tu bearer token e identificadores de tu propio despliegue.

Crea las aplicaciones del socio


Un socio llama a un producto con una aplicación que le pertenece. Después de crear el socio:
  1. Crea una aplicación con Crear una aplicación. Envía el id del socio en partnerId y el slug del producto en target, como plugin-br-pix-jd.
  2. La Identity API devuelve el client secret solo en la respuesta que crea la aplicación. Guárdalo en ese momento. Si pierdes el secret, elimina la aplicación y crea una nueva.
  3. Envía el client ID y el secret al socio por un canal seguro.
  4. Repite los pasos 1 a 3 para cada producto al que llama el socio. Crea una aplicación por producto.
Para listar las aplicaciones de un socio, envía su id en el parámetro de consulta partnerId de Listar aplicaciones. Si partnerId no nombra un socio de tu tenant, las dos operaciones devuelven 404 con IDE-1046.

Cambia, suspende o elimina un socio


  • En PATCH, envía solo los campos que cambias. Una lista permissions o scope reemplaza la lista guardada completa. Lee primero el socio y después envía la nueva lista completa.
  • Para suspender un socio, envía "state": "suspended". Para reactivarlo, envía "state": "active".
  • Suspender un socio en Access Manager detiene su acceso, incluidos los tokens que ya tiene. Reactivar el socio dentro de su ventana de validez restaura el acceso con las mismas credenciales.
  • Cuándo se aplica un cambio indica cuándo el socio ve un cambio de permisos o de ámbito.
  • No puedes eliminar un socio que todavía tiene aplicaciones. La respuesta es 409 con IDE-1049, y su lista errors nombra cada aplicación que bloquea, con su client ID. Elimina primero esas aplicaciones.
  • Eliminar una aplicación hace que sus tokens dejen de funcionar.

Códigos de error


Errores en las operaciones de socios: Para cualquier otro código, consulta la lista de errores de Access Manager.