Backstage · Authentication Profile

Backstage Authentication

Authentication

Backstage secures its APIs with apiKey and http across 2 declared security schemes, as derived from its OpenAPI definitions.

Developer PortalInternal Developer PlatformSoftware CatalogOpen-SourcePlatform EngineeringSoftware TemplatesCNCF
Methods: apiKey, http Schemes: 2 OAuth flows: API key in: cookie

Security Schemes

cookieAuth apiKey
· in: cookie (backstage-auth)
bearerAuth http
scheme: bearer

Source

Authentication Profile

Raw ↑
generated: '2026-09-04'
method: searched
source: openapi/backstage-actions-api-openapi.yml, openapi/backstage-authentication-api-openapi.yml,
  openapi/backstage-authorization-api-openapi.yml, openapi/backstage-catalog-backend-openapi.yaml,
  openapi/backstage-documentation-api-openapi.yml, openapi/backstage-dynamic-features-openapi.yaml,
  openapi/backstage-entities-api-openapi.yml, openapi/backstage-events-backend-openapi.yaml,
  openapi/backstage-locations-api-openapi.yml, openapi/backstage-metadata-api-openapi.yml, openapi/backstage-notifications-backend-openapi.yaml,
  openapi/backstage-scaffolder-backend-openapi.yaml ...
summary:
  types:
  - apiKey
  - http
  api_key_in:
  - cookie
schemes:
- name: cookieAuth
  type: apiKey
  in: cookie
  parameter: backstage-auth
  sources:
  - openapi/backstage-actions-api-openapi.yml
  - openapi/backstage-authentication-api-openapi.yml
  - openapi/backstage-authorization-api-openapi.yml
  - openapi/backstage-documentation-api-openapi.yml
  - openapi/backstage-entities-api-openapi.yml
  - openapi/backstage-locations-api-openapi.yml
  - openapi/backstage-metadata-api-openapi.yml
  - openapi/backstage-search-api-openapi.yml
  - openapi/backstage-sync-api-openapi.yml
  - openapi/backstage-tasks-api-openapi.yml
  - openapi/backstage-templates-api-openapi.yml
  - openapi/backstage-token-verification-api-openapi.yml
- name: bearerAuth
  type: http
  scheme: bearer
  bearerFormat: JWT
  sources:
  - openapi/backstage-actions-api-openapi.yml
  - openapi/backstage-authentication-api-openapi.yml
  - openapi/backstage-authorization-api-openapi.yml
  - openapi/backstage-catalog-backend-openapi.yaml
  - openapi/backstage-documentation-api-openapi.yml
  - openapi/backstage-dynamic-features-openapi.yaml
  - openapi/backstage-entities-api-openapi.yml
  - openapi/backstage-events-backend-openapi.yaml
  - openapi/backstage-locations-api-openapi.yml
  - openapi/backstage-metadata-api-openapi.yml
  - openapi/backstage-notifications-backend-openapi.yaml
  - openapi/backstage-scaffolder-backend-openapi.yaml
  - openapi/backstage-search-api-openapi.yml
  - openapi/backstage-search-backend-openapi.yaml
  - openapi/backstage-sync-api-openapi.yml
  - openapi/backstage-tasks-api-openapi.yml
  - openapi/backstage-templates-api-openapi.yml
  - openapi/backstage-token-verification-api-openapi.yml

docs:
  - https://backstage.io/docs/auth/
  - https://backstage.io/docs/auth/identity-resolver
  - https://backstage.io/docs/ai/mcp-actions
searched_enrichment:
  note: >-
    Upgraded from derived to searched on 2026-09-04 by reading the Backstage auth documentation and
    the live OAuth discovery documents served by the project's demo deployment. Backstage is
    self-hosted, so the concrete identity provider is the operator's choice; what Backstage itself
    ships is the token model below.
  models:
    - name: Backstage user token (bearer JWT)
      detail: >-
        The frontend obtains a Backstage token from the auth backend and sends it as
        Authorization: Bearer <token> to plugin backends. This is the `JWT` bearer securityScheme
        declared in every first-party plugin OpenAPI.
    - name: Backstage service-to-service token
      detail: >-
        Plugin backends authenticate to each other with issued service tokens; the same bearer
        header carries them.
    - name: Cookie auth
      detail: >-
        A `backstage-auth` cookie is used for static asset / TechDocs style requests.
    - name: External OAuth (MCP clients)
      detail: >-
        The MCP Actions endpoint is an OAuth 2.1-style protected resource. Observed live on
        demo.backstage.io: RFC 9728 protected resource metadata pointing at an RFC 8414
        authorization server with authorization_code + PKCE (S256), dynamic client registration,
        token revocation, and Client ID Metadata Document (CIMD) support.
  identity_providers_supported:
    note: Backstage ships auth provider modules; the operator picks one or more.
    examples: [github, gitlab, google, okta, microsoft, auth0, oidc, atlassian, bitbucket, onelogin, saml/oauth2-proxy]
  discovery_documents:
    - well-known/backstage-demo-oauth-authorization-server.json
    - well-known/backstage-demo-oauth-protected-resource.json

Work with this as data

Every security artifact here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for security posture

4 MCP tools reach this
  • find_securityBrowse and filter every security artifact in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This security artifact
curl "https://apis.io/api/v1/security/backstage-authentication"
All security posture
curl "https://apis.io/api/v1/security?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.