Partner Portal Application Identities
URL: https://entra.microsoft.com/
Tenant ID: 6073ce8b-73f3-4df4-9b80-5e40cdc6965f
Four different App Registrations are used:
1. Partner Portal App
App Registration Name: Partner Portal App
Client ID: 84c38b43-12e4-4c26-8292-8910d79aa532
Allowed to Access:
- EGU.PartnerPortal.ApiService
- EGU.PartnerPortal.IntegrationApiService
- Partner Portal API
- Microsoft Graph
- Scope:
User.Read
- Scope:
Purpose:
- User authentication via Microsoft Entra External ID (CIAM) - issues user tokens
- Swagger authentication for ApiService and IntegrationServiceAPI - issues user tokens
- Frontend Blazor WebAssembly application identity
Token Type: User tokens (delegated permissions)
2. Partner Portal API
App Registration Name: Partner Portal API
Client ID: 93bc5b97-73e5-48aa-a6b6-703b78284351
Allowed to Access:
- EGU.PartnerPortal.ApiService
- EGU.PartnerPortal.IntegrationApiService
- Microsoft Graph (could be removed???)
Purpose:
- Shared service-to-service authentication identity
- Used by both ApiService and IntegrationServiceAPI for service calls
- Provides centralized service identity for backend communications
Token Type: Service tokens (application permissions)
Client Secret: Required (stored as environment variables in Azure and git secrets for development)
3. EGU.PartnerPortal.ApiService
App Registration Name: EGU.PartnerPortal.ApiService
Client ID: 4dad5d62-dc8c-4378-8bd0-ae736a4d73fe
Allowed to Access:
- EGU.PartnerPortal.IntegrationApiService
Purpose:
- ApiService backend API identity
- Service-to-service authentication when ApiService calls IntegrationServiceAPI
- Validates incoming tokens from Partner Portal App, IntegrationServiceAPI, and Partner Portal API
Token Type: Service tokens (application permissions)
Client Secret: Required (stored as environment variables in Azure and git secrets for development)
4. EGU.PartnerPortal.IntegrationServiceAPI
App Registration Name: EGU.PartnerPortal.IntegrationServiceAPI
Client ID: bd5100ee-af63-4880-8c60-47d4207d60c1
Allowed to Access:
- EGU.PartnerPortal.ApiService
Purpose:
- IntegrationServiceAPI identity
- Service-to-service authentication when IntegrationServiceAPI calls ApiService
- Validates incoming tokens from Partner Portal App, ApiService, Partner Portal API, and WCF service static tokens
Token Type: Service tokens (application permissions)
Client Secret: Required (stored as environment variables in Azure and git secrets for development)
Additional Authentication: Also accepts static JWT tokens from WCF service (separate validation mechanism)
Summary Table
| App Registration | Client ID | Token Type | Purpose |
|---|---|---|---|
| Partner Portal App | 84c38b43-12e4-4c26-8292-8910d79aa532 | User tokens | Frontend app & Swagger authentication |
| Partner Portal API | 93bc5b97-73e5-48aa-a6b6-703b78284351 | Service tokens | Shared service-to-service identity |
| ApiService | 4dad5d62-dc8c-4378-8bd0-ae736a4d73fe | Service tokens | ApiService backend identity |
| IntegrationServiceAPI | bd5100ee-af63-4880-8c60-47d4207d60c1 | Service tokens | IntegrationServiceAPI identity |
