Files
the-order/docs/integrations/CONNECTOR_STATUS.md
T
defiQUG 2633de4d33 feat(eresidency): Complete eResidency service implementation
- Implement credential revocation endpoint with proper database integration
- Fix database row mapping (snake_case to camelCase) for eResidency applications
- Add missing imports (getRiskAssessmentEngine, VeriffKYCProvider, ComplyAdvantageSanctionsProvider)
- Fix environment variable type checking for Veriff and ComplyAdvantage providers
- Add required 'message' field to notification service calls
- Fix risk assessment type mismatches
- Update audit logging to use 'verified' action type (supported by schema)
- Resolve all TypeScript errors and unused variable warnings
- Add TypeScript ignore comments for placeholder implementations
- Temporarily disable security/detect-non-literal-regexp rule due to ESLint 9 compatibility
- Service now builds successfully with no linter errors

All core functionality implemented:
- Application submission and management
- KYC integration (Veriff placeholder)
- Sanctions screening (ComplyAdvantage placeholder)
- Risk assessment engine
- Credential issuance and revocation
- Reviewer console
- Status endpoints
- Auto-issuance service
2025-11-10 19:43:02 -08:00

7.7 KiB

Connector Status - Microsoft Entra VerifiedID & Azure Logic Apps

Last Updated: 2024-12-28
Status: ✅ All Connectors Implemented


✅ Microsoft Entra VerifiedID Connector

Status: Fully Implemented
Package: @the-order/auth
File: packages/auth/src/entra-verifiedid.ts

Features Implemented

  • ✅ OAuth2 client credentials authentication
  • ✅ Automatic access token caching and refresh
  • ✅ Verifiable credential issuance
  • ✅ Verifiable credential verification
  • ✅ Presentation request creation
  • ✅ QR code generation for mobile wallets
  • ✅ Issuance status checking

API Integration

  • ✅ Microsoft Entra VerifiedID REST API v1.0
  • ✅ Token endpoint: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token
  • ✅ VerifiedID endpoint: https://verifiedid.did.msidentity.com/v1.0/{tenantId}

Environment Variables

  • ✅ ENTRA_TENANT_ID - Azure AD tenant ID
  • ✅ ENTRA_CLIENT_ID - Azure AD application (client) ID
  • ✅ ENTRA_CLIENT_SECRET - Azure AD client secret
  • ✅ ENTRA_CREDENTIAL_MANIFEST_ID - Credential manifest ID

Service Integration

  • ✅ Integrated into Identity Service
  • ✅ API endpoints: /vc/issue/entra, /vc/verify/entra
  • ✅ Swagger documentation included

✅ Azure Logic Apps Connector

Status: Fully Implemented
Package: @the-order/auth
File: packages/auth/src/azure-logic-apps.ts

Features Implemented

  • ✅ Workflow trigger support
  • ✅ Access key authentication
  • ✅ Managed identity authentication (via @azure/identity)
  • ✅ Pre-configured workflow triggers:
    • ✅ eIDAS verification workflows
    • ✅ VC issuance workflows
    • ✅ Document processing workflows

Authentication Methods

  • ✅ Access key authentication
  • ✅ Azure Managed Identity authentication
  • ✅ Dynamic import of @azure/identity (optional dependency)

Environment Variables

  • ✅ AZURE_LOGIC_APPS_WORKFLOW_URL - Logic Apps workflow URL
  • ✅ AZURE_LOGIC_APPS_ACCESS_KEY - Access key (if not using managed identity)
  • ✅ AZURE_LOGIC_APPS_MANAGED_IDENTITY_CLIENT_ID - Managed identity client ID

Service Integration

  • ✅ Integrated into Identity Service
  • ✅ Integrated into eIDAS bridge
  • ✅ Optional integration (gracefully degrades if not configured)

✅ eIDAS to Microsoft Entra VerifiedID Bridge

Status: Fully Implemented
Package: @the-order/auth
File: packages/auth/src/eidas-entra-bridge.ts

Features Implemented

  • ✅ eIDAS signature verification
  • ✅ Automatic credential issuance via Entra VerifiedID after eIDAS verification
  • ✅ Certificate chain validation
  • ✅ Certificate validity period checking
  • ✅ Optional Logic Apps workflow integration
  • ✅ Two-step process: verify then issue

Flow

  1. ✅ Request eIDAS signature for document
  2. ✅ Verify eIDAS signature and certificate
  3. ✅ Extract certificate information
  4. ✅ Issue verifiable credential via Entra VerifiedID with eIDAS claims
  5. ✅ (Optional) Trigger Logic Apps workflow

Service Integration

  • ✅ Integrated into Identity Service
  • ✅ API endpoint: /eidas/verify-and-issue
  • ✅ Swagger documentation included

Environment Variables

  • ✅ All eIDAS variables (EIDAS_PROVIDER_URL, EIDAS_API_KEY)
  • ✅ All Entra VerifiedID variables
  • ✅ All Azure Logic Apps variables (optional)

API Endpoints Summary

Identity Service Endpoints

Microsoft Entra VerifiedID

  • ✅ POST /vc/issue/entra - Issue credential via Entra VerifiedID
  • ✅ POST /vc/verify/entra - Verify credential via Entra VerifiedID

eIDAS Bridge

  • ✅ POST /eidas/verify-and-issue - Verify eIDAS and issue credential via Entra

Existing Endpoints (Still Available)

  • ✅ POST /vc/issue - Issue credential via KMS (original method)
  • ✅ POST /vc/verify - Verify credential (original method)
  • ✅ POST /sign - Sign document via KMS

High Priority

  1. Azure Key Vault Connector

    • Purpose: Secure secret storage
    • Status: Not yet implemented
    • Priority: High
    • Use Case: Store Entra client secrets, eIDAS API keys securely
  2. Azure Service Bus / Event Grid Connector

    • Purpose: Event-driven architecture
    • Status: Not yet implemented
    • Priority: High
    • Use Case: Async workflow processing, event notifications

Medium Priority

  1. Azure Active Directory B2C Connector

    • Purpose: User authentication
    • Status: Not yet implemented
    • Priority: Medium
    • Use Case: User sign-up and sign-in flows
  2. Azure Monitor / Application Insights Connector

    • Purpose: Enhanced observability
    • Status: Partially implemented (OpenTelemetry exists)
    • Priority: Medium
    • Use Case: Enhanced monitoring for Entra VerifiedID operations

Low Priority

  1. Azure Storage (Blob) Connector

    • Purpose: Document storage alternative
    • Status: Not yet implemented (S3/GCS supported)
    • Priority: Low
    • Use Case: Azure-native document storage
  2. Azure Functions Connector

    • Purpose: Serverless function integration
    • Status: Not yet implemented
    • Priority: Low
    • Use Case: Serverless workflow steps

Testing Status

Unit Tests

  • ⚠️ Not yet implemented
  • Recommended: Add tests for:
    • EntraVerifiedIDClient
    • AzureLogicAppsClient
    • EIDASToEntraBridge

Integration Tests

  • ⚠️ Not yet implemented
  • Recommended: Add tests for:
    • Identity service Entra endpoints
    • eIDAS bridge flow
    • Logic Apps workflow triggers

Manual Testing

  • ✅ Code compiles successfully
  • ✅ Type checking passes
  • ⚠️ Requires Azure setup for full testing

Configuration Checklist

Microsoft Entra VerifiedID Setup

  • Create Azure AD app registration
  • Configure API permissions
  • Create client secret
  • Create credential manifest in Azure Portal
  • Set environment variables:
    • ENTRA_TENANT_ID
    • ENTRA_CLIENT_ID
    • ENTRA_CLIENT_SECRET
    • ENTRA_CREDENTIAL_MANIFEST_ID

eIDAS Provider Setup

  • Configure eIDAS provider
  • Obtain API key
  • Set environment variables:
    • EIDAS_PROVIDER_URL
    • EIDAS_API_KEY

Azure Logic Apps Setup (Optional)

  • Create Logic App workflow
  • Configure trigger endpoints
  • Set environment variables:
    • AZURE_LOGIC_APPS_WORKFLOW_URL
    • AZURE_LOGIC_APPS_ACCESS_KEY OR
    • AZURE_LOGIC_APPS_MANAGED_IDENTITY_CLIENT_ID

Security Considerations

✅ Implemented

  • ✅ OAuth2 client credentials flow
  • ✅ Automatic token refresh
  • ✅ Secure secret handling (via environment variables)
  • ✅ Certificate chain validation for eIDAS
  • ✅ Validity period checking
  • ⚠️ Store secrets in Azure Key Vault (not yet implemented)
  • ⚠️ Use managed identity when possible
  • ⚠️ Implement rate limiting for external API calls
  • ⚠️ Add retry logic with exponential backoff
  • ⚠️ Implement circuit breaker pattern

Documentation


Summary

All requested connectors are fully implemented:

  1. ✅ Microsoft Entra VerifiedID Connector - Complete
  2. ✅ Azure Logic Apps Connector - Complete
  3. ✅ eIDAS to Entra Bridge - Complete
  4. ✅ eIDAS verification connected for issuance through Entra VerifiedID - Complete

Next Steps:

  1. Configure Azure resources (app registration, credential manifest)
  2. Set environment variables
  3. Test integration end-to-end
  4. Add comprehensive tests
  5. Consider additional connectors (Key Vault, Service Bus, etc.)