linotp.lib.ImportOTP.eTokenDat module¶
eToken dat file importer
- class linotp.lib.ImportOTP.eTokenDat.DatToken¶
Bases:
object
eToken class which is equivalent to the token definition of the dat file
- add_info(line)¶
parse a config line into a class attribute by calling a dedicated or the generic setter for an key value pair
- Parameters
line – config line which belong to one token
- Returns
nothing -
- get_initparams()¶
provide all init definitions
- set(key, val)¶
generic setter, so that no attribute will get lost
- set_crypto(val)¶
setter of the hash lib
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccAuthenticatorId(value)¶
take the sccAuthenticatorId for serial number
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccKey(val)¶
set up the secret key
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccMode(value)¶
setter, if the token is counter based or event based
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccPrTime(value)¶
if the token definition hat this attribute, we can assume that we have a timebased eToken, which starts its counter which starts the timecount with 1.1.2000 and not in 1.1.1970 as defined in the standard. So we have to set an offsett of 30 years
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccPwLen(value)¶
take the sccPwLen as otplen value
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccTick(value)¶
take the sccTick as timeStep value
- Parameters
value – value of the setter
- Returns
nothing -
- set_sccTokenData(value)¶
parse the detail token definition by calling again a specific setter (if exist) or the generic one
- Parameters
line – config line which belong to one token
- Returns
nothing -
- set_sccTokenType(value)¶
take the sccTokenType as part of the token description
- Parameters
value – value of the setter
- Returns
nothing -
- set_startdate(startdate)¶
put in the startdate after creating the token
- Parameters
startdate – wehen the counter will start counting datetime format
- Returns
nothing -
- linotp.lib.ImportOTP.eTokenDat.create_token(lines, startdate=None)¶
take an array of lines and create a token out of it
remark: the lines are split up on the caller level
- Parameters
lines –
- linotp.lib.ImportOTP.eTokenDat.get_session(lino_url, user=None, pwd=None)¶
return an LinOTP Session context, which is the session and the cookie in the header
- Parameters
lino_url – the linotp base url
user – the session for the user
pwd – the password of the user
- Returns
tuple of session and header
- linotp.lib.ImportOTP.eTokenDat.main()¶
main - parse the args and start the processing
- linotp.lib.ImportOTP.eTokenDat.parse_dat_data(data, d_string=None)¶
this function is called from the web-ui and parses an eToken data file
- Parameters
data – data from the web-ui file upload
- Returns
It returns a dictionary of serial : { /admin/init parameters }
- linotp.lib.ImportOTP.eTokenDat.parse_datetime(d_string)¶
parse an date string and try to convert it to an datetime object
- Parameters
d_string – date string
- Returns
datetime object
- linotp.lib.ImportOTP.eTokenDat.process_file(filename, startdate, lino_url=None, user=None, password=None)¶
read the eToken dat file and split it up into a bunch of lines, that define one token. An empty line is considered as separator.
- Parameters
filename – the eToken dat file
lino_url – if defined, the tokens will be created in linotp
- linotp.lib.ImportOTP.eTokenDat.submit_tokens(lino_url, tokens, user=None, pwd=None)¶
submit an /admin/init request to create the token in the linotp server
- Parameters
linotp_url – the url, where linotp resides
tokens – the array of tokens
user – the admin user -required to get a session
pwd – the admin password -required to get a session
- linotp.lib.ImportOTP.eTokenDat.usage()¶
print usage message