El modelo aplicado es la fuente de la verdad en tiempo de lectura para la disponibilidad de características

FeatureSecurityService
Se descapó
19 de abril de 2026 a las 21:34 UTC
Autor
Kamo
Compromit
7720191

Cierra el hub de "sacero DB filtra una característica desactivada" marcando cada superficie que toca OrgFeature / ServiceType a través del modelo de seguridad aplicado. - **************** (el alimentador principal del frontend OrgContext): sustituye la serialización de características brutas con ********************** org.getCaracteres ()). El auto- el bucle de provisiones ahora también se salta las aplicaciones del modelo NOT.AVAILABLE Nunca creamos filas de DB para aplicaciones bloqueadas. - FeatureController.list: devuelve cada característica con el modeloDisponibilidad metadatos cerrados. Las filas NO AVAILABLE se filtran, filas FORCE-ENABLED se notan como activados=true locked=true independientemente de su estado de DB. La lista disponible también se filtra a las aplicaciones que el modelo permite. - Nuevo appAvailabilidadInterceptor . WebMvcConfig: instala un ManejeInterceptor en cada prefijo URL de respuesta de servicio (/api/security/pos, /api/security/commerce-markets, /api/security/leads*, /api/security/lead- importaciones, /api/seguridad/limercados de plomo, /api/seguridad/vendores de plomo, ******************* ********** ************* Cada petición se combina con un ServiceType, resuelto contra el modelo aplicado por el llamante, y rechazado con HTTP 403 si la aplicación está efectivamente apagada. Esta es la última línea de defensa: incluso con estado de cliente rancio, un guardia de control olvidado, o una llamada directa de API, una aplicación bloqueada devuelve 403. Efecto Net: el modelo de seguridad aplicado ahora gana en tiempo leído en todas partes las funciones o aplicaciones de la org están expuestas a la navegación, página de inicio, configuración slide-out, FeaturesManager, endpoints por servicio. Cuando el administrador se vuelca CRM a NO AVAILABLE en el modelo, la interfaz de usuario de CRM desaparece del frontend y CRM endpoints comienza 403'ing independientemente de si el DB todavía tiene OrgFeature.isActive=true para CRM.

Todos los cambios

Como lo que ves enviaste?

Cada una de estas actualizaciones aterriza en su espacio de trabajo automáticamente. Empieza gratis y verlo crecer semana tras semana.

Arranzar gratis para siempreVer Precios