Documentation

Authentication & Authorization

How authentication and authorization work in Fabric AI, including sign-in methods, session management, and role-based access control.

Fabric AI provides secure authentication with support for multiple sign-in methods and organization-level access control.

Authentication Methods

Fabric supports the following sign-in methods:

MethodDescription
Email & PasswordTraditional sign-up with email verification
Magic LinkPasswordless login via email
PasskeyWebAuthn/FIDO2 biometric authentication
Two-Factor (2FA)TOTP-based second factor
Google OAuthSign in with Google account
GitHub OAuthSign in with GitHub account
Microsoft OAuthSign in with Microsoft account

Session Management

The API uses session-based authentication. When a user signs in, a secure session is created:

  1. User authenticates via one of the supported methods
  2. A session is created and stored securely
  3. A secure HTTP-only cookie is set on the client
  4. Subsequent API requests include the cookie automatically
  5. Each request validates the session before proceeding

Sessions are configured with configurable expiration and support account linking (users can link multiple OAuth providers to one account).


Authorization Levels

API endpoints have different authorization levels:

LevelDescriptionExample
PublicNo authentication requiredContact forms, newsletter signup
AuthenticatedRequires a valid sessionProfile settings, AI chat
Tenant-ScopedAuthenticated with automatic data isolationProjects, documents, workflows
AdminRequires admin roleUser management, system settings

Rate Limiting

API endpoints are rate-limited to prevent abuse:

CategoryDescription
StandardPer-user limits for regular operations
AI OperationsStricter per-user limits for AI/LLM calls
Workflow OperationsPer-user limits for workflow management
Agent OperationsPer-user limits for agent executions
PublicPer-IP limits for unauthenticated endpoints

Organization Roles

Organization-level access uses role-based access control:

RolePermissions
OwnerFull control including billing, deletion, and member management
AdminCan manage members, settings, and all resources
MemberCan use agents, create documents, and access shared resources

Roles are assigned when inviting members and can be changed by owners and admins.


Social OAuth Setup

To enable social sign-in providers, configure the following:

ProviderRequirements
GoogleOAuth client ID and secret from Google Cloud Console
GitHubOAuth app credentials from GitHub Developer Settings
MicrosoftApp registration from Azure Portal

Account linking is enabled for Google and GitHub, allowing users to sign in with multiple providers and link them to a single account.


API Reference

The API automatically generates OpenAPI documentation for all authentication endpoints. Access the reference at:

GET /api/auth/reference

This provides a complete reference of all available authentication endpoints, request/response schemas, and error codes.


Next Steps