How to configure Biometric Extraction when sending credentials from ID Repository to IDA?

This document explains the steps to configure biometric extraction when sending credentials from ID Repository to IDA.

Instructions

Step by step guide to configure biometric extraction in MOSIP.

  1. In the data share policy for the online verification partner we should have a format value as “extraction” for biometrics.

    { "attributeName": "individualBiometrics", "group": "CBEFF", "source": [ { "attribute": "individualBiometrics" } ], "encrypted": true, "format": "extraction" }
  2. Data should be available in mosip_pms.partner_policy_bioextract for the formats and version used for each modality.

  3. And for each of the format mentioned in the above table corresponding the biometric SDK service should be running and same should be configured as per the below configurations.

  4. Configure the biometric extraction SDK in the id-repository-mz.properties

    #--------------------------Bio SDK Integration - Bio extractor Service ----------------------------------------# mosip.biosdk.default.host=http://13.233.66.241 mosip.biosdk.default.service.url=${mosip.biosdk.default.host}/biosdk-service # The fully qualified Class Name of the BIO SDK API implemented for Finger modality # This class will be loaded in runtime, the containing jar should be available in classpath mosip.biometric.sdk.provider.finger.classname=io.mosip.biosdk.client.impl.spec_1_0.Client_V_1_0 # The version of the BIO SDK API implemeted for Finger modality mosip.biometric.sdk.provider.finger.version=0.9 mosip.biometric.sdk.provider.finger.format.url.mock-1.1=${mosip.biosdk.default.service.url} # The default URL will be taken if no format specified in the extraction or the incoming extraction format is not configured. # If the below default configuration is not configured, the one of the configured url will be used as the default URL. # If no URL is configured, the default URL will be taken from the environment variable 'mosip_biosdk_service'. mosip.biometric.sdk.provider.finger.format.url.default=${mosip.biosdk.default.service.url} # The fully qualified Class Name of the BIO SDK API implemented for Iris modality # This class will be loaded in runtime, the containing jar should be available in classpath mosip.biometric.sdk.provider.iris.classname=io.mosip.biosdk.client.impl.spec_1_0.Client_V_1_0 # The version of the BIO SDK API implemeted for Iris modality mosip.biometric.sdk.provider.iris.version=0.9 mosip.biometric.sdk.provider.iris.format.url.mock-1.1=${mosip.biosdk.default.service.url} # The fully qualified Class Name of the BIO SDK API implemented for Face modality # This class will be loaded in runtime, the containing jar should be available in classpath mosip.biometric.sdk.provider.face.classname=io.mosip.biosdk.client.impl.spec_1_0.Client_V_1_0 # The version of the BIO SDK API implemeted for Face modality mosip.biometric.sdk.provider.face.version=0.9 mosip.biometric.sdk.provider.face.format.url.mock-1.1=${mosip.biosdk.default.service.url}

 

Here is a sample example to add SDKs for performing biometric extraction.

  1. First you need to make sure you have a policy available where you specify that you need to perform extraction. Here as per step one in this document, the individualBiometrics field has extraction enabled.

  2. Then you need to update the partner_policy_bioextract table with details on which SDK should be used (by providing extractor provider alias & version number) for each modality (this way you can configure that for Face you might not need any extraction but for iris and finger you need it).

  3. Now using the provider alias and version number you need to update provide the biometric extraction URL. Here is an example for fingerprints.
    mosip.biometric.sdk.provider.finger.format.url.<provider alias>-<version>=${mosip.biosdk.default.service.url}