From Davical
Revision as of 00:43, 27 November 2007 by AndrewRuthven (talk | contribs) (Imported from MoinMoin)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search


The Configuration File

The configuration file for RSCDS is looked for in two places. First, a {{{config/config.php}}} file is looked for, relative to the RSCDS root directory (the directory above the htdocs directory). If that is not present then it will look for a file in {{{/etc/rscds}}} which is named {{{}}}. This file is a PHP file and is included very early in the processing of each page.

Although you use RSCDS only from remote locations a {{{/etc/rscds/localhost-conf.php}}} is also necessary. So make a symbolic link from {{{/etc/rscds/localhost-conf.php}}} to your {{{/etc/rscds/}}}. (I didn't need to do this. -- MattPalmer, 2007-11-08)

Example Configurations

Some commented example configurations are available in the source code. Unfortunately these did not ship with 0.8.0 but they will be included in future versions in {{{/usr/share/doc/rscds/examples}}}.

You can, however, download these example configurations from the source code, here:

Authentication Configuration

Standard PostgreSQL Database

Using LDAP

/*********** LDAP hook **********/
//$c->authenticate_hook['call'] = 'LDAP_check';
//$c->authenticate_hook['config'] = array(
//    'host' => '', //host name of your LDAP Server
//    'port' => '389', //port
//    'bindDN'=> 'cn=manager,cn=internal,dc=tennaxia,dc=net', //DN to bind to this server enabling to perform request
//    'passDN'=> 'xxxxxxxx', //Password of the previous bindDN to bind to this server enabling to perform request
//    'baseDNUsers'=> 'dc=tennaxia,dc=net', //where to look at valid user
//    'filterUsers' => 'objectClass=kolabInetOrgPerson', //filter that must validate an valid user
//    'baseDNGroups' => 'ou=divisions,dc=tennaxia,dc=net', //not used ATM
//    'filterGroups' => 'objectClass=groupOfUniqueNames', //not used ATM
       /** /!\ "username" should be set and "updated" must be set **/
//    'mapping_field' => array("username" => "uid",
//                             "updated" => "modifyTimestamp",
//                             "fullname" => "cn" ,
//                             "email" =>"mail",
//                             "active" => ), //used to create the user based on his ldap properties
       /** used to set default value for all users, will be overcharged by ldap if defined also in mapping_field **/
//    'default_value' => array("date_format_type" => "E","locale" => "fr_FR"),
       /** foreach key set start and length in the string provided by ldap
           example for openLDAP timestamp : 20070503162215Z **/
//    'format_updated'=> array('Y' => array(0,4),'m' => array(4,2),'d'=> array(6,2),'H' => array(8,2),'M'=>array(10,2),'S' => array(12,2))
//    );

Using a different 'AWL' database

The "AWL" library contains the basic database structure for user data which is used by RSCDS, and it is possible to use this data from a different database. This plugin is written more-or-less as an example of how to write an authentication plugin, but may be useful.