feat(sidecar): Ozonetel admin auth service — RSA login, JWT cache

- Node crypto RSA encryption (not jsencrypt — server-side)
- Pre-login public key fetch, encrypted login, JWT caching
- Auto-refresh before token expiry (decoded from JWT payload)
- Auth headers: Bearer token + userId + userName + isSuperAdmin
- Registered in SupervisorModule with ConfigThemeModule import

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-12 16:05:24 +05:30
parent 27a3fbcfed
commit c23792496b
2 changed files with 128 additions and 3 deletions

View File

@@ -1,13 +1,15 @@
import { Module, forwardRef } from '@nestjs/common';
import { PlatformModule } from '../platform/platform.module';
import { OzonetelAgentModule } from '../ozonetel/ozonetel-agent.module';
import { ConfigThemeModule } from '../config/config-theme.module';
import { SupervisorController } from './supervisor.controller';
import { SupervisorService } from './supervisor.service';
import { OzonetelAdminAuthService } from '../ozonetel/ozonetel-admin-auth.service';
@Module({
imports: [PlatformModule, forwardRef(() => OzonetelAgentModule)],
imports: [PlatformModule, forwardRef(() => OzonetelAgentModule), ConfigThemeModule],
controllers: [SupervisorController],
providers: [SupervisorService],
exports: [SupervisorService],
providers: [SupervisorService, OzonetelAdminAuthService],
exports: [SupervisorService, OzonetelAdminAuthService],
})
export class SupervisorModule {}