Aembit · Authentication Profile
Aembit Authentication
Authentication
Aembit secures its APIs with http across 2 declared security schemes, as derived from its OpenAPI definitions.
SecurityIdentityAccess ManagementWorkload IdentityNon-Human IdentitySecrets ManagementZero TrustAI AgentsMCPAuthenticationAuthorizationDevSecOpsCloud Security
Methods: http
Schemes: 2
OAuth flows:
API key in:
Security Schemes
bearerAuth http
scheme: bearer
EdgeApiAuth http
scheme: bearer
Source
Authentication Profile
generated: '2026-09-09'
method: searched
source: openapi/aembit-cloud-api-openapi.yml, openapi/aembit-edge-api-openapi.yml
docs: https://docs.aembit.io/dev-guide/api/
note: >-
Upgraded from the mechanical derivation, which deduplicated the two schemes into one because
both are http/bearer. They are NOT the same credential and must not be interchanged: the Cloud
API takes a long-lived opaque token a human generates in the console, and the Edge API takes a
short-lived JWT a workload earns by proving its identity. That distinction is the entire
product.
summary:
types: [http]
http_schemes: [bearer]
api_key_in: []
oauth2_flows: []
mutual_tls: false
openid_connect: false
scopes_published: false
scopes_note: >-
No OAuth 2.0 scopes exist on either API, so no scopes/ artifact is emitted. Authorization is
enforced by RBAC Roles plus the Resource Set boundary, not by token scopes.
schemes:
- name: bearerAuth
api: Aembit Cloud API
type: http
scheme: bearer
bearerFormat: Reference
description: Authorization header using the Bearer scheme.
sources: [openapi/aembit-cloud-api-openapi.yml]
credential: Aembit API Token
issued_by: Aembit Admin UI, Profile screen
token_shape: >-
Opaque reference token — bearerFormat is declared as "Reference", not JWT, so a client must
not attempt to parse or introspect it.
lifetime: Not published.
rotation: Not published; no token-rotation or revocation endpoint appears in the contract.
top_level_security: >-
The Cloud API declares `security: [{}]` at the document root — an EMPTY requirement object,
which in OpenAPI means security is OPTIONAL for every operation that does not override it.
No operation overrides it. Read literally the contract states that all 165 operations may be
called anonymously, which contradicts the documented bearer requirement and the 401 "Not
Authenticated" response declared on 161 of them. Treated here as a contract defect, not as a
real anonymous surface.
- name: EdgeApiAuth
api: Aembit Edge API
type: http
scheme: bearer
bearerFormat: JWT
description: Use Aembit Edge API access token obtained via the /edge/v1/auth endpoint.
sources: [openapi/aembit-edge-api-openapi.yml]
credential: Short-lived Edge access token
issued_by: 'POST /edge/v1/auth (operationId edge-api-auth)'
token_shape: OAuth2-style TokenDTO carrying the access token and expiry details.
applies_to: 'POST /edge/v1/credentials (edge-api-get-credentials)'
top_level_security: 'security: [{EdgeApiAuth: []}] — correctly declared and applied.'
bootstrap: >-
The auth operation itself is unauthenticated by design. A Client Workload presents attestation
evidence in an AuthRequest body and Aembit verifies it against a configured Trust Provider.
This is the secretless bootstrap: the workload holds no credential before the call.
supported_trust_providers:
- AWS Metadata Service
- AWS Role
- GCP Identity Token
- GitHub Action ID Token
- GitLab Job ID Token
- Kubernetes Service Account
- OIDC ID Token
- Terraform Cloud Identity Token
additional_trust_providers_documented:
- AWS ALB JWT (added 2026-08-05)
- GCP IAP JWT (added 2026-08-19)
- Azure managed identity
- SPIFFE
- Kerberos
trust_provider_note: >-
The eight in supported_trust_providers are the set the Edge API's own operation description
enumerates. The additional list is documented elsewhere in the platform docs and in the
changelog; recorded separately so the contract's own statement stays distinguishable from
the wider product surface.
authorization:
model: RBAC + Resource Sets
roles_api: /api/v1/roles
resource_set_header: X-Aembit-ResourceSet
resource_set_type: uuid
note: >-
Authorization is two-dimensional: a Role grants permissions to an administrative user, and a
Resource Set partitions which entities a request may touch. The Resource Set is carried as an
optional request header on effectively every operation and on the MCP Server; omitting it
falls back to the default Resource Set. An automated client should always set it explicitly.
sso:
api: /api/v1/sso-idps
signon_policies: [/api/v1/signin-policies, /api/v1/signin-policies/mfa, /api/v1/signin-policies/sso]
note: SAML/OIDC SSO and MFA sign-on policy are configurable for console users; they do not apply to API token auth.
mcp_server_auth:
scheme: bearer
header: 'Authorization: Bearer <apiToken>'
credential: Same Aembit API Token as the Cloud API.
scoping: X-Aembit-ResourceSet (optional uuid)
cross_link: mcp/aembit-mcp.yml
gaps:
- 'security: [{}] at the Cloud API root makes authentication read as optional for all 165 operations.'
- No published API token lifetime, rotation guidance, or revocation endpoint.
- No OAuth 2.0 authorization-code or client-credentials flow for third-party integrations against the Cloud API.
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.
Call it yourself
curl for this page
This security artifact
curl "https://apis.io/api/v1/security/aembit-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.