Ir al contenido

Acceso a productos en Summit Auth

Un producto de la familia Summit (por ejemplo, ClimbEdge) puede requerir que el usuario tenga un acceso vigente antes de autorizarlo contra una aplicación cliente. Esta página describe cómo se evalúa ese acceso y cómo interactúa con las organizaciones.

Un acceso a producto puede originarse por dos vías:

  • A través de una suscripción de facturación, que vincula un producto, un plan y un dueño (un usuario o una organización).
  • Como un otorgamiento directo, sin una suscripción detrás — usado para concesiones manuales, promociones o migraciones.

Un usuario puede tener acceso al mismo producto por ambas vías a la vez, y puede tenerlo tanto de forma personal como a través de una organización a la que pertenece; ambos accesos son independientes entre sí.

La aplicación cliente activa la evaluación configurando un requisito de acceso a producto sobre su registro en Summit Auth. Cuando ese requisito está activo:

  • /connect/authorize deniega la solicitud (error=access_denied) si el producto vinculado a la aplicación no existe, está inactivo, o el usuario no tiene un acceso vigente que lo satisfaga.
  • /connect/userinfo no deniega nada — en su lugar, incluye el booleano has_required_product_access en la respuesta (ver Claims y permisos).

Si la aplicación no tiene un requisito de acceso a producto configurado, esta evaluación no ocurre y el login procede normalmente.

Un producto puede marcarse como exclusivo para organizaciones. Cuando lo está, un acceso otorgado directamente a un usuario (sin pasar por una organización) no satisface el requisito, aunque esté vigente. Solo un acceso obtenido a través de una organización a la que el usuario pertenece activamente cuenta como válido.

Esta restricción se aplica en los mismos dos puntos:

  • El guard de /connect/authorize deniega el login si el único acceso disponible es personal.
  • El claim product_access de UserInfo omite el producto; solo aparece en organization_product_access si corresponde.

Marcar un producto como exclusivo para organizaciones no revoca los accesos personales que ya existían — simplemente deja de contarlos. Si un usuario tenía acceso personal antes del cambio, seguirá viendo el registro en su historial, pero Summit Auth no lo honrará hasta que acceda a través de una organización.

product_access = climbedge:pro
product_plan = climbedge:pro:active
organization_product_access = climbedge:pro