Files
the_order/docs/integrations/CONNECTOR_STATUS.md
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.)