Partner Portal Application Identities
URL: https://entra.microsoft.com/
Tenant ID: f90faace-b48d-4a19-a39c-1dd7b37686e3
Four different App registrations are used:
1. EG Zynergy Partners App
App Registration Name: EG Zynergy Partners App
Client ID: 39a142a0-3e9e-4c29-8f22-f17d0fa537d4
Allowed to Access:
- EG Zynergy Partners ApiService
- EG Zynergy Partners IntegrationApiService
- 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. EG Zynergy Partners API
App Registration Name: EG Zynergy Partners API
Client ID: 7412b4a0-9785-41cb-9b63-a61955334f3d
Allowed to Access:
- EGU.PartnerPortal.ApiService (not needed??)
- EG Zynergy Partners IntegrationApiService
- Scope: api://ef383bd8-146d-498d-a77b-afe4d730b6fe/AccessIntegrationservice
- Microsoft Graph
Purpose:
- Shared service-to-service authentication identity
- Used by both ApiService and IntegrationServiceAPI for service calls
Token Type: Service tokens (application permissions)
Client Secret: Required (stored as environment variables in Azure and git secrets for development)
3. EG Zynergy Partners ApiService
App Registration Name: EG Zynergy Partners ApiService
Client ID: e85dc5b1-f01b-45bd-b48d-08f50ee2e160
Allowed to Access:
- EG Zynergy IntegrationApiService
- Microsoft Graph
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
- Backend operations for Graph API, such as inviting users, managing groups etc.
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 |
