Skip to content

[Gap]: Document the complete Connector Gateway deployment contract #1159

Description

@danbarr

What needs documentation?

The Configure the Connector Gateway page currently shows only:

  • global.stacklok.connectorGateway.enabled
  • global.stacklok.connectorGatewayId
  • global.stacklok.authServerIssuer

That is not enough to deploy a working Connector Gateway. The chart requires a coupled set of auth-server, incoming-auth, directory, key-management, storage, corporate-IdP, and Enterprise Manager values. Operators currently discover them one failure at a time from Helm errors, pod logs, and the chart's very long values.yaml comments.

Add a complete, task-oriented configuration path that covers at least:

  • vmcpConfig.incomingAuth.type: oidc, issuer, audience/resource, and how those values must match the auth server's allowed_audiences.
  • enterpriseConfig.authServer, including its schema, upstream behavior, storage contract, and the fact that auth-less mode is not supported.
  • kek and authServerKeys, including the production recommendation to use existing Secrets rather than render-unstable generated values.
  • enterpriseConfig.directory.addr and binding claims.
  • The two supported Directory transport arms:
    • production TLS, projected ServiceAccount token, caller issuer/audience, and subject allowlists on Enterprise Manager;
    • the development-only cleartext configuration, which currently requires matching client and server flags.
  • The corporate primary IdP's audience/client requirements for both cloud-ui and the Connector Gateway control plane.
  • The Enterprise Manager platform-admin role/binding required to use the admin connector/directory endpoints. The current directory landing page says "The platform admin grant covers" this work but does not show how to create that grant or identify admin.enterprise.stacklok.com.
  • A verification sequence that tests login, gateway registration, an authenticated control-plane call, and the data-plane MCP endpoint separately.

Prefer one complete secure example, followed by focused alternatives, rather than making readers assemble fragments from component chart comments.

Context and references

This gap surfaced while moving stacklok-enterprise-demo-sandbox to Stacklok Enterprise Platform v0.17.0.

Related platform issues found during the same deployment:

Relevant source pages:

  • docs/platform/enterprise-platform/configure-connector-gateway.mdx
  • docs/platform/enterprise-platform/deployment.mdx
  • docs/platform/enterprise-platform/configure-identity.mdx
  • docs/platform/enterprise-directory/index.mdx

Use case

As a platform operator, I need to enable Connector Gateway from a single supported checklist and understand which values form one contract across the umbrella chart, so that a successful Helm install produces a usable login, control plane, and MCP data plane without iterative crash-loop debugging.

Activity

  1. danbarr commented on Oct 9, 2026

    @danbarr
    CollaboratorAuthor

    Most of the original deployment gap is covered by #1180 and the now-merged #1220. The current guide includes incoming OIDC issuer/audience matching, the embedded authorization server's schema and Redis storage, existing Secrets for key material, directory addressing and binding claims, TLS and development-only cleartext transport, ServiceAccount subject allowlists, and endpoint publishing. #1220 also adds separate checks for gateway registration, OAuth discovery, an authenticated control-plane request, and browser login plus an MCP tool call through the linked quickstart.

    The remaining work is:

    • Show how to grant platform-admin access. Provide a supported role/binding example for the Enterprise Manager's connector and directory administration endpoints, identify admin.enterprise.stacklok.com, and show how to verify the grant. Link it from the directory landing page, console prerequisites, and gateway configuration guide. Distinguish this authorization grant from the PostgreSQL BYPASSRLS role already documented for the admin database connection.
    • Complete the corporate IdP token contract for the console and gateway control plane. Explain how global.stacklok.primaryIdp.clientId, the console's OAuth client, and clientClaim relate; document the actual issuer, audience, and client-claim validation each endpoint performs. Include a worked configuration and token check so operators can obtain the <CORPORATE_ACCESS_TOKEN> used by the new verification step and diagnose a 401. Keep this separate from the gateway-issued token and /gw/mcp audience used by MCP clients.
    • Explain the projected ServiceAccount token audience. The TLS example covers the cluster issuer and all three subject allowlists, but does not explain how connector-gateway.directoryTLS.audience must match the Enterprise Manager's grpc.callerAuth.callerAudience. State the matching defaults and show the paired overrides when an operator changes them.
    • State explicitly that the embedded authorization server is required. The guide provides the required configuration, but still needs a concise statement that auth-less Connector Gateway deployments are unsupported.

    These are the remaining acceptance items for this issue. The endpoint publishing/verification and in-cluster discovery network/recovery work is covered by #1220, which closes #1217 and #1161.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or requestneeds-triageIssue needs initial triage by a maintainer

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions