Naar inhoud

self-hosted

Zelf-gehost beheer naast de Claude apps-gateway: een gids voor gezamenlijke implementatie

Door Olivares AI 9 min leestijd

Anthropic heeft de Claude Apps-gateway eind juni 2026 verzonden. Het is een zelfgehoste service gebundeld in het binaire claude-bestand (v2.1.195+). Je voert het uit met claude gateway --config gateway.yaml, ondersteunt het met PostgreSQL, en het plaatst OIDC-aanmelding vóór je Claude Code-vloot: zakelijke IdP-sessies in plaats van lokaal beheerde API-sleutels. Dat is een echte stap voorwaarts. Voor teams die Claude Code rechtstreeks uitvoeren tegen Bedrock, Vertex, Foundry of de Anthropic API, centraliseert de gateway identiteit, modeltoegang en uitgavencontroles achter één configuratiebestand.

Dit bericht gaat over wat er daarna gebeurt. Jouw AI-bezit is vrijwel zeker meer dan Claude. U gebruikt waarschijnlijk MCP-servers van meerdere leveranciers. Mogelijk hebt u OpenAI- of Gemini-workloads, zelf-hostende inferentie via vLLM of Ollama, CI-pijplijnen die nooit een browser zien, en agentframeworks die tussen providers delegeren. De apps-gateway is alleen voor Claude en alleen voor OIDC. Dat is een besluit over de reikwijdte, geen defect, maar het betekent dat de bestuursvraag slechts partially wordt beantwoord.

Het hier beschreven co-implementatiemodel plaatst een zelf-hostend bestuursplatform naast de gateway, dat leest uit zowel de telemetrie van de gateway als de rest van uw agentinfrastructuur. Complementair, niet concurrerend: de gateway zorgt voor de authenticatie, het platform voor het bestuur.

Wat de apps-gateway goed doet

De gateway lost een specifiek, belangrijk probleem op: Claude Code een goede identiteitslaag geven. Voordat het bestond, had elke ontwikkelaar een API-sleutel of gebruikte hij een gedeelde inloggegevens, en er was geen gestandaardiseerde manier om modeltoegang, uitgavenplafonds of beheerde instellingen op organisatieniveau af te dwingen.

Met de gateway geïnstalleerd:

  • Ontwikkelaars verifiëren zich via uw OIDC-identiteitsprovider (één uitgever per gateway-instantie).
  • IdP-groepen worden toegewezen aan modeltoelatingslijsten en beleid voor beheerde instellingen in gateway.yaml.
  • Uitgavenlimieten worden afgedwongen per gebruiker, per groep of per organisatie, met een Admin API voor bestedingslimieten.
  • Telemetrie is verspreid over OTLP/HTTP, gestempeld met user.id, user.email en user.groups.
  • Auditgebeurtenissen (11 typen: config.load, session.mint, auth.denied, inference, enz.) worden verzonden als JSON met één regel op stderr.

Dit is een goed ontworpen infrastructuur voor de aangegeven reikwijdte. Anthropic publiceert het gatewayprotocol en nodigt implementaties van derden uit, wat een ongebruikelijk open houding is voor een modelaanbieder.

Wat het niet dekt

Anthropic documenteert de volgende scopebesluiten duidelijk. Dit zijn geen defecten; ze definiëren waar een grens voor gezamenlijke implementatie hoort:

  • Alleen OIDC. Geen SAML, geen LDAP. Als uw IdP SAML gebruikt, heeft u een OIDC-bridge vóór de gateway nodig.
  • Eén uitgever. Eén OIDC-provider per gateway-instantie. Voor implementaties met meerdere tenants zijn afzonderlijke exemplaren nodig.
  • Alleen Claude. De modellencatalogus bevat Claude-modellen. OpenAI, Gemini, lokale inferentie en andere providers vallen buiten het bereik van de gateway.
  • Geen servicetokenstroom. Onbeheerde CI/CD-pijplijnen hebben geen gedocumenteerd niet-interactief authenticatiepad via de gateway.
  • Geen beheerdersinterface. Configuratie is het YAML-bestand; veranderingen vereisen een herschikking.
  • Geen Helm-diagram. De gateway wordt uitgevoerd als een standaardimplementatie, maar er is geen verpakt diagram.

Buiten deze gedocumenteerde limieten zijn er problemen op de bestuurslaag waarvoor de gateway niet is ontworpen:

  • MCP-serverinventaris en -status. Welke MCP-servers worden ingezet, welke tools ze beschikbaar stellen en of hun aangegeven mogelijkheden overeenkomen met hun waargenomen gedrag: dit is niet de taak van de gateway.
  • Beleidsafdwinging tussen providers. Een beleid dat zegt dat “productiedatabases alleen-lezen zijn voor alle agenten” moet worden toegepast op Claude-, OpenAI- en zelf-hostende modellen. De gateway regelt de toegang tot het Claude-model; het regelt niet de bronnen die deze modellen aanraken, of wat andere modellen doen.
  • Toewijzing van toegang op sessieniveau. Voor het maken van een grafiek van welke agentsessie welke database, objectopslag of API-eindpunt heeft bereikt (en of die toegang is gelezen of gelezen/write) zijn correlerende telemetrie-, hooks- en infrastructuursignalen nodig. De gateway geeft OTLP woordelijk door; het analyseert niet wat de telemetrie beschrijft.
  • manipulatie-evidente audit. De gateway verzendt JSON-auditgebeurtenissen op stderr. Deze gebeurtenissen moeten in een hash-chained, alleen-bijvoeg-grootboek terechtkomen als ze compliance-bewijspakketten gaan ondersteunen.

Het co-implementatiemodel

De architectuur is bewust eenvoudig gehouden: de gateway en het governanceplatform lopen naast elkaar in uw infrastructuur en doen ieder waar hij goed in is.

  Developer workstations                   Your infrastructure
  ┌─────────────────────┐
  │ Claude Code          │
  │ (v2.1.195+)         │
  └──────┬──────────────┘

         │ OIDC device flow
         │ /v1/messages

  ┌──────────────────────────────┐      ┌────────────────────────────────┐
  │ Claude apps gateway          │      │ Olivares AI (self-hosted)      │
  │                              │      │                                │
  │ • OIDC auth (1 issuer)       │      │ • OTLP receiver (gRPC + HTTP)  │
  │ • Model allowlists           │  ──▶ │ • Claude hooks correlation     │
  │ • Spend limits               │ OTLP │ • gateway.yaml posture         │
  │ • Managed settings           │      │ • Audit event ingest           │
  │ • OTLP fan-out               │      │ • Multi-provider governance    │
  │ • JSON audit on stderr       │  ──▶ │ • MCP server inventory         │
  │                              │ logs │ • Access-edge graph (R/RW)     │
  │ Claude models only.          │      │ • Hash-chained audit ledger    │
  │ OIDC only.                   │      │                                │
  └──────────────────────────────┘      │ ALL providers, ALL surfaces.   │
                                        └────────────────────────────────┘

         Other agent traffic ────────────────────────┘
         (OpenAI, Gemini, vLLM, Ollama, MCP servers, CI pipelines)

Twee datastromen verbinden de gateway met het platform:

OTLP fan-out. De telemetry.forward_to-configuratie van de gateway ondersteunt al OTLP/HTTP-bestemmingen. Richt er één op de Olivares OTLP ontvanger. Het kenmerk session.id correleert gateway-relay-telemetrie met sessie-runtime-records van de eigen hooks-ontvanger van de Claude-connector. Identiteitsattributen (user.id, user.email, user.groups) die door de gateway worden toegevoegd, staan ​​op de toelatingslijst van operatorattributen en worden attributielabels op sessieranden en kostenmonsters; er is geen nieuwe ontvangercode nodig.

Inname van auditgebeurtenis. De claude-apps-gateway-connector leest de JSON-auditgebeurtenissen van de gateway. De 11 gedocumenteerde gebeurtenistypen (config.load, session.mint, session.refresh, device.authorize, device.verify, auth.denied, access.denied, inference, managed.serve, spend.blocked, admin.denied) worden toegewezen aan SDK-observaties: beveiligingsrelevante weigeringen worden bevindingen, gevolgtrekkingsgebeurtenissen worden toegangsranden, sessiemunten worden identiteitsobservaties en operationele gebeurtenissen worden metrische tellers. PII in de onbewerkte gebeurtenissen wordt SHA-256 gehasht voordat er enige waarneming wordt ingevoerd; e-mails en identificatiegegevens zijn pseudoniem.

De claude-apps-gateway-connector inventariseert ook gateway.yaml zelf: OIDC-uitgever, IdP-groep-naar-model-toewijzingen, upstream-providers, OTLP-bestemmingen en de houding van de uitgavenbeheerder. Deze inventaris bestaat uit structurele metadata: topologie, geen inloggegevens.

Houdingsbevindingen uit de gatewayconfiguratie

De connector brengt een reeks houdingsbevindingen naar voren die zijn afgeleid van de gatewayconfiguratie. Dit zijn de dingen die een governance-operator moet weten over een gateway-implementatie:

VindenErnstWat het vangt
Geen OTLP-bestemming geconfigureerdMiddelmatigTelemetrie wordt niet doorgestuurd; de vloot is onzichtbaar voor monitoring
Geen allesomvattend beleidHoogGebruikers die met geen enkele IdP-groep overeenkomen, krijgen elk model en geen beheerde instellingen
Geen bestedingslimietenMiddelmatigDe uitgavenbeheer-API en handhaving zijn niet geconfigureerd
Geheime letterlijke waarden in YAMLHoogclient_secret, jwt_secret, of databasewachtwoorden geschreven als letterlijke waarden in plaats van ${VAR}- of ${file:...}-referenties
Lange sessie TTL (>12u)MiddelmatigLatentie bij het opheffen van de inrichting: de sessie van een ingetrokken gebruiker blijft geldig
PKCE uitgeschakeldLaagDe stroom OIDC maakt geen gebruik van Proof Key for Code Exchange
Gevoelige telemetriesignalenLaaglogs: true of traces: true op een bestemming - deze kunnen volledige bash-opdrachten en bestandspaden bevatten

Deze bevindingen verschijnen in dezelfde houdingsweergave als de bevindingen van elke andere connector. De MCP-connector rapporteert mogelijk een hulpprogramma zonder sandbox. De Bedrock-connector kan een vangrail gap markeren. De gatewayconnector meldt dat er een catch-all voor beleid ontbreekt. Eén oppervlak, één uitzicht.

Hoe dit er in configuratie uitziet

De Claude-connector voert een OTLP-ontvanger uit op de standaard OpenTelemetry-poorten en een hooks-eindpunt voor Claude Code’s PreToolUse/PostToolUse-hooks. Daarnaast leest de apps-gatewayconnector de configuratie- en auditstroom van de gateway. Beide connectoren worden verzonden onder Apache-2.0 en importeren alleen vanuit de SDK, nooit vanuit de motorkern.

# olivares.yaml (afgekort)
connectors:
  - name: olivares.claude
    config:
      grpc_addr: "127.0.0.1:4317"
      http_addr: "127.0.0.1:4318"
      hook_path: "/hooks"
      enforcement: |
        {"rules":[
          {"tool":"Bash","decision":"ask","reason":"shell access requires confirmation"},
          {"resource_kind":"file","mode":"write","decision":"ask"}
        ]}
      gateway: "direct"
      semconv_opt_in: "gen_ai_latest_experimental"

  - name: olivares.claude-apps-gateway
    config:
      config_path: "/etc/claude-gateway/gateway.yaml"
      audit_log_path: "/var/log/claude-gateway/audit.jsonl"

Het veld gateway op de Claude-connector tagt elk kostenmonster met het implementatieoppervlak (direct, bedrock-mantle, bedrock-legacy, vertex, foundry, claude-platform-aws), zodat FinOps de uitgaven kan verdelen per providerpad. Het veld semconv_opt_in maakt het leveranciersneutrale GenAI-opnameprofiel mogelijk (vastgezet op OpenTelemetry semconv v1.41.1), wat betekent dat OpenAI, Gemini of een door OTel geïnstrumenteerde agent dezelfde toegangskaart en kostenpijplijn voedt - niet alleen Claude Code.

Eerlijke positionering

Er zijn dingen die de moeite waard zijn om direct over te zijn.

Dit is geen gatewayvervanging. De Olivares-inferentieproxy implementeert een subset van het gepubliceerde gatewayprotocol van Anthropic (OAuth-detectie, RFC 8628-apparaatautorisatie, levering van beheerde instellingen en het beheerdersoppervlak voor bestedingslimieten: weergaven, schrijfbewerkingen en handhaving per stoel, waarbij de verschillen met het draadprotocol zijn gedocumenteerd). Het is nuttig als die subset voldoende is. Het is geen volledige vervanging voor de OIDC-browserstroom van de gateway, en de semantiek van de groepsuitgaven verschilt opzettelijk (meest-beperkende-winsten in plaats van de samenvoegregels van de gateway). Als de Anthropic-gateway aan uw verificatievereisten voldoet, voert u deze uit.

De connector is alleen-lezen. De claude-apps-gateway-connector observeert de configuratie en audituitvoer van de gateway. Het wijzigt gateway.yaml niet, injecteert geen beleid en onderschept het pad /v1/messages niet. Het gaat om zichtbaarheid, niet om controle.

Olivares AI is een pre-release. Het product is niet gecertificeerd onder SOC 2, ISO/IEC 27001, de EU AI Act of enig ander raamwerk, en er vindt geen audit plaats. Het is ontworpen met het oog op de controledoelstellingen die deze raamwerken onderzoeken, zodat het klaar is om te worden gecontroleerd wanneer de tijd daar is.

De waarde zit in de combinatie. Een team dat Claude Code alleen tegen één provider draait, met één IdP, en geen MCP-servers van andere leveranciers, kan de gateway alleen voldoende vinden. De co-implementatie verdient zijn plaats wanneer het geheel heterogeen is: meerdere providers, MCP-servers van meerdere leveranciers, zelf-gehoste modellen, CI-pijplijnen, compliance-eisen die het volledige agentoppervlak bestrijken. Dat is waar ‘Claude auth’ en ‘landgoedbeheer’ echt verschillende problemen zijn.

Veelgestelde vragen

Vervangt Olivares AI de Claude Apps-gateway?

Nee. De leerstelling is ‘en, niet of’. De Anthropic-gateway is eigenaar van de Claude Code-authenticatiesessie, routering van modeltoegang en upstream-selectie. Olivares AI maakt van die implementatie een beheerd oppervlak binnen een breder controlevlak dat ook niet-Claude-providers, MCP-servers, zelf-gehoste modellen en de rest van uw agentendomein omvat. Als u de gateway al gebruikt, bewaar deze dan.

Kan ik Olivares AI gebruiken zonder de Claude apps-gateway?

Ja. De claude-apps-gateway-connector is optioneel. De kern Claude-connector (connectors/claude) neemt OTLP-telemetrie op en haakt rechtstreeks aan vanuit Claude Code-sessies, met of zonder een gateway ervoor. Als u de Anthropic-gateway niet gebruikt, verliest u het OIDC-sessieverificatiepad, maar behoudt u het volledige beheer: sessie-inventarisatie, toegangsrandtoewijzing, kostenattributie, hook-afdwinging, MCP-houding en de weergave met meerdere providers.


Zie /architecture voor gedetailleerde informatie over de implementatietopologie. Voor MCP-serverbeheer tussen leveranciers, zie /product/mcp. Zie /product voor het volledige productoppervlak.

Gerelateerde artikelen

Veelgestelde vragen

Vervangt Olivares AI de Claude apps-gateway?

Nee. De leerstelling is 'en, niet of.' De Anthropic-gateway is eigenaar van de Claude Code-authenticatiesessie, routering van modeltoegang en upstream-selectie. Olivares AI maakt van die implementatie een beheerd oppervlak binnen een breder controlevlak dat ook niet-Claude-providers, MCP-servers, zelf-gehoste modellen en de rest van uw agentendomein omvat. Als u de gateway al gebruikt, bewaar deze dan.

Kan ik Olivares AI gebruiken zonder de Claude apps-gateway?

Ja. De claude-apps-gateway-connector is optioneel. De kern-Claude-connector (connectors/claude) neemt OTLP-telemetrie op en haakt rechtstreeks vanuit Claude Code-sessies, met of zonder een gateway ervoor. Als u de Anthropic-gateway niet gebruikt, verliest u het OIDC-sessieverificatiepad, maar behoudt u het volledige beheer: sessie-inventarisatie, toegangsrandtoewijzing, kostenattributie, hook-afdwinging, MCP-houding en de weergave met meerdere providers.

Bekijk wat uw agents kunnen bereiken

Olivares AI is het open, self-hosted platform voor uw AI-landschap. Implementeer het op uw eigen infrastructuur en krijg de toegangskaart waar uw security- en platformteams al om vragen.