Skip to content

docs: admin connector, admin debugging, and accuracy fixes - #246

Merged
maansaake merged 4 commits into
mainfrom
copilot/extend-kerberos-documentation
Aug 22, 2026
Merged

docs: admin connector, admin debugging, and accuracy fixes#246
maansaake merged 4 commits into
mainfrom
copilot/extend-kerberos-documentation

Conversation

Copilot AI commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Adds missing documentation for the admin connector binary and the debug API, links the organisations doc from authentication, and corrects several factual errors in existing docs.

New documents

  • admin-connector.md — purpose, config file schema (persistence, tls, targetTls, origins), all env vars, emitted OTel metrics, minimal and production examples
  • admin-debugging.md — debugger mechanics, debugger permission requirement, session lifecycle (start / extend / stop / delete), full API reference, data models (DebugSession, DebugSessionCall, FlowTransition), step-by-step workflow

Accuracy fixes

  • authentication.md
    • Sessions use an HTTP-only session cookie, not an X-Krb-Session header as previously stated
    • Added refresh endpoint mention
    • Removed stale "admin functionality is being moved" placeholder; replaced with accurate config reference
    • Linked organizations.md from the Basic Auth section
  • routing.md — "OTEL" renamed to "Observability" to match the actual component name
  • README.md — new docs added, list kept alphabetical

Copilot AI changed the title docs: add admin-connector and admin-debugging docs, review and fix existing docs docs: admin connector, admin debugging, and accuracy fixes Aug 18, 2026
Copilot AI requested a review from maansaake August 18, 2026 05:25
@mr-jeeves
mr-jeeves Bot force-pushed the copilot/extend-kerberos-documentation branch from a541188 to c88d12a Compare August 18, 2026 05:28
@maansaake
maansaake marked this pull request as ready for review August 18, 2026 05:28
Comment thread docs/admin-connector.md Outdated
@@ -0,0 +1,200 @@
# Admin Connector

The admin connector is a standalone binary (`cmd/admin-connector`) that sits between a frontend application and the Kerberos admin API. It acts as a reverse proxy that enforces admin session authentication before forwarding requests to the admin API server.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot the admin connector forwards to OTHER services, after validating the admin session attached to a request, it does not proxy the admin API server

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in the latest commit. The doc now correctly describes the connector as an authenticating reverse proxy that validates the admin session cookie and forwards to any configured TARGET service, with no mention of the admin API as the upstream.

Comment thread docs/admin-connector.md Outdated

## Purpose

The admin connector solves a common deployment problem: browsers cannot safely forward HTTP-only session cookies set by Kerberos to a backend API that is hosted on a different origin. The connector is deployed at an origin the browser trusts, validates that the incoming request carries a valid admin session cookie, and then proxies the request to the upstream admin API.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot remove "admin API", just say "target", that's the canonical term for what the admin connector forwards to. Ensure the rest of the doc is aligned on the term "target".

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in the latest commit — all "admin API" references replaced with "target" throughout the doc.

Comment thread docs/admin-connector.md Outdated

The connector:

1. Reads the `krb-admin-session` cookie from the incoming request.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot what is that cookie name?... Just say "session cookie" is enough.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done — all occurrences now just say "session cookie" without naming it.

Comment thread docs/admin-connector.md Outdated

All fields except `persistence` are optional.

#### `persistence` (required)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot do not bother documenting specific configuration fields, this will surely change at a rapid pace. Just MENTION which configuration options you have on a high level: server TLS, target TLS, persistence (SQLITE/PG)...

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in c0912f0 — the config section now just lists the four high-level options (persistence, tls, targetTls, origins) as a bullet list with no field-level detail.

Comment thread docs/admin-connector.md Outdated

---

## Minimal Example

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot remove config example, too high detail.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed in c0912f0.

Comment thread docs/admin-connector.md Outdated

---

## Annotated Production Example

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot remove example, too much detail.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed in c0912f0.

Copilot AI requested a review from maansaake August 18, 2026 05:34
@mr-jeeves
mr-jeeves Bot force-pushed the copilot/extend-kerberos-documentation branch 3 times, most recently from 3792d29 to ad50b44 Compare August 22, 2026 10:44
Copilot AI and others added 4 commits August 22, 2026 11:21
Co-authored-by: maansaake <15028979+maansaake@users.noreply.github.com>
…ot the admin API

Co-authored-by: maansaake <15028979+maansaake@users.noreply.github.com>
Co-authored-by: maansaake <15028979+maansaake@users.noreply.github.com>
Co-authored-by: maansaake <15028979+maansaake@users.noreply.github.com>
@mr-jeeves
mr-jeeves Bot force-pushed the copilot/extend-kerberos-documentation branch from ad50b44 to 462bbea Compare August 22, 2026 11:21
@maansaake
maansaake merged commit 9970788 into main Aug 22, 2026
17 of 18 checks passed
@maansaake
maansaake deleted the copilot/extend-kerberos-documentation branch August 22, 2026 11:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants