Gateway Module
Provides gateway infrastructure services including OAuth2 provider, token management, permissions, DNS, reverse proxy control, and a generic protected-service registry.
Features
- OAuth2 Provider: Full OAuth2 authorization server for container applications
- Token Management: JWT token generation, validation, and lifecycle management
- Permission System: Fine-grained permission checking and registry
- DNS Management: Dynamic DNS record management for container URLs
- Reverse Proxy: Nginx reverse proxy configuration and updates
- Ganymede Communication: HTTP client for communicating with the main API server
- Protected Services: Generic registry for module-defined protected services (HTTP/WS metadata)
API
Exports managers for OAuth, tokens, permissions, and DNS. Provides toGanymede function for API calls. updateReverseProxy manages nginx configuration. PermissionRegistry allows modules to register permission definitions. ProtectedServiceRegistry lets modules declare protected services that the gateway can guard with JWT + permissions. Gateway metadata includes FQDN and organization ID.
Dependencies
collab: For shared data (frontend only)
Exports
TGatewayExports: Complete gateway services interfaceTokenManager: JWT token managementOAuthManager: OAuth2 provider implementationPermissionManager: Permission checking and enforcementDNSManager: DNS record managementPermissionRegistry: Permission definition registryProtectedServiceRegistry: Protected-service registration (for HTTP/WS metadata)TGatewaySharedData,TGatewayMeta: Shared data types- Event types:
TEventLoad,TEventDisableShutdown