Red Hat Build of Keycloak with biometric facial recognition authentication via NeuroFace
RHBK 26.0Keycloak SPIFacial 2FAOpenShift
Demo β Biometric Authentication Flow
Biometric Authentication Flow
Quick demo of the delegated creation and 2FA facial recognition flow with RHBK and NeuroFace
Demo β NeuroFace Facial Recognition
NeuroFace β Facial Recognition in Action
Full walkthrough of the NeuroFace webapp: training, recognition, and model configuration
Overview
π
Delegated Creation + Biometric Enrollment
Admin creates users in Keycloak. On first login, users enroll their face via webcam β 3 to 5 captures from different angles sent to NeuroFace for model training.
π€
Second Factor Authentication (2FA)
After password login, users verify their identity through facial recognition. The SPI calls NeuroFace /api/recognize and matches against the enrolled profile.
π¦
Single Helm Install
One helm install deploys both RHBK and NeuroFace in the same namespace with pre-configured realm, clients, flows, and roles.
NeuroFace β Facial Recognition Webapp with ML (OpenCV LBPH / dlib)
OpenShift Topology β RHBK + NeuroFace deployed in the same namespace
Helm Chart Catalog β rhbk-neuroface available on Artifact Hub
Helm Chart Catalog β NeuroFace dependency chart
Biometric Enrollment β Webcam facial capture during delegated user creation
Biometric 2FA Test β Facial recognition verification during login
Biometric Verification Result β Identity confirmed via NeuroFace
Training β Uploading facial images to the NeuroFace model for a new user
Training Complete β Model successfully trained with the uploaded facial data
Recognition Test β Verifying facial identity against the trained model
Recognition Test β Multi-face detection and label matching in real time
AI Chat β Facial analysis assistant powered by Granite LLM integration
NeuroFace β Facial Recognition Service
NeuroFace is a facial recognition webapp built with FastAPI and Angular 17, containerized with Red Hat UBI9 certified images. It provides the ML backend that powers the biometric authentication.
API Endpoints Used by the SPI
Endpoint
Method
Usage
/api/health
GET
Health check before biometric operations
/api/images
POST
Upload facial images during enrollment (multipart)
/api/train
POST
Train the recognition model after enrollment
/api/recognize
POST
Verify facial identity during 2FA login
/api/labels
GET
List registered biometric labels
Authentication Flows
1. Delegated Creation with Biometric Enrollment
KC Admin βββΊ Creates user βββΊ Assigns Required Action "Biometric Enrollment"
β
βΌ
User logs in with
temporary credentials
β
βΌ
Webcam: captures 3-5 images
from different angles
β
βΌ
SPI β POST /api/images (label=username)
SPI β POST /api/train
β
βΌ
biometric_enrolled = true
User joins group "biometric-enrolled"