The configuration options below go in an multiauth.ini file which is located in the same directory as the multiauth binary OR in a directory specified by the -path command line option (This command line option should be specified in the authent_process/g_authent_process setting)
The MultiAuth config file is slightly different to most other authent modules, it's different in that it has global settings and blocks of settings specific to each module you want it to run. The specific settings are used if specified, otherwise the global setting is used, if that is not specified then the default value is used.
An example config file might go...
loglevel debug do_del false module 0 binary c:\surgemail\nwauth.exe -path c:\surgemail match *@domain1.com module 1 binary c:\surgemail\odbcauth.exe -path c:\surgemail match *@domain2.com
|lookup||<value of the match setting>|
|check||<value of the match setting>|
|set||<value of the match setting>|
|del||<value of the match setting>|
|search||<value of the match setting>|
loglevel: The amount of data to log, error logs only errors, info logs errors and info, debug logs everything. GLOBAL only this setting has no effect in a module block. module: This is not really a setting, this line starts a module block. The parameter for this line is a priority rating, the module with the lowest rating is used first. binary: This is the full path and filename plus parameters of the module. match: This setting specifies what usernames are sent to the module, This setting is used for lookup,check,set,del and search unless the lookup,check,set,del or search setting(s) are specified. lookup: This setting specifies what usernames are sent to the module for a lookup command. check: This setting specifies what usernames are sent to the module for a check command. set: This setting specifies what usernames are sent to the module for a set command. del: This setting specifies what usernames are sent to the module for a del command. search: This setting specifies what usernames are sent to the module for a search command. do_lookup: [true|false] This setting specifies whether the module recieves lookup commands. do_check: [true|false] This setting specifies whether the module recieves check commands. do_set: [true|false|existing] This setting specifies whether the module recieves set commands. do_del: [true|false] This setting specifies whether the module recieves del commands. do_search: [true|false] This setting specifies whether the module recieves search commands. strip_prefix: This setting specifies the prefix to strip from usernames (if present) before sending the command on to the module. eg. strip_prefix domain_ strip_suffix: This setting specifies the suffix to strip from usernames (if present) before sending the command on to the module. eg. strip_suffix @domain.com timeout: Time to wait for a reply from a module before giving up on it. Time is in milli-secconds i.e. 'timeout 1000' == 1 seccond.
-path Tells MultiAuth where to create it's logfile and where to find it's config file. -debug Causes debug logging to be done. -version Reports the version number.
|set||<user> <pass>|(NULL) [label="value"]|
|search||<string> [-from n] [-max m]|
check Verifies user <user> has password <pass>, this command also returns the users uid and any information stored for them. lookup Verifies the existance of user <user> and returns uid and info as check command above does. set Add new user or modify an existing user. The special case (NULL) is used to modify a users info without re-setting the password. The optional info for a user can be anything provided then info label contains no spaces or quotes and the value contains no quotes. del Deletes a user, thier home directory and all files stored therein. search Returns a list of users matching the search <string>, the string may contain a * or ? wildcard, if it does the string is matched as if it was a wildcard string, otherwise a match is found only if the username contains the string. version Returns the version number. quit Ends session exit Ends session
A command will usually respond with a one line response, that response will start with +OK or -ERR, example: +OK User email@example.com created successfully -ERR Failed to create firstname.lastname@example.org, could not lock password file If a command wants to return more that one line as a response it will send lines starting with +DATA before the final +OK or -ERR response, example: +DATA email@example.com config 111 +DATA firstname.lastname@example.org config 112 +OK Search Complete 2 items found out of 80 If MultiAuth has a fatal error while trying to initialise then it will return a -DEAD message like the following... -DEAD Failed to load config settings, access denied
If you have any questions about MultiAuth please don't hesitate to contact: email@example.com