Customer Entra (infrastructure) Β· Provider Entra (platform ops) Β· Magic Link (end users) β unified into a single session model
The customer's Azure AD tenant that owns the cloud infrastructure. This is the billing owner and infrastructure manager.
These users may never log into the app. They manage infrastructure via Azure Portal, Terraform, and kubectl. They don't use the AI chat or MCP tools β they just make sure the platform runs.
Example: Acme Corp's IT department provisions the Azure resources. They don't use ContextWeaver's AI features β that's for the business users.
The service provider's Azure AD tenant. Platform engineers who deploy, manage, and maintain ContextWeaver.
roles: ["manager"]External users who register with any email address. Passwordless authentication via email magic links.
pending)activeroles: ["developer"]No passwords. Email IS the identity. Like Slack, Notion, and Vercel.
All three identity planes produce the exact same session format. The platform doesn't care how you authenticated.
Downstream systems (RBAC, Vault Cascade, RAG Isolation, MCP Tools) all read from this session. They never check how you logged in β only your email, roles, and groups.
| ποΈ Customer Entra | π§ Provider Entra | βοΈ Magic Link | |
|---|---|---|---|
| Purpose | Infrastructure ownership | Platform management | Use AI services |
| Auth method | Azure Portal / CLI | Microsoft SSO (OIDC) | Email magic link (JWT) |
| Logs into app? | Optional | Yes β Admin View | Yes β User View |
| App role | N/A (infra only) | manager | viewer / developer |
| Groups source | N/A | Azure AD groups | Cosmos DB (admin-assigned or self-service) |
| Credentials | Managed Identity | Entra token + vault | Personal vault (per-user) |
| MFA | Azure AD Conditional Access | Entra MFA | Email = 2FA (you must own the inbox) |
| Registration | Azure subscription | Added to Entra tenant | Self-service β admin approval |
| Example users | IT admin at Acme | ajay@brainzbytes | sarah@gmail.com |