Skip to content

Barcode/QR Code#

The Barcode/QR Code strategy identifies and authenticates a user by reading a barcode or QR code token from a keyboard wedge device, such as an RFID reader or a barcode scanner, or from the device camera. By using this strategy, the user can easily authenticate into the system using a company-issued card ID, needing only to input a PIN in a textbox displayed after the token has been read.

Configuration#

Not available out of the box. Add it to the tenant through a customization package. See Deployment via CmfEntrypoint ↗ in the Developer Portal.

Parameters#

Strategy type Plugin
local-barcode @criticalmanufacturing/auth-plugin-local

Table: Barcode/QR Code strategy type and plugin

Each strategy entry also accepts the common strategy properties.

Parameter Required Description
storage Yes Connection to the MES database. See Database Connection.
tokenBasedIdentificationMode No How the token is read: KeyboardWedge (scanner input as keyboard), Camera (camera scanner), KeyboardWedgeAndCamera (both), or None (default).
defaultAuthenticationMode No Default sign-in mode: Token (default) or Standard.
keyboardWedgeMaximumDelay No Maximum time, in milliseconds, between keystrokes for the input to count as a single scan.
keyboardWedgeIdSequenceLength No Number of characters of the token ID. Used to detect the end of the token.
keyboardWedgeTerminationSequence No Character or string that marks the end of the token. Leave empty if not used.
keyboardWedgePinLength No Length of the PIN, if a PIN is required.
keyboardWedgeSeparator No Character that separates the token from the PIN when both are sent in one scan, for example : in token:1234.
skipKeyboardWedgePINValidation No Set to true to skip the validation of the PIN included in the scan.
useKeyboardEmulationForKeyboardWedge No Set to true to interpret the scanner input as if typed on the keyboard.
useKeyboardEmulationSingleTrigger No Set to true when the scanner delivers the whole token, including PIN and separator, in a single trigger.

Table: Barcode/QR Code strategy parameters

Example#

{
  "id": "Barcode",
  "displayName": "Barcode",
  "type": "local-barcode",
  "config": {
    "storage": {
      "user": "<User>",
      "password": "<Password>",
      "database": "<OnlineDatabase>",
      "server": "<DatabaseServer>\\ONLINE",
      "port": 1433,
      "options": {
        "instanceName": "ONLINE",
        "encrypt": true
      }
    },
    "tokenBasedIdentificationMode": "KeyboardWedge",
    "defaultAuthenticationMode": "Token",
    "keyboardWedgeMaximumDelay": 100,
    "keyboardWedgeIdSequenceLength": 5,
    "keyboardWedgeTerminationSequence": "",
    "keyboardWedgePinLength": 4,
    "keyboardWedgeSeparator": ":",
    "skipKeyboardWedgePINValidation": false,
    "useKeyboardEmulationForKeyboardWedge": false,
    "useKeyboardEmulationSingleTrigger": false
  }
}