Kundenportal Management Server
π€ Generated with Claude Code
Co-Authored-By: Claude (noreply@anthropic.com)
Overviewβ
The cca.kundenportal.managementserver is a multi-tenant SPA hosting platform that serves the Kundenportal Angular application. It dynamically selects SPA versions based on CCAOnline compatibility and injects portal-specific configuration.
Repository: cca.kundenportal.managementserver
Key Responsibilitiesβ
| Responsibility | Description |
|---|---|
| SPA Hosting | Serves Angular SPA from versioned directories |
| Version Selection | Matches SPA version to CCAOnline applicationVersion |
| Config Injection | Injects portal-specific settings (API URLs, auth keys) |
| Portal Provisioning | Creates new portals via Management API |
| Health Monitoring | Checks CCAOnline availability for each portal |
Integration Pointsβ
Outbound (Management Server β External)β
| Target | Endpoint | Purpose |
|---|---|---|
| CCAOnline | /health | Get applicationVersion for SPA selection |
| CCAOnline | /endcustomer/health | Verify EndcustomerApi health |
| Azure DevOps | Git repository | Pull/push portal configs and SPA versions |
Inbound (External β Management Server)β
| Source | Endpoint | Purpose |
|---|---|---|
| Endkunde Browser | https://{portal}.myversum.at | Portal access |
| CCAOnline Config Page | /kundenportale/* | Portal management API |
| Azure DevOps Webhook | /_callbacks/HostingRepositoryUpdated | Trigger config refresh |
Request Flow Summaryβ
Endkunde β makler.myversum.at
β
ββ KundenportalFeatureMiddleware
β ββ Resolve SPA version (fixed or from CCAOnline /health)
β
ββ KundenportalRoutingMiddleware
β ββ Rewrite paths to versioned directories
β
ββ Static Files
ββ Serve SPA from git repository
Configuration Injected to SPAβ
The management server writes settings.json for each portal:
{
"api": {
"baseUrl": "https://cca.customer.at",
"token": "/endcustomer/token",
"userInfo": "/endcustomer/userinfo"
},
"title": "Makler Kundenportal"
}
Infrastructureβ
| Component | Resource |
|---|---|
| Application Gateway | TIS-PROD-CCA_Weblight-AppGw (WAF v2) |
| App Service | TIS-PROD-CCAKundenportalManagement-WE-APP (P1v3) |
| NAT Gateway | TIS-PROD-CCA_Integration-WE-NAT |
| Static Outbound IP | 40.91.210.71 |
| SQL Database | tis-prod-ccakundenportalmanagement-we-sql |
| CDN | TIS-PROD-TISCCAWebApplications-CDN1 |
| Git Repository | Azure DevOps kundenportal-hosting |
| Application Insights | TIS-PROD-CCA_Integration-WE-AI01 |
All resources in West Europe (EU) for GDPR compliance.
β cca.kundenportal.managementserver/docs/INFRASTRUCTURE.md
Detailed Documentationβ
For implementation details, middleware pipeline, and git integration:
β cca.kundenportal.managementserver/docs/ARCHITECTURE.md