Vasco digipass with UMRA and Active Directory

Vasco digipass with UMRA and Active Directory

Door: Arnout van der Vorst

Several clients are using digipass systems from Vasco as their main security token system for both VPN and building access. Since this system is Active Directory integrated and features an API, we can easily integrate it within the UMRA identity management framework for automatic token provisioning on new user accounts, and token profile management on existing user accounts.

The process of assigning a token to a user account is fairly simple and involves some basic steps:

  1. Locate a token from the digipass-pool. This is a root OU created by the Vasco software when installed in your environment.
  2. Retrieve the vasco-SerialNumber attribute from the located token.
  3. Supply the sAMAccountName attribute, domain name, vasco-SerialNumber and grace period # of days to the TCL script
  4. The Vasco software moves the digipass object from the digipass-pool to the user OU and applies all kinds of vasco related attributes on both the user object and the digipass object. Vasco extends the Active Directory schema to support these attributes.
  5. The user in Active Directory gets extra tabs in their property dialog when using the AD Users and Computers MMC snap-in.

The challenging part when integrating Vasco into Active Directory account provisioning is to write TCL scripts. The documentation provided by Vasco is unfortunately very basic and didn’t offer much help. Some of the operations, like adding authorization profiles and grace periods are not documented at all. Also, be careful that the Vasco connection to the Active Directory appears to be not bound to a specific domain controller, so integrating it with batch jobs may cause replication issues. I’ve determined that for most clients a delay of 5-10 seconds before executing a TCL script is sufficient to let the AD replicate to its domain controllers.

When moving user accounts to another OU, make sure you also move the digipass object to the same OU, otherwise it won’t work. Also, update the vasco-linkUserToDPToken attribute on the user object and the vasco-linkDPTokenToUser attribute on the token object in your script, otherwise the link between the user and the digipass object will be broken.

Vasco uses TCL scripting for all unattended scripted operations, which can be executed using the command line tool DPAMINCMD.EXE, which is installed by default with the Vasco software inside the BIN folder.

Example TCL script to create a user account with digipass association:
set userid [lindex $argv 0]

set domain [lindex $argv 1]
set serial_no [lindex $argv 2]
set grace_period_end [lindex $argv 3]
set grace_period_minus [lindex $argv 4]
set password [lindex $argv 5]

puts $userid
puts $domain
puts $serial_no
puts $grace_period_end
puts $grace_period_minus
puts $password

if [catch “user create {userid $userid domain $domain password $password}” result] {
puts “Create: $result”
} else {
puts “Create: $result”
}

if [string equal $grace_period_minus yes] {
if [catch “digipass assign {userid $userid serial_no $serial_no search_up_ou 1 grace_period_end -$grace_period_end}” result] {
puts “Assign-minus: $result”
} else {
puts “Assign-minus: $result”
}
} else {
if [catch “digipass assign {userid $userid serial_no $serial_no search_up_ou 1 grace_period_end $grace_period_end}” result] {
puts “Assign: $result”
} else {
puts “Assign: $result”
}
}

A similar TCL script to delete the digipass association from a user account:

set userid [lindex $argv 0]
set domain [lindex $argv 1]
set serial_no [lindex $argv 2]
puts $userid
puts $domain
puts $serial_no

if [catch “user delete {userid $userid domain $domain}” result] {
puts “Create: $result”
} else {
puts “Create: $result”
}

if [catch “digipass unassign {userid $userid serial_no $serial_no}” result] {
puts “Assign: $result”
} else {
puts “Assign: $result”
}

Arnout van der Vorst

Geschreven door:
Arnout van der Vorst

Maak kennis met Arnout van der Vorst, de inspirerende Identity Management Architect bij Tools4ever sinds het jaar 2000. Na zijn studie Hogere Informatica aan de Hogeschool van Utrecht is hij begonnen als Supportmedewerker bij Tools4ever. Daarna heeft Arnout zich opgewerkt tot een sleutelfiguur in het bedrijf.  Zijn bijdragen strekken zich uit van klantondersteuning tot strategische pre-sales activiteiten, en hij deelt zijn kennis via webinars en artikelen.

Anderen bekeken ook

SAP koppeling met Active Directory

SAP koppeling met Active Directory

06 september 2012

User- en toegangsbeheer in cloud applicaties: een uitdaging

User- en toegangsbeheer in cloud applicaties: een uitdaging

04 september 2012

De vooroordelen van Single Sign On

De vooroordelen van Single Sign On

29 november 2011

RBAC: sleutelrol, beheer en evolutie

RBAC: sleutelrol, beheer en evolutie

15 maart 2011

Single Sign On met terminal emulatie (VAX64, AS/400, Linux, SSH)

Single Sign On met terminal emulatie (VAX64, AS/400, Linux, SSH)

14 oktober 2010