Sign inSign up

cyrius44/verifid

By cyrius44

Updated 5 months ago

VerifID is a contact verification portal based on Microsoft Entra Verified ID

Image
Security
0

1.6K

cyrius44/verifid repository overview

🛡️ VerifID

VerifID is a contact verification portal based on Microsoft Entra Verified ID.

image

It allows HR teams to provide verifiable credentials to employees. It also provides support teams with a way to verify their identity without a password, using a QR code and Microsoft Authenticator.

The goal is to limit identity theft and fraud.

Microsoft Verified ID provides:

  • Digital fingerprint generation via the "My account" page
  • Digital fingerprint creation and verification APIs

This development offers a user-friendly interface focused on verifying the identity of the person you are interacting with.

Verified ID For more information, you can visit the Microsoft website.

The development carried out is based on the examples provided by Microsoft in the Azure-Samples repository


Features

  • 🪪 Credential Issuance — HR issues a VerifiedEmployee verifiable credential directly into the employee's Microsoft Authenticator wallet
  • 🔍 Identity Verification — Helpdesk agents generate a QR code; the employee scans it to prove their identity in seconds
  • 📟 Assistance Code — A short 4-digit code shared verbally with the helpdesk to look up a verification result without needing a session ID
  • 🔐 Azure Entra ID authentication — Optional JWT-based access control with role and scope enforcement (helpdesk, hr)
  • 📱 Mobile-first UI — Responsive Angular 21 frontend, installable as a PWA
  • 🐳 Single-container deployment — Frontend and backend bundled in one Docker image
  • 🔒 Security headers — CSP, HSTS, X-Frame-Options, Permissions-Policy applied on every response

Quick Start

Docker CLI
docker run -d \
  --name verifid \
  -p 8000:8000 \
  -e AZURE_TENANT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e AZURE_CLIENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e AZURE_CLIENT_SECRET=your-client-secret \
  -e VERIFIED_ID_DID=did:web:yourdomain.com \
  -e VERIFIED_ID_CONTRACT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e APP_BASE_URL=https://yourdomain.com \
  -e API_KEY=your-api-key \
  -e AUTH_CLIENT_ID=xxxxxxx-xxx-xxxx-xxxx-xxxxxxxxxxxx \
  ghcr.io/cyr-ius/verifid:latest

Open http://localhost:8000 to access the portal.

Docker Compose
services:
  verifid:
    image: ghcr.io/cyr-ius/verifid:latest
    container_name: verifid
    restart: unless-stopped
    ports:
      - "8000:8000"
    environment:
      - AZURE_TENANT_ID=${AZURE_TENANT_ID}
      - AZURE_CLIENT_ID=${AZURE_CLIENT_ID}
      - AZURE_CLIENT_SECRET=${AZURE_CLIENT_SECRET}
      - VERIFIED_ID_DID=${VERIFIED_ID_DID}
      - VERIFIED_ID_CONTRACT_ID=${VERIFIED_ID_CONTRACT_ID}
      - APP_BASE_URL=${APP_BASE_URL}
      - API_KEY=${API_KEY}
      - AUTH_CLIENT_ID=${AUTH_CLIENT_ID}

More informations

Repository : Git Readme

Tag summary

Content type

Image

Digest

sha256:3bad6ed79

Size

81.4 MB

Last updated

5 months ago

docker pull cyrius44/verifid