Avviare il segnale di tracciamento a MediaService
Clones forwardPublicWebinar piuttosto che generico forward(): che metodo stampa ogni URI, mappa dell'intestazione e lunghezza del corpo a stdout senza livello, ...
Ricostruisci contro la correzione condivisa @Lob LONGVARCHAR
Il dialetto PostgreSQL di Hibernate legge le colonne di stringa @Lob come OID via getLong(). Affetti note, contatti, calendario, OAuth tokens, password IMAP, ca...
Punta a YugabyteDB e usa PostgreSQLDialect
CockroachDB è stato sostituito da YugabyteDB. Le stringhe di connessione si muovono da scarroachdb-public:26257 a yb-tserver-service:5433, e il dialetto Hiberna...
Mirror Maven Central tramite la copia GCS di Google
Ogni stadio di Docker parte da un freddo ~/.m2 e refetches l'intero albero di dipendenza, quindi Central vede il peso pieno di ogni servizio concomitante costru...
Codificare il token decodificato esattamente una volta sulla strada a monte
21670e5 ha percorso SocialWebhookController attraverso la voce FULLY-PRE-ENCODED di UpstreamUri punto, ma il suo URL è un ibrido: `token` è un @PathVariable, qu...
Inoltra i byte di query del chiamante sui proxy pubblici
Il gateway ha interrotto le stringhe di query a doppia codifica in avanti in 3c24d32, ma quattro altri proxy in questo servizio ancora concatenati byte già codi...
Inoltra i byte di query del chiamante invece di codificarli due volte
Ogni URL che questo gateway costruisce è assemblato da getRequestURI() e getQueryString() — entrambi già codificati per cento — ed è stato poi consegnato a Rest...
Fornire regole di accesso inquilino al gateway
Questo filtro è inerte da quando è stato scritto. risolvereOrgId lettura org:dominio: da Redis, nulla ha mai scritto quella chiave, e il ritorno nullo è caduto ...
Percorso del fornitore di meeting OAuth callback
Zoom e Microsoft reindirizzare il browser a questo gateway dopo un org autorizza L'app di Kamo. Il popup atterra qui senza inquilino sessione — il org viaggia i...
Harden il kubectl download contro l'egresso sfacciato [skip ci]
dl.k8s.io sopra l'ingresso del corridore cade in modo intermittente metà del trasferimento: curl: (56) OpenSSL SSL read: decryption fail or bad record mac che f...
Proxy il percorso pubblico AI->human handoff
Aggiunta di POST. proxied a MediaService accanto alla sua creazioneSupportSession fratello. Senza questo la funzione di consegna era morta all'arrivo: il punto...
Route /api/email + /api/supporto attraverso l'host api
(EmailService) e Supporto (MediaService, stesso a monte di /api/media) sono stati dirottato → 404. Aggiungere sia in avanti che correggere e-mail. service.url d...
GET /api/pubblico-chat/bootstrap gateway route
Aggiungi un endpoint bootstrap che riutilizza il proxy esistenteCon pipeline Auth (valida chiave + origine opt-in + PUBLIC CHAT portata + tasso-limit + X-Public...
Deferire l'orientamento obbligatorio alla Fase 1 — Opt-in OriginMatcher (permetta la lista dei permessi/origine mancante)
I widget Phase-0 chiamano ancora tramite il proxy server-side, quindi il blocco di origine non ha beneficio ancora e ogni chiave a catena pubblica dal vivo ha u...
Non memorizzare le chiavi in cache sugli errori a valle transitori (solo su invalidità definitiva)
Solo cache-invalidate chiavi genuinamente invalide, non Origin-denied (previene-chiave DoS)
Su una fredda cache Redis, una chiave pubblica valida con un'origine sbagliata/absent memorizzato come INVALID per 60s, negando le richieste di origine corretta...
La stretta di mano del relè di WS Bind a Origin + aggiungere il ripiegamento della chiave di convalida a freddo
Estrae la convalida privata di PublicChatControllerViaDownstream() in un condiviso PublicChatKeyResolver fagiolo così PublicChatWebSocketHandler può riutilizzar...
Verificare ***** PoW al bordo della sessione pubblica creare (applicato quando payload presente)
Proxy GET /lo-presenza a MediaService
Il proxy di supporto-sessione già inoltra il corpo grezzo, quindi il widget fuso preferenzialeAgentMemberId raggiunge MediaService intatto. Aggiungi il proxy di...
Passaggio pubblico per email OAuth provider callback
Avanti GET *****************************************************************************************************************************************************...
Inoltrare x-twitter-webhooks-signature sul bordo social webhook (X / attività account Twitter)
Migra a k1m1 (registry+kubeconfig da k1m1, drop k2m1, semplice installazione kubectl)
Gateway API e-sign programmatico pubblico (ambito API SIGNATURE)
Aggiungi /api/public/esign/** a PublicApiController: convalida la chiave API org, richiede il campo API SIGNATURE, limiti di velocità e inoltro a ESigService bu...
Proxy support-message translate endpoint
Adds a passthrough route for the new MediaService endpoint that translates a single support-chat message into the visitor's URL locale. The marketing-side chat ...
Scope concurrency to build jobs, not Kubernetes deploys
Workflow-level concurrency serialized the whole pipeline (including kubectl rollouts). Move the group to the build job only so deploy jobs from different runs c...
Carve /api/voip/recordings/** out of the wildcard VOIP forwarder
The /api/voip/** catch-all in APIGatewayController was shadowing the dedicated VoipRecordingUploadController POST /api/voip/recordings/upload mapping when Sprin...
VoipRecordingUploadController per upload di supporto kamo-asterisk
POST /api/voip/registrazioni/upload accetta corpi multiparti da supporto kamo-asterisk in esecuzione su host FreePBX. Convalida la X-Api-Key ha il nuovo VOIP RE...
Aumentare il limite di dimensione del file di upload a 500MB
Spring Boot predefinisce il tappo di parti multipart a 1MB, causando l'immagine di sfondo caricamenti per fallire con 500 in request.getParts(). Match SecurityS...
Move CORS to Traefik via kamo-middlewares, remove in-app CorsFilter
The CorsFilter @Bean in the Spring app was silently not applying headers after WebConfig.java was removed. CORS is now handled entirely at the Traefik layer by ...
Rimuovere duplicati CorsFilter e striscia a monte intestazioni CORS nel gateway
WebConfig.java ha definito un secondo fagiolo CorsFilter in competizione con CorsConfig. Java bean, rischiando di scrivere l'intestazione duplicata. L'ha cancel...
Impostare l'applicazione/json per i corpi JSON inoltrati a SecurityService
RestTemplate a monte potrebbe lasciare Contenuto-Tipo incompatibile con la primavera @RequestBody, causando 415. Dopo aver letto il corpo grezzo, forza APPLICAT...
Add Stripe webhook forwarding and billing API gateway routing
- POST /api/billing/webhooks/stripe receives Stripe webhooks and forwards to BillingService with Stripe-Signature header preserved - /api/billing/** gateway r...
Forward locale param to SecurityService on public subscription catalog endpoint
Add concurrency group to prevent duplicate workflow runs
When a push triggers a workflow and workflow_dispatch is also fired (or two pushes arrive in quick succession), both runs would execute simultaneously. Adding a...
Add public lead intake endpoint for 3rd-party lead submission
Adds LeadIntakePublicController at /api/public/lead-intake/{token} that accepts lead data in any format (JSON, form-urlencoded) from 3rd-party vendors and forwa...
Add /api/esig/** gateway routing to ESigService
Route all /api/esig/** requests through the existing API gateway to the dedicated ESigService (kamowsesig-service) instead of the non-existent proxy target. Add...
Validate Forgejo HMAC-SHA256 signature instead of plain secret header
Forgejo sends webhook secret as X-Gitea-Signature / X-Forgejo-Signature HMAC-SHA256 hash, not as a plain header value. Read body, verify HMAC, then forward to S...
Expose changelog webhook through APIService with secret key auth
Adds POST /api/changelog/webhook route that validates *** header before forwarding to SecurityService. Secret configured via CHANGELOG_WEBHOOK_SECRET env var / ...
Enforce PUBLIC_WEBINAR scope on public webinar endpoints
Adds scope validation check before forwarding public webinar requests to MediaService, returning 403 if the API key lacks PUBLIC_WEBINAR scope.
Add webinar gateway routes for authenticated and public endpoints
Routes /api/webinar/** to MediaService for authenticated webinar operations and /api/public/webinar/** with API key validation for public scheduling and cancell...
Include SUBSCRIPTION_CATALOG in default scopes fallback
When MediaService doesn't return scopes in the validation response, default to including both PUBLIC_CHAT and SUBSCRIPTION_CATALOG scopes. This ensures public c...
Add commerce webhook forwarding endpoint for retail provider integrations
Come quello che vedi la spedizione?
Tutto questo arriva nel vostro spazio di lavoro da solo. Iniziare sul piano gratuito e leggere di nuovo questa pagina in un mese.
