1. Configuration File

GBDS API configuration parameters are defined in a configuration file, containing all parameters and its respective values. Omitted parameters assume their default values. This section describes the properties of the configuration file.

1.1. File Location

The configuration file is /etc/griaule/conf/gbsapi/gbdsapi.properties.

1.2. File Properties

The configuration file must follow some requirements in order to be correctly interpreted by GBDS. These requirements are:

  1. The file name and location must be exactly as mentioned in section 1.1;
  2. There must be exactly one configuration parameter per line;
  3. Each configuration parameter must be in the form {parameter}={value}, without line breaks;
  4. Each value must be separated by a comma when attributed to a single parameter.

2. Configuration Parameters

This section describes each GBDS API configuration parameter that can be listed in the configuration file, and how they affect the system operation.

2.1. Security

See also

See the GBDS Security Manual for further information about security configuration of GBDS.

2.1.1. gbscluster.api.security.enabled

This parameter defines whether the security methods for authentication and authorization are enabled.

Default value:

true

Possible values:

true, false

2.1.2. gbscluster.api.security.keystore

This parameter defines the path to the keystore containing the LDAP bind user password and the JWT Token signing key.

Default value:

Empty

2.1.3. gbscluster.api.security.ldap.url

This parameter defines the connection URL for the LDAP server.

Default value:

Empty

2.1.4. gbscluster.api.security.ldap.userSearchBase

This parameter defines the Distinguished Name (DN) for the users repository in the LDAP server.

Default value:

Empty

2.1.5. gbscluster.api.security.ldap.userSearchAttribute

This parameter defines the user attribute that will be used as user name during authentication.

Default value:

Empty

2.1.6. gbscluster.api.security.ldap.userGroupMembershipAttribute

This parameter defines the user attribute that contains its group membership information.

Default value:

Empty

2.1.7. gbscluster.api.security.ldap.bindUserDN

This parameter defines the Distinguished Name of the bind user.

Default value:

Empty

2.1.8. gbscluster.api.security.token.ttlInMilliseconds

This parameter defines the time-to-live, in milliseconds, of the JWT Token.

Default value:

Empty

Possible values:

1800000 (30 min) to 10800000 (3 hours)

Recommended value:

3600000 (1 hour)

2.1.9. gbscluster.api.security.authorization.ranger.configurationDirectory

This parameter is optional and defines the directory with GBDS-specific ranger configuration information.

Default value:

Empty

2.1.10. gbscluster.api.security.authorization.rolePermissionMapFile

This parameter is optional and defines the file with role/permission mapping for GBDS Applications.

Default value:

Empty

2.2. gbds.cluster.kafka.task.topic

This parameter defines the Kafka topic where tasks will be allocated.

Default value:

gbds-tasks

2.3. gbds.cluster.zookeeper.quorum

This parameter defines hostname and port through which zookeeper servers can be found. Each value must be separated by commas if more than one is available.

Default value:

<hostname>:<port>

2.4. gbscluster.kafka.broker

This parameter defines the Kafka broker addresses and must reflect the Kafka configurations.

Default value:

<hostname>:6667

2.5. gbscluster.kafka.producer.acks

This parameter defines the number of acknowledgments the producer requires the leader to have received before considering a request complete. This controls the durability of records that are sent.

Default value:

1

Possible values:

0, 1, all

See also

see Kafka Documentation for more information

2.6. gbscluster.kafka.producer.buffer.memory

This parameter defines the total memory the producer can use to buffer records waiting to be sent to the server, in bytes.

Default value:

67108864

2.7. gbscluster.kafka.producer.batch.size

This parameter defines the maximum batch size for the producer to send in a single request when multiple records are being sent to the same partition.

Default value:

8196

2.8. gbscluster.kafka.consumer.fetch.message.max.bytes

This parameter defines the number of bytes of messages to attempt to fetch for each topic-partition in each fetch request.

Default value:

1248576

2.9. gbscluser.dispatcher.requests.topic

This parameter defines the topic used to listen to new requests. There is no relation between this parameter and gbscluster.kafka.group.

Default value:

requests

2.10. gbscluser.dispatcher.requests.nthreads

This parameter defines number of threads to be used for the requests consumers. By default, it is set up to the number of partitions the requests topic has.

Default value:

1

2.11. gbscluser.dispatcher.requests.partitions

This parameter defines the number of partitions used by Kafka for requests topic storage.

Default value:

1

2.12. gbscluser.dispatcher.requests.replication

This parameter defines the replication factor used for Kafka topics.

Default value:

3

2.13. gbscluster.hdfs.person.location

This parameter defines the location where ANSI/NIST XML files will be saved in.

Default value:

hdfs://<hostname>:8020/tmp/gbscluster/

2.14. gbscluster.hdfs.host

This parameter defines the HDFS host address and must match the HDFS configuration.

Default value:

hdfs://<hostname or HA nameservice>:8020

2.15. gbscluster.transport.http.url

This parameter defines the transport HTTP URL.

Default value:

http://<hostname>

2.16. gbscluster.transport.http.port

This parameter defines the transport HTTP port.

Default value:

6516

2.17. gbscluster.search.verify.primary.fingerprints

This parameter defines whether search operations must be executed over fingerprint templates.

Default value:

true

Possible values:

true, false

2.18. gbscluster.search.verify.primary.faces

This parameter defines whether search operations must be executed over face templates.

Default value:

true

Possible values:

true, false

2.19. gbscluster.search.verify.primary.iris

This parameter defines whether search operations must be executed over iris templates.

Default value:

false

Possible values:

true, false

2.20. gbscluster.search.verify.primary.palmprints

This parameter defines whether search operations must be executed over palmprints templates.

Default value:

false

Possible values:

true, false

2.21. gbscluster.search.verify.primary.newborn-palmprints

This parameter defines whether search operations must be executed over newborn palmprint templates.

Default value:

false

Possible values:

true, false

2.22. gbscluster.search.iris.verify.matchthreshold

This parameter defines the minimum score for an iris comparison to be considered a match during search operations.

Default value:

26

2.23. gbscluster.search.fingerprints.ul.verify.matchthreshold

This parameter defines the minimum score for a UL fingerprint comparison to be considered a match during search operation.

Default value:

35

2.24. gbscluster.search.palmprints.ul.verify.matchthreshold

This parameter defines the minimum score for a UL palmprint comparison to be considered a match during search operation.

Default value:

35

2.25. gbscluster.activate.quality.duplicities

This parameter defines whether to consider enroll transactions with duplicities as ENROLL_FAILED (false) or ENROLL_PENDING (true).

Default value:

false

Possible values:

true, false

2.26. gbscluster.enroll.fingerprints.verify.matchthreshold

This parameter defines the minimum score to consider a fingerprint 1:1 comparison a match during a search operation.

Default value:

25

2.27. gbscluster.enroll.fingerprints.verify.anglethreshold

This parameter defines the angle to be considered when comparing two fingerprints during a search operation.

Default value:

180

Range:

0 to 180 (-1 will cause the same effect as 180)

2.28. gbscluster.update.faces.verify.matchthreshold

This parameter defines the threshold to be used when matching face biometrics during search operations. Assigning a high value to this parameter can possibly increase the number of false-negative occurrences.

Default value:

60

2.29. gbscluster.enroll.newborn-palmprints.verify.matchthreshold

This parameter defines the minimum score to consider a newborn palmprint 1:1 comparison a match during a search operation.

Default value:

35

2.30. gbscluster.enroll.fingerprints.ul.anglethreshold

This parameter defines the angle to be considered when comparing two unsolved fingerprint latents.

Default value:

180

Range

0 to 180 (-1 will cause the same effect as 180)

2.31. gbscluster.update.consider.fingerprints

This parameter defines whether fingerprints should be considered when generating update exceptions.

Default value:

true

Possible values:

true, false

2.32. gbscluster.update.consider.faces

This parameter defines whether face images should be considered when generating update exceptions.

Default value:

false

Possible values:

true, false

2.33. gbscluster.update.consider.faces.beforeFingerprints

This parameter defines whether faces should be analyzed before fingerprints when generating update exceptions. If false, face analysis is done after fingerprint analysis.

Default value:

false

Possible values:

true, false

2.34. gbscluster.update.minimum.fingers

This parameter defines the minimum number of fingerprint matches required for an “update” operation to be accepted.

Default value:

4

2.35. gbscluster.min.quality

This parameter defines the minimum quality required from an extracted fingerprint to not generate an ENROLL_PENDING transaction.

Default value:

50

2.36. gbscluster.update.min.quality

This parameter defines the minimum quality required from an extracted fingerprint to not generate an UPDATE_PENDING transaction.

Default value:

50

2.37. gbds.enroll.fingerprints.min-nr-template

This parameter defines the minimum number of fingerprint templates required for a transaction to be processed. If the transaction does not contain the required number of templates, it will fail.

Default value:

0

2.38. gbds.enroll.faces.min-nr-template

This parameter defines the minimum number of face templates required for a transaction to be processed. If the transaction does not contain the required number of templates, it will fail.

Default value:

0

2.39. gbds.enroll.iris.min-nr-template

This parameter defines the minimum number of iris templates required for a transaction to be processed. If the transaction does not contain the required number of templates, it will fail.

Default value:

0

2.40. gbds.enroll.palmprint.min-nr-template

This parameter defines the minimum number of palmprint templates required for a transaction to be processed. If the transaction does not contain the required number of templates, it will fail.

Default value:

0

2.41. gbds.enroll.newborn-palmprint.min-nr-template

This parameter defines the minimum number of newborn palmprint templates required for a transaction to be processed. If the transaction does not contain the required number of templates, it will fail.

Default value:

0

2.42. gbscluster.update.fingerprints.verify.matchthreshold

This parameter defines the minimum score to consider a fingerprint 1:1 comparison a match during a “verify” operation.

Default value:

35

2.43. gbscluster.update.fingerprints.verify.anglethreshold

This parameter defines the angle to be considered when comparing two fingerprints during a “verify” operation.

Default value:

180

Range:

0 to 180 (-1 will cause the same effect as 180)

2.44. gbscluster.enroll.fingerprints.verify.duplicities.matchthreshold

When performing quality verification, during an enrollment operation, a cross finger comparison is executed for checking duplicated fingers within the transaction.

This parameter defines the score above which a fingerprint verify is considered a match when performing cross finger validation.

Default value:

45

2.45. gbscluster.enroll.fingerprints.verify.sequencecheck.matchthreshold

This parameter defines the minimum score for a main capture fingerprint to be considered a match against its respective index in sequence control.

If the comparison between a rolled fingerprint and its respective finger in sequence control captures (e.g. 4-4-2 or 2-2-1) returns a matching score above this threshold, it will be considered a match for sequence checking.

Default value:

20

2.46. gbscluster.enroll.fingerprints.verify.sequencecheck.matchthreshold.<index>

This parameter defines the minimum score for a given main capture fingerprint to be considered a match against its respective index in sequence control.

If the comparison between the given rolled fingerprint and its respective finger in sequence control captures (e.g. 4-4-2 or 2-2-1) returns a matching score above this threshold, it will be considered a match for sequence checking.

Note

This configuration is optional and, if not provided, GBDS will use the global threshold value defined in gbscluster.enroll.fingerprints.verify.sequencecheck.matchthreshold.

Note

This configuration must be repeated in the configuration file for each desired finger index.

The <index> must be changed according to the desired finger. The possible values are:

  • left_little
  • left_ring
  • left_middle
  • left_index
  • left_thumb
  • right_thumb
  • right_index
  • right_middle
  • right_ring
  • right_index

Warning

The index must be in a STRING format according to the list above. Any other value will be considered as invalid and will be discarded.

2.47. gbscluster.enroll.fingerprints.identify.sequencecorrection.matchthreshold

This parameter defines the minimum score for a main capture fingerprint to be considered a match when comparing it against all fingerprints in sequence control.

This comparison is performed after a sequence control issue is identified to check whether the main capture fingerprints are swapped. If the main capture fingerprint does not match its respective sequence control capture, the system will automatically solve the issue by cropping the sequence control image and overriding the main capture one.

The maximum number of corrections performed is determined by the gbscluster.enroll.fingerprints.sequencecorrection.maxcorrections parameter. If the number of corrections needed is greater than the value defined, no changes will be done to the profile and the transaction status will be defined as PENDING.

Default value:

20

2.48. gbscluster.enroll.fingerprints.identify.sequencecorrection.matchthreshold.<index>

This parameter defines the minimum score for a given main capture fingerprint to be considered a match when comparing it against all fingerprints in sequence control.

This comparison is performed after a sequence control issue is identified to check whether the main capture fingerprints are swapped. If the main capture fingerprint does not match its respective sequence control capture, the system will automatically solve the issue by cropping the sequence control image and overriding the main capture one.

The maximum number of corrections performed is determined by the gbscluster.enroll.fingerprints.sequencecorrection.maxcorrections parameter. If the number of corrections needed is greater than the value defined, no changes will be done to the profile and the transaction status will be defined as PENDING.

Note

This configuration is optional and, if not provided, GBDS will use the global threshold value defined in gbscluster.enroll.fingerprints.identify.sequencecorrection.matchthreshold.

Note

This configuration must be repeated in the configuration file for each desired finger index.

The <index> must be changed according to the desired finger. The possible values are:

  • left_little
  • left_ring
  • left_middle
  • left_index
  • left_thumb
  • right_thumb
  • right_index
  • right_middle
  • right_ring
  • right_index

Warning

The index must be in a STRING format according to the list above. Any other value will be considered as invalid and will be discarded.

2.49. gbscluster.enroll.fingerprints.sequencecorrection.maxcorrections

This parameter defines the maximum number of automatic corrections performed before considering a transaction as “PENDING” and sending it to “manual review”. If the number of corrections required is greater than this parameter, no correction is performed and the original transaction is sent to “manual review”.

Default value:

4

2.50. gbscluster.enroll.fingerprints.sequencecontrol.copy-to-searchable-biometrics

This parameter defines whether sequence control images must be cropped for enrollment when there is no individual fingerprint images available.

Default value:

false

Possible values:

true, false

2.51. gbscluster.fingerprints.extraction.cab.enabled (deprecated)

Important

This setting is deprecated on version 4.7.0 and above. See the settings that replace it: gbscluster.fingerprints.extraction.enroll.type and gbscluster.fingerprints.extraction.verify.type.

This parameter defines whether CAB must be extracted from new biometrics.

Default value:

false

Possible values:

true, false

2.52. gbscluster.fingerprints.extraction.fnet.enabled (deprecated)

Important

This setting is deprecated on version 4.7.0 and above. See the settings that replace it: gbscluster.fingerprints.extraction.enroll.type and gbscluster.fingerprints.extraction.verify.type.

Default value:

false

Possible values:

true, false

2.53. gbscluster.fingerprints.extraction.enroll.type

This parameter defines the type of ginger extractor preset to be used for Enroll and Update.

Default value:

GRIAULE_2024

Possible values:

  • GRIAULE_FAST: a simpler and faster version of GRIAULE_BASIC (never used on API).
  • GRIAULE_BASIC: old “…cab.enabled = false”, default extraction for Verify.
  • GRIAULE_2020: old “…cab.enabled = true”, old default extraction for Enroll, Update.
  • GRIAULE_2024: new default extraction for Enroll, Update.
  • GRIAULE_2018: old “…fnet.enabled = true”.

2.54. gbscluster.fingerprints.extraction.verify.type

This parameter defines the type of ginger extractor preset to be used for Verify.

Default value:

GRIAULE_BASIC

Possible values:

  • GRIAULE_FAST: a simpler and faster version of GRIAULE_BASIC (never used on API).
  • GRIAULE_BASIC: old “…cab.enabled = false”, default extraction for Verify.
  • GRIAULE_2020: old “…cab.enabled = true”, old default extraction for Enroll, Update.
  • GRIAULE_2024: new default extraction for Enroll, Update.
  • GRIAULE_2018: old “…fnet.enabled = true”.

2.55. gbds.rdb.driverClassName

This parameter defines the class name for the relational database to be used for storing unsolved latents.

Default value:

com.mysql.jdbc.Driver

2.56. gbds.rdb.url

This parameter defines the relational database URL to be accessed.

Default value:

jdbc:mysql://<address>:<port>/gbds

2.57. gbds.rdb.username

This parameter defines the username to be used to access the relational database.

Default value:

root

2.58. gbds.rdb.password

This parameter defines the password to be used to access the relational database.

Default value:

Empty

2.59. gbds.rdb.dialect

This parameter defines the dialect to be used in the relational database.

Default value:

org.hibernate.dialect.MySQLDialect

2.60. gbds.rdb.showSql

This parameter defines whether SQL statements must be included in the application logs.

Default value:

false

Possible values:

true, false

2.61. gbds.biometric.best-of-biometrics.enabled

This parameter enables the best-of-biometrics, when enabled, the person biometric is the consolidation of the best biometrics obtained of that person in all transactions.

Warning

This flag MUST have the same value in GBDS API and GBDS.

Default value:

false

2.62. gbds.biometric.face.template.format

Defines the template format for face.

Possible Values: TPT_FORMAT_1 or TPT_FORMAT_2.

Important

The face formats are not interchangeable. Faces enrolled in a format will not be matched with faces enrolled in another format.

Danger

This value must be the same on application.conf and gbdsapi.properties

2.63. gbds.peopleList.countFromRDB

This parameter defines the behavior of pagination in people/list API call. Setting as true, people list will always count total people using restriction filter passed. In large databases it can compromise performance. Setting as false will restrict the response to only count, pageSize and currentPage values.

Default Value:

true

2.64. gbds.person.canDeleteOnException

This parameter enables deletion for people on exception. It is valid for both reference and entrant person.

Default value:

false

2.65. gbds.searches.verify.saveOnRdb.enabled

Defines if the verify searches will be saved on RDB table gbds.transaction.

Default Value:

true

Danger

This value must be the same on application.conf and gbdsapi.properties

2.66. gbds.searches.identify.saveOnRdb.enabled

Defines if the identify searches will be saved on RDB table gbds.transaction.

Default Value:

true

Danger

This value must be the same on application.conf and gbdsapi.properties

2.67. gbds.template.face.multiplicity

This parameter defines whether GBDS will use a single face template format, or new and old simultaneously.

Default Value:

ONLY_NEWEST

Possible Values:

  • ONLY_NEWEST - GBDS only uses the single newest template format.
  • MULTIPLE - GBDS uses both new and old template formats.

2.68. gbds.search.verify.adjust-resolution

When this setting is turned on, verify and update on API and verify post match on GBDS will adjust resolution performing verify match, decreasing score on fingers and palms.

Default Value:

true

Possible Values:

true, false

2.69. gbds.update.exception.reextract

This parameter determines the reextraction on update when it would generate an exception. Only not matched biometrics are reextracted on entrant and reference, but if the configuration to save the reextraction (gbds.update.exception.reextract.save) is true, all fingerprint biometrics are reextracted. Before reference reextraction, the API will check if the reference templates are already extracted with chosen extractor. If so, reextraction is not performed.

Default Value:

NONE

Possible Values:

  • NONE, do not reextract.
  • REGULAR, use current extractor on reference (current configured extractor).
  • GRIAULE_2018, use GRIAULE_2018 to reextract entrant and reference.

2.70. gbds.update.exception.reextract.save

This parameter enables the save on HBase transaction and people of reextraction of query and reference biometrics. If true, save full templates on transaction and master record templates on people, do not send templates do GBDS (there’s no new TGUID to process). On RDB transaction, ginger_extractor_type column is updated on reference and query and extraction_time updated on query (sums reference and query extraction time).

Default Value:

false

Possible Values:

true, false

3. Template Extraction Microservice

3.1. gbds.extraction.service

This parameter enables the template extraction microservice. If this parameter is set to false, GBDS will use the embedded extraction service.

Default value:

true

3.2. gbds.extraction.service.face.count

This parameter defines how many face template extraction microservice instances will be available.

Default value:

1

3.3. gbds.extraction.service.ginger.count

This parameter defines how many fingerprints, palmprint, newborn, and sequence control template extraction microservice instances will be available.

Default value:

5

3.4. gbds.extraction.service.girl.count

This parameter defines how many iris template extraction microservice instances will be available.

Default value:

1

3.5. gbds.extraction.service.hostname

This parameter defines the template extraction microservice hostname. If it is specified as localhost, API will take control of services activation/deactivation. If another hostname is defined, the activation/deactivation must be done manually.

Default value:

localhost

3.6. gbds.extraction.service.initialPort

This parameter defines the starting port number for the template extraction microservices. Each microservice instance will increase its port number by 1. For example, considering the default port 30000, the first instance will use port 30000, the second will use port 30001, the third, 30002, and so on.

Warning

Make sure to allow the firewall ports that the microservice will use.

Default value:

30000

3.7. gbds.extraction.service.logLevel

This parameter defines the log level of the template extraction microservice. INFO will log scripts outputs on API log. DEBUG will log scripts outputs and extractor log directly on API log.

Default value:

INFO

Possible values:

INFO, DEBUG

3.8. gbds.extraction.service.timeout

This parameter defines the timeout for the template extraction microservice in seconds.

Default value:

60

3.9. gbds.extraction.service.maxTries

This parameter defines the maximum number of extraction tries GBDS will perform in the same transaction before returning an error.

Default value:

3

3.10. gbds.extraction.service.linkLibSegfault

This parameter turns on segmentation fault tracking on the extraction microservice.

Default value:

false

3.11. gbds.extraction.service.checkTimeoutSecs

Timeout (in seconds) to check if the template extraction microservice was created.

Default value:

10

3.12. api.uniqueId

This parameter defines the API ID and is OPTIONAL. This is used to manually start an template extraction microservice and identify which microservice is linked with which API. The value can be any string value with no whitespace or special characters.

4. Quality Extraction Service

4.1. gbds.extraction.quality.service

This parameter enables the quality extraction service.

Default value:

true

4.2. gbds.extraction.quality.api.uniqueId

This parameter defines the quality extraction service API ID and is OPTIONAL. This is used to manually start the quality extraction service and identify which service is linked with which API. The value can be any string value with no whitespace or special characters.

Important

If you are using MULTIPLE APIs, pay attention to the gbds.extraction.quality.api.uniqueId.list setting.

4.2.1. gbds.extraction.quality.api.uniqueId.list

This setting defines the API ids that will process quality extraction on background. There are two ways to define the ids:

  • Comma separated, with leader first, all other ids are defined as runners.
  • Json
[
    {
        "apiId":"<api_id>",
        "type":"LEADER|RUNNER"
    }
]

api_id is ALWAYS required and cannot be empty, while type is optional.

Important

Only one LEADER can be defined.

This setting does not change any other behavior of the quality extraction service.

4.3. gbds.extraction.quality.fillTransactionQualityPropertiesTable

This parameter defines if the quality properties (NFIQ value, minutiae number, image size, etc) extracted by the quality extraction service should be stored in the gbds.transaction_quality_properties table.

Caution

Setting this to true may increase the RDB space requirement immensely

Default value:

false

4.4. gbds.extraction.quality.service.linkLibSegfault

This parameter turns on segmentation fault tracking on the quality extraction microservice.

Default value:

false

4.5. gbds.extraction.quality.service.rows-on-select

This parameter determines the size of the transaction block to be sent to the thread pool for quality extraction.

Default value:

20

4.6. gbds.extraction.quality.service.submitted-queue-factor

This parameter determines the factor to be multiplied by the thread pool size to determine the average size of the processing queue.

Default value:

3

4.7. gbds.faces.extraction.quality.api

This parameter enables the face quality extraction service on enrolls and updates through the API call.

Default value:

true

4.8. gbds.enroll.face.min.quality

Defines the minimum quality threshold for a face image be accepted in an enroll operation.

Default value:

50

4.9. gbds.update.face.min.quality

Defines the minimum quality threshold for a face image be accepted in an update operation.

Default value:

50

4.10. gbds.faces.extraction.quality.background

This parameter enables the face quality extraction service on background. When enabled, the extractor will look at the gbds.transaction table where the rows with finger_quality_extracted value is false and get the tguid of the transaction, then, it will get the HBase template with the tguid and perform the quality extraction in the templates.

Note

Enabling this parameter DO NOT enable the quality extraction via API call.

Default value:

false

4.11. gbds.fingerprints.extraction.quality.api

This parameter enables the fingerprint quality extraction service on enrolls and updates through the API call.

Default value:

true

4.12. gbds.fingerprints.extraction.quality.background

This parameter enables the fingerprint quality extraction service on background. When enabled, the extractor will look at the gbds.transaction table where the rows with finger_quality_extracted value is false and get the tguid of the transaction, then, it will get the HBase template with the tguid and perform the quality extraction in the templates.

Note

Enabling this parameter DO NOT enable the quality extraction via API call.

Default value:

false

4.13. gbds.extraction.quality.service.finger.count

This parameter defines how many fingerprints quality extraction services instances will be available.

Default value:

1

4.14. gbds.extraction.quality.service.face.count

This parameter defines how many faces quality extraction services instances will be available.

Default value:

1

4.15. gbds.extraction.quality.service.initialPort

This parameter defines the starting port number for the quality extraction service. Each extraction service instance will increase its port by 1. For example, considering the default port 31000, the first instance will use port 31000, the second will use port 31001, the third, 31002, and so on.

Warning

Make sure to allow the firewall ports that the microservice will use.

Default value:

31000

4.16. gbds.extraction.quality.service.logLevel

This parameter defines the log level of the quality extraction service. INFO will log scripts outputs on API log. DEBUG will log scripts outputs and extractor log directly on API log.

Default value:

INFO

Possible values:

INFO, DEBUG

4.17. gbds.extraction.quality.service.timeout

This parameter defines the timeout for the quality extraction service in seconds.

Default value:

60

4.18. gbds.extraction.quality.service.hostname

This parameter defines the quality extraction service hostname. If it is specified as localhost, API will take control of services activation/deactivation. If another hostname is defined, the activation/deactivation must be done manually.

Default value:

localhost

4.19. gbds.extraction.quality.service.maxTries

This parameter defines the maximum number of extraction tries GBDS will perform in the same transaction before returning an error.

Default value:

3

4.20. gbds.extraction.quality.service.checkTimeoutSecs

Timeout (in seconds) to check if the quality extraction microservice was created.

Default value:

10

5. External Biographic Base

5.1. gbds.biographicBase.enabled

Flag to turn Biobase Server access on/off. When it is off, biographicBaseStatus is not returned on get/list transaction/person calls.

Default value:

false

Possible values:

true, false

5.2. gbds.biographicBase.endpoints

Comma separated list with all Biobase Server URLs, with host and port.

Default value:

Empty

Example:

http://biobase-server-ip:8130,http://biobase-server-ip:8131

5.3. gbds.biographicBase.get.timeout.ms

Biobase Server get request timeout. It is used on API get transaction or get person calls.

Default value:

500

5.4. gbds.biographicBase.list.timeout.ms

Biobase Server list request timeout. It is used on API list transaction or list people calls. On list calls, Biobase Server is called only once for all transactions/people that will be returned.

Default value:

500

5.5. gbds.biographicBase.logLevel

Log level on Biobase Server calls.

Default value:

INFO

Possible values:

  • INFO: logs server request URL.
  • NONE: no server request logs.
  • TIME: logs server request URL and elapsed time.
  • DEBUG: logs the server request URL, elapsed time and request/response bodies.

5.6. gbds.biographicBase.clientID

Authentication client ID.

Default value:

Empty

5.7. gbds.biographicBase.clientSecret

Authentication client secret.

Default value:

Empty

5.8. gbds.biographicBase.lookAllServers

Flag to look on all server in cases of unauthorized or not found people.

  • For authorization:

    • When it is ON and a Biobase Server returns unauthorized, the API will search all others servers trying to authenticate.
    • When it is OFF, the API will look only at the current Biobase Server for authentication, returning unauthorized or authorized.
  • For not found people:

    • When it is ON and a Biobase Server call does not return all people, the API will try all others servers until all people are found. If all servers’ consolidated people list still misses any person even after going through all servers, it leaves it as it is.
    • When it is OFF, the API will look only at the current Biobase Server for all people in the request. If a person on the people list is still missing, it leaves it as it is.

Default value:

false

Possible values:

true, false

5.9. gbds.biographicBase.autoUpdate

Send biographics to BioBase on enroll/update/trusted.

Default value:

true

Possible values:

true, false

5.10. gbds.biographicBase.sendPguidAsKey

Send PGUID as key on any BioBase update.

Default value:

true

Possible values:

true, false

5.11. gbds.biographicBase.sendTguidAsKey

Send TGUID as key on any BioBase update.

Default value:

false

Possible values:

true, false

6. Template Serializer Configuration

This section describes the configuration parameters related to the templates serializer. These configuration parameters are designed for allowing use of GBDS Batch Operations.

See also

See the GBDS Batch Operations manual for further information about how to use it.

Whenever GBDS performs a cold boot operation, it tries to recover the templates from the standard column family. If a template does not exist at the standard column family, it tries to recover it from the fallback column family.

The configuration parameters for the serializer are the following ones:

6.1. Standard Column Family

These parameters are divided by biometric modality. The templates in these column families have no encoding and the format used is byteArray.

gbds.hbase.templates.fingerprint.cf.name
gbds.hbase.templates.palmprint.cf.name
gbds.hbase.templates.face.cf.name
gbds.hbase.templates.iris.cf.name
gbds.hbase.templates.newborn-palmprint.cf.name

The default value for these parameters is tpt.

6.2. Fallback Column Family

These parameters refer to the column family previously used for storing the biometric templates, separated by biometric modality.

gbds.hbase.templates.fallback.fingerprint.cf.name
gbds.hbase.templates.fallback.palmprint.cf.name
gbds.hbase.templates.fallback.face.cf.name
gbds.hbase.templates.fallback.iris.cf.name
gbds.hbase.templates.fallback.newborn-palmprint.cf.name

The default values represent the column family used before changing these parameters and are, respectively: fingerprints, palmprints, faces, iris, newborn-palmprints.

6.3. Fallback base64 encoding

The fallback column family supports encoding. The following parameters defines whether the column family is base64 encoded:

gbds.hbase.templates.fallback.fingerprint.cf.is-base64-encoded
gbds.hbase.templates.fallback.palmprint.cf.is-base64-encoded
gbds.hbase.templates.fallback.face.cf.is-base64-encoded
gbds.hbase.templates.fallback.iris.cf.is-base64-encoded
gbds.hbase.templates.fallback.newborn-palmprint.cf.is-base64-encoded

The default value for these parameters is true

7. Email Notifier Configurations

7.1. gbds.transparency.search.identify.send-email.enabled

This parameter enable the Email Notifier feature. When true, every face identify search sends an email with the image request to the configured users or groups.

Default Value:

false

Possible Values:

true, false

7.2. gbds.transparency.email-notifier.log-level

This parameter defines the log level of the send email notification service.

Default Value:

INFO

Possible Values:

INFO, TIME, NONE, DEBUG.

7.3. gbds.transparency.email-notifier.timeout

This parameter defines the timeout of send email notification service, in seconds.

Default Value:

60

7.4. gbds.transparency.email-notifier.url

This parameter defines the send email notification service URL.

7.5. gbds.transparency.search.identify.request.notify.enabled

This parameter enables the email notification service to send email notification for face identify search request.

Default Value:

false

7.6. gbds.transparency.search.identify.result.actions.enabled

This parameter enables the email notification service to process the action defined to a person through the transparency tables when the person appears in the search results.

Default Value:

false

7.7. gbds.transparency.search.identify.result.notify.enabled

This parameter enables the email notification service to send messages when search results match people of interest.

Default Value:

false