Visit Nexus to get an overview of Nexus' solutions, read customer cases, access the latest news, and more.


This article describes how to configure the RCO Service, to enable integration between Smart ID Identity Manager and RCO R-Card M5.

RCO R-Card M5 is an access control system provided by RCO and managed by a GUI and a web service on the server. After integration, all administration of Users, Access Token and Entitlements (besides defining them) should be done in Identity Manager, never in RCO. 

For details on which data can be imported and exported from RCO R-CARD M5, see About import and export to Physical Access.


Expand/Collapse All

Prerequisites

The following prerequisites apply:

  • Physical Access and the RCO R-CARD M5 Docker container/service are installed. See Deploy Smart ID.
  • Physical Access has been tested with version 5.39.4.
  • The message queue server must be running
  • If MIFARE card technology is used, the PACS MIFARE number must be available as raw data (not encrypted, truncated, or similar). 
  • A working network connection to the connected physical access control systems (PACS) must be in place. 

Configure RCO Service data fields

The RCO data is configured in the configuration table in the Physical Access database. All configuration is cached when the service starts so any configuration changes will require the service to be restarted in order to take effect.

To connect to a PACS system:

  1. Log in to Physical Access admin panel as an admin user.
    All configured PACS connector services are listed, as well as Generic configurations to define the messaging queue. 
  2. Click on a system to do updates.
    All database entries are listed. 
  3. To update an entry, click on the icon. Edit as needed and then click Update
  4. To create an entry, click on +Create. Select Group, enter Key, Value and Index, and then click Create

group: messagingqueue

keyData typeRequired or OptionalDescription
serverstringRequired

IP Address of Message Queue Server. If it is installed on the local server then we can use localhost. If we are accessing this server remotely then need to mention IP address.

usernamestringRequired

Username of message queue server.

Default value: “guest”

passwordstringRequired

Password of message queue server.

Default value: “guest”

systemstringRequired

Defines which messaging queue to be used, either "rabbitmq" or "azureservicebus".

Default value: "rabbitmq"

group: general

keyData typeRequired or OptionalDescription
deleteUserOnNoEntitlementstringOptional

Defines if the user shall be deleted if no active entitlement assignment are present for that user.

Valid values: true or false.

Default: true

deleteUserOnNoAccessTokenstringOptional

Defines if the user shall be deleted if no active access tokens are present for that user.

Valid values: true or false.

Default: true 

heartbeatInterval

intOptional

Heartbeat interval is the time difference between two successive heartbeats, and it is used to know if the system is in active (running) or in inactive (stopped) state.

Default value and minimum value: 60 seconds. If it is set less than 60 seconds, it will be considered as 60 seconds to update the status.

group: rco.system

keyData typeRequired or OptionalDescription

systemName

stringOptional

The name of the RCO system.

Default: RCARDSYSTEM

username

stringOptional

The username that will be used when logging in to the RCO system.

Default: rcard

passwordstringOptional

The password that will be used when logging in to the RCO admin service.

Default: 1234

group: rco.general

keyData typeRequired or OptionalDescription

connectionString

stringRequired

The connection string for the R-CARD M5 system.

Example: user id=IDC; password=mypassword; server=rco.mycompany.my; database=rcoDb; connection timeout=30

useDomainNames

boolOptional

Whether to include the domain in the name of access groups in IDC.

Default: true

domainNameSeparator

stringOptional

The string that will separate the domain name and the name of the access group.

Default: “ – “

group: rco.index

keyData typeRequired or OptionalDescription

id

intOptional

The RCO index of the attribute where the IDC person ID should be stored.

Default: 9

idSearch

intOptional

The RCO search index of the attribute where the IDC person ID is stored.

Default: 6

group: rco.export

keyData typeRequired or OptionalDescription

updatesPerPoll

intOptional

The number of persons to export per poll.

Default: 100

useCategory

boolOptional

Determines whether to use the card’s category or layout as name in RCO.

Default: false

idPaddingstringRequired

The value to pad the Physical Access person IDs in RCO with. IDs must be padded because, when searching, RCO does partial matching. For example, searching for “1” matches all IDs containing “1”. The value must consist of 1-3 characters and valid characters are: A-Za-z_!

Default: IDC

layoutIdentifierType stringRequired

This is a type of identifier which we want to use to refer layout of access token.

categoryIdentifierTypestring Required

This is a type of identifier which we want to use to refer category of access token.

userfieldmappings stringOptional

userfieldmappings is used to export additional data of users to RCO. The value in configuration setting is combination of table_name.value_of_type_column, field_id_of_rco. This configuration setting is the mapping between the Physical Access table field and RCO field Id.

User column fields can be sent by adding the configuration user.column_name, rco_field_id.

The following table shows sample configurations for userfieldmappings:

system

keyvaluegroupindex

RCO   

userfieldmappingsuser.Ssn,6rco.export0

RCO   

userfieldmappingsuseradditionalfield.other,27rco.export0
RCO  userfieldmappingsemail.work,13rco.export0
RCOuserfieldmappingsuser.title,7rco.export0

group: rco.card.mapping.{value of layout identifier}

This group contains compound configuration elements using the config_index column. For each unique config_index value in this group, each key defined below must be defined exactly once. Note that this group is not required as a whole, and should only be used if you have specific requirements for one or more card layouts.

keyData typeRequired or OptionalDescription

layout

stringOptionalThe name of the card layout to match (case insensitive) for this mapping. Each layout may only be mapped once.

cardNumberIdentifier

stringOptionalThis indicates the identifier for card number.

format

stringOptional

The format that the card number should be converted into before exporting it to RCO.

Valid values: Linear, LinearReverse, Block, BlockReverse.

lengthintOptionalThe length that the card number should be trimmed (leading digits) or padded (with leading zeroes) to after converting it.

group: rco.card.mapping.default

This group defines how to export card numbers by default, when a card’s layout does not have a specific mapping.

keyData typeRequired or OptionalDescription

cardNumberIdentifier 

stringOptional

The default identifier type to read card numbers.

Default: CardNumber

format

stringOptional

The format that the card number should be converted into before exporting it to RCO.

Valid values: Linear, LinearReverse, Block, BlockReverse.

Default: Linear

length

intOptional

The length that the card number should be trimmed (leading digits) or padded (with leading zeroes) to after converting it.

Default: 9

Restart service

  1. Restart the RCO R-CARD M5 connector service:

    Restart Physical Access RCO R-CARD M5 connector
    cd <SMARTIDHOME>/compose/physicalaccess
    docker-compose restart smartid-pa-rco

This article is valid for Smart ID 22.04 and later.

Related information