🛡️Introduction
Enterprise-grade Authentication & Authorization Gateway for Atlas Microservices
Atlas Auth Guard is a centralized authentication and authorization service that provides:
🔐 Single Sign-On (SSO) via Google OAuth
👥 Multi-tenant architecture with Organization → Team → Project hierarchy
🎭 Role-based access control (RBAC) with fine-grained permissions
🔑 API key management for service-to-service communication
🚦 Service routing to backend microservices with policy enforcement
🌐 Environment URLs
Production Environment
Web Dashboard
https://auth-gw.atlas.turing.com
Admin portal for managing teams, projects, users
API Endpoint
https://apac-atlas-guard-svc-589688574290.asia-south1.run.app
Backend API
API Documentation
https://apac-atlas-guard-svc-589688574290.asia-south1.run.app/v1/docs
Swagger UI with all endpoints
Health Check
https://apac-atlas-guard-svc-589688574290.asia-south1.run.app/v1/health
Service health status
Development (R&D) Environment
Web Dashboard
https://auth-gw.rd.atlas.turing.com
Development admin portal
API Endpoint
https://apac-atlas-guard-svc-264685500362.us-central1.run.app
Development API
API Documentation
https://apac-atlas-guard-svc-264685500362.us-central1.run.app/v1/docs
Development Swagger UI
Health Check
https://apac-atlas-guard-svc-264685500362.us-central1.run.app/v1/health
Development health status
📚 Documentation Guide
For End Users
Quick overview of how to use the system
Understanding teams, members, and team policies
Managing projects, metadata, and data isolation
User roles, permissions, and access control
Creating and managing API keys
For Developers
Integrate SSO into your application
How Auth Guard routes requests to backends
Service-to-service authorization
Complete security architecture
Common issues and solutions
🏗️ System Architecture
Multi-Tenant Hierarchy
Atlas Auth Guard implements a three-level tenant hierarchy:
Key Concepts
Organization
Top-level tenant. All users, teams, and projects belong to an organization. Currently: "Turing"
Team
Logical grouping of users. Teams have service access policies that control which backend services members can use.
Project
Isolated workspace within a team. Each project has its own API key and data isolation.
User
Individual authenticated via Google OAuth. Users have roles at global, team, and project levels.
👥 Role Hierarchy
Atlas Auth Guard implements a comprehensive role-based access control (RBAC) system:
Effective Role Calculation
When you access a resource, your effective role is determined by the most specific assignment:
1️⃣ Highest
Explicit project role
You have viewer on Project X → You're a viewer
2️⃣
Explicit team role
You have team_admin on Team A → You're team_admin for all projects in Team A
3️⃣ Lowest
Global role (fallback)
You're org_admin globally → Full org access where no explicit role exists
Important: Even super_admin can be restricted to viewer on a specific project if explicitly assigned.
🚀 Getting Started
For Dashboard Users
Login: Go to https://auth-gw.atlas.turing.com and click "Sign in with Google"
Select Context: Choose your team and project from the dropdown
Navigate: Use the sidebar to access Teams, Projects, Users, API Keys, etc.
For Developers Integrating SSO
See SSO Integration Guide for complete documentation.
For Backend Services Using API Keys
See API Keys Guide for complete documentation.
🔄 Request Flow
Here's how a request flows through the system:
📞 Support
API Documentation: See Swagger UI links above
Issues: Contact [email protected]
Feature Requests: Create a ticket in JIRA
Built with ❤️ by the Turing APAC Platform Team
Last updated