OSC RAdmin Frequently Asked Questions

I accidentally made my only user have a profile of 'Nothing' and now I can't do anything

The permissions are held in your SQL database. So the best way is to use the interactive SQL application for your particular database (mysql for MySQL, sqlplus for Oracle, isql for Sybase and MS-SQL etc) and issue this command:
update RADADMINUSERS set PROFILENAME='Everything' where USERNAME='anonymous'

How do I make my perl CGI scripts run properly on Microsoft IIS or Apache?

See this for some assistance: http://docs.activestate.com/activeperl/5.18/faq/Windows/ActivePerl-Winfaq6.html

How do I run multiple independent Radmin databases?

All the Radmin scripts accept a "database" tag. If you access one of the scripts with, say http://www.example.com/cgi-bin/Radmin/private/editUser.pl?database=cust1 then the variable $Radmin::CGIUtil::db will automatically be set to 'cust1', and every other link on the page will also have the database=cust tag set automatically.

You can therefore use the $Radmin::CGIUtil::db to select a database to connect to when each script runs, and the user will continue using the same database as they follow the links within the Radmin pages. You could therefore use something like this in your Sql.pm:

if ($Radmin::CGIUtil::db eq 'cust1')
{
	$Radmin::config{DBSource}   = 'dbi:mysql:radmin1:localhost';
	$Radmin::config{DBUsername} = 'radmin1';
	$Radmin::config{DBAuth}     = 'radmin1pw';
}
elsif ($Radmin::CGIUtil::db eq 'cust2')
{
	$Radmin::config{DBSource}   = 'dbi:mysql:radmin2:localhost';
	$Radmin::config{DBUsername} = 'radmin2';
	$Radmin::config{DBAuth}     = 'radmin2pw';
}
else
{
	main::fatalError("No Radmin database selected");
}
	  
How can I use custom Vendor-Specific attributes in my dictionary

RAdmin comes with all the standard Radius attributes from the Radiator dictionary, which will normally that Radiator and RAdmin will work together properly.

If you have custom or non-standrard Vendor-Specific attribtues in your Radiator dictionary, you can get them into Radmin with this procedure. This procedure converts your Radiator dictionary into a form usable by RAdmin, and replaces the entire contents of the RADATTRS and RADVALUES tables.

perl goodies/convertDict.pl /path/to/your/dictionary > myradattrs.dat
perl createdb.pl -create RADATTRS:RADVALUES -dropfirst myradattrs.dat
	  
How do enable the use of Vasco Digipass with Radmin?
  1. Ensure you have installed Radiator 3.10 or later and RAdmin 1.9 or later.
  2. Install the Authen-Digipass module. Precompiled binaries for Sparc Solaris, Linux x86 and Windows are included with Radiator. Consult the instructions in goodies/digipass-install.txt in your Radiator distribution.
  3. Using the Edit Radmin Config page, enable the 'Support Vasco Digipass?' option. Click Update.
  4. Configure Radiator using the example configuration file in goodies/radminDigipass.cfg.
How can I add custom fields to my Radmin database

Caution: this procedure requires a detailed understanding of Radmin files, Perl and SQL databases.

To add a custom editable field to a Radmin database table, you need to do 3 things:

  1. Alter your SQL server database table to add the new column. You will generally need to choose either an integer (INT) or text (VARCHAR) column. You will generally use the interactive SQL interpreter for your SQL database server to enter the SQL command to add a new column. The usual syntax for adding another column to a live database table is:
    ALTER TABLE tablename ADD columnname columntype;

    for example: ALTER TABLE RADUSERS ADD NOTES VARCHAR(255);

  2. Add information about the new column into the Radmin Schema.pm file. SChema.pm contains database-independent descriptions of all the tables Radmin uses, with a section for each table. In the 'columns' section of your table, add a new line that describes the type of the new column, eg:
    # local customisation:
    'NOTES' => [ 'varchar', 255],
  3. Add a user interface definition to the script file that handles the table. For example if you wanted to make the NOTES column you created above to the 'Edit USer' page, you would edit the editUser.pl file and add something like this to the fields section of the uiDesc structure:
    [ 'NOTES', 'Notes', '', 'text', '', 30],

    Which will result in a 30 character wide editable text field conneted to the NOTES column on the RADUSERS table.