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
}
}