Authentication
All guides & resources to help you develop with BOSA Core Authentication
Overview
BOSA Core Authentication provides authentication solution that supports multi-tenancy authentication system. It offers a complete authentication system including client management, user authentication, and token handling. The system uses JWT (JSON Web Tokens) for secure authentication and Argon2 for password hashing.

Core Features
Client Management
Client creation and API key generation
Client-specific user isolation
User Management
User registration and authentication
Secure secret management using Argon2
User verification services
Token Management
JWT token generation and verification
Token expiration handling
Token revocation capabilities
Multi-tenancy Support
Complete data isolation between clients
Client-specific user management
Independent authentication flows per client
Client-scoped token validation
Custom security configurations per organization
Core Process
Client Creation
The authentication flow begins with Client creation using a Master Key:
Client Creation: A system administrator uses a Master Key to create a new Client
Client API Key: The system generates a unique API Key for the Client
Client Storage: Client information is securely stored in the database
User Management
Once a Client is established, it can manage its Users:
User Creation: A Client creates Users with unique identifiers
User Secret: The system generates or accepts a secret (password) for each User
Secret Hashing: User secrets are hashed using Argon2 before storage
User Storage: User information is securely stored in the database
Token Management
Authentication is performed through token issuance and verification:
Token Creation: Upon successful authentication, the system generates JWT tokens
Token Verification: These tokens are verified for subsequent requests
Token Expiration: Tokens expire after a configurable period (default: 43,200 minutes or 30 days)
Token Revocation: Tokens can be revoked by the system if needed
Third-Party Integrations
Third-Party Integrations
Users can extend their authentication to third-party systems:
Integration Creation: Users can create integrations with third-party connectors
Auth String Storage: The system securely stores authentication credentials for these integrations
Scoped Access: Each integration can be granted specific scopes of access
Next Steps:
Last updated