LDAP
This commit is contained in:
parent
e016dc6130
commit
7a35ccf29e
Sio2/SISR/20-ldap
131
Sio2/SISR/20-ldap/doku.php
Normal file
131
Sio2/SISR/20-ldap/doku.php
Normal file
@ -0,0 +1,131 @@
|
||||
<?php
|
||||
/**
|
||||
* DokuWiki mainscript
|
||||
*
|
||||
* @license GPL 2 (http://www.gnu.org/licenses/gpl.html)
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
*
|
||||
* @global Input $INPUT
|
||||
*/
|
||||
|
||||
// update message version - always use a string to avoid localized floats!
|
||||
use dokuwiki\Extension\Event;
|
||||
|
||||
$updateVersion = "53";
|
||||
|
||||
// xdebug_start_profiling();
|
||||
|
||||
if(!defined('DOKU_INC')) define('DOKU_INC', dirname(__FILE__).'/');
|
||||
|
||||
// define all DokuWiki globals here (needed within test requests but also helps to keep track)
|
||||
global $ACT, $INPUT, $QUERY, $ID, $REV, $DATE_AT, $IDX,
|
||||
$DATE, $RANGE, $HIGH, $TEXT, $PRE, $SUF, $SUM, $INFO, $JSINFO;
|
||||
|
||||
|
||||
if(isset($_SERVER['HTTP_X_DOKUWIKI_DO'])) {
|
||||
$ACT = trim(strtolower($_SERVER['HTTP_X_DOKUWIKI_DO']));
|
||||
} elseif(!empty($_REQUEST['idx'])) {
|
||||
$ACT = 'index';
|
||||
} elseif(isset($_REQUEST['do'])) {
|
||||
$ACT = $_REQUEST['do'];
|
||||
} else {
|
||||
$ACT = 'show';
|
||||
}
|
||||
|
||||
// load and initialize the core system
|
||||
require_once(DOKU_INC.'inc/init.php');
|
||||
|
||||
//import variables
|
||||
$INPUT->set('id', str_replace("\xC2\xAD", '', $INPUT->str('id'))); //soft-hyphen
|
||||
$QUERY = trim($INPUT->str('q'));
|
||||
$ID = getID();
|
||||
|
||||
$REV = $INPUT->int('rev');
|
||||
$DATE_AT = $INPUT->str('at');
|
||||
$IDX = $INPUT->str('idx');
|
||||
$DATE = $INPUT->int('date');
|
||||
$RANGE = $INPUT->str('range');
|
||||
$HIGH = $INPUT->param('s');
|
||||
if(empty($HIGH)) $HIGH = getGoogleQuery();
|
||||
|
||||
if($INPUT->post->has('wikitext')) {
|
||||
$TEXT = cleanText($INPUT->post->str('wikitext'));
|
||||
}
|
||||
$PRE = cleanText(substr($INPUT->post->str('prefix'), 0, -1));
|
||||
$SUF = cleanText($INPUT->post->str('suffix'));
|
||||
$SUM = $INPUT->post->str('summary');
|
||||
|
||||
|
||||
//parse DATE_AT
|
||||
if($DATE_AT) {
|
||||
$date_parse = strtotime($DATE_AT);
|
||||
if($date_parse) {
|
||||
$DATE_AT = $date_parse;
|
||||
} else { // check for UNIX Timestamp
|
||||
$date_parse = @date('Ymd',$DATE_AT);
|
||||
if(!$date_parse || $date_parse === '19700101') {
|
||||
msg(sprintf($lang['unable_to_parse_date'], hsc($DATE_AT)));
|
||||
$DATE_AT = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//check for existing $REV related to $DATE_AT
|
||||
if($DATE_AT) {
|
||||
$pagelog = new \dokuwiki\ChangeLog\PageChangeLog($ID);
|
||||
$rev_t = $pagelog->getLastRevisionAt($DATE_AT);
|
||||
if($rev_t === '') { //current revision
|
||||
$REV = null;
|
||||
$DATE_AT = null;
|
||||
} else if ($rev_t === false) { //page did not exist
|
||||
$rev_n = $pagelog->getRelativeRevision($DATE_AT,+1);
|
||||
msg(
|
||||
sprintf(
|
||||
$lang['page_nonexist_rev'],
|
||||
dformat($DATE_AT),
|
||||
wl($ID, array('rev' => $rev_n)),
|
||||
dformat($rev_n)
|
||||
)
|
||||
);
|
||||
$REV = $DATE_AT; //will result in a page not exists message
|
||||
} else {
|
||||
$REV = $rev_t;
|
||||
}
|
||||
}
|
||||
|
||||
//make infos about the selected page available
|
||||
$INFO = pageinfo();
|
||||
|
||||
// handle debugging
|
||||
if($conf['allowdebug'] && $ACT == 'debug') {
|
||||
html_debug();
|
||||
exit;
|
||||
}
|
||||
|
||||
//send 404 for missing pages if configured or ID has special meaning to bots
|
||||
if(!$INFO['exists'] &&
|
||||
($conf['send404'] || preg_match('/^(robots\.txt|sitemap\.xml(\.gz)?|favicon\.ico|crossdomain\.xml)$/', $ID)) &&
|
||||
($ACT == 'show' || (!is_array($ACT) && substr($ACT, 0, 7) == 'export_'))
|
||||
) {
|
||||
header('HTTP/1.0 404 Not Found');
|
||||
}
|
||||
|
||||
//prepare breadcrumbs (initialize a static var)
|
||||
if($conf['breadcrumbs']) breadcrumbs();
|
||||
|
||||
// check upstream
|
||||
checkUpdateMessages();
|
||||
|
||||
$tmp = array(); // No event data
|
||||
Event::createAndTrigger('DOKUWIKI_STARTED', $tmp);
|
||||
|
||||
//close session
|
||||
session_write_close();
|
||||
|
||||
//do the work (picks up what to do from global env)
|
||||
act_dispatch();
|
||||
|
||||
$tmp = array(); // No event data
|
||||
Event::createAndTrigger('DOKUWIKI_DONE', $tmp);
|
||||
|
||||
// xdebug_dump_function_profile(1);
|
180
Sio2/SISR/20-ldap/dokuwiki.php
Normal file
180
Sio2/SISR/20-ldap/dokuwiki.php
Normal file
@ -0,0 +1,180 @@
|
||||
<?php
|
||||
/**
|
||||
* This is DokuWiki's Main Configuration file
|
||||
*
|
||||
* All the default values are kept here, you should not modify it but use
|
||||
* a local.php file instead to override the settings from here.
|
||||
*
|
||||
* This is a piece of PHP code so PHP syntax applies!
|
||||
*
|
||||
* For help with the configuration and a more detailed explanation of the various options
|
||||
* see https://www.dokuwiki.org/config
|
||||
*/
|
||||
|
||||
|
||||
/* Basic Settings */
|
||||
$conf['title'] = 'DokuWiki'; //what to show in the title
|
||||
$conf['start'] = 'start'; //name of start page
|
||||
$conf['lang'] = 'fr'; //your language
|
||||
$conf['template'] = 'dokuwiki'; //see lib/tpl directory
|
||||
$conf['tagline'] = ''; //tagline in header (if template supports it)
|
||||
$conf['sidebar'] = 'sidebar'; //name of sidebar in root namespace (if template supports it)
|
||||
$conf['license'] = 'cc-by-nc-sa'; //see conf/license.php
|
||||
$conf['savedir'] = './data'; //where to store all the files
|
||||
$conf['basedir'] = ''; //absolute dir from serveroot - blank for autodetection
|
||||
$conf['baseurl'] = ''; //URL to server including protocol - blank for autodetect
|
||||
$conf['cookiedir'] = ''; //path to use in cookies - blank for basedir
|
||||
$conf['dmode'] = 0755; //set directory creation mode
|
||||
$conf['fmode'] = 0644; //set file creation mode
|
||||
$conf['allowdebug'] = 0; //allow debug output, enable if needed 0|1
|
||||
|
||||
/* Display Settings */
|
||||
$conf['recent'] = 20; //how many entries to show in recent
|
||||
$conf['recent_days'] = 7; //How many days of recent changes to keep. (days)
|
||||
$conf['breadcrumbs'] = 10; //how many recent visited pages to show
|
||||
$conf['youarehere'] = 0; //show "You are here" navigation? 0|1
|
||||
$conf['fullpath'] = 0; //show full path of the document or relative to datadir only? 0|1
|
||||
$conf['typography'] = 1; //smartquote conversion 0=off, 1=doublequotes, 2=all quotes
|
||||
$conf['dformat'] = '%Y/%m/%d %H:%M'; //dateformat accepted by PHPs strftime() function
|
||||
$conf['signature'] = ' --- //[[@MAIL@|@NAME@]] @DATE@//'; //signature see wiki page for details
|
||||
$conf['showuseras'] = 'loginname'; // 'loginname' users login name
|
||||
// 'username' users full name
|
||||
// 'email' e-mail address (will be obfuscated as per mailguard)
|
||||
// 'email_link' e-mail address as a mailto: link (obfuscated)
|
||||
$conf['toptoclevel'] = 1; //Level starting with and below to include in AutoTOC (max. 5)
|
||||
$conf['tocminheads'] = 3; //Minimum amount of headlines that determines if a TOC is built
|
||||
$conf['maxtoclevel'] = 3; //Up to which level include into AutoTOC (max. 5)
|
||||
$conf['maxseclevel'] = 3; //Up to which level create editable sections (max. 5)
|
||||
$conf['camelcase'] = 0; //Use CamelCase for linking? (I don't like it) 0|1
|
||||
$conf['deaccent'] = 1; //deaccented chars in pagenames (1) or romanize (2) or keep (0)?
|
||||
$conf['useheading'] = 0; //use the first heading in a page as its name
|
||||
$conf['sneaky_index']= 0; //check for namespace read permission in index view (0|1) (1 might cause unexpected behavior)
|
||||
$conf['hidepages'] = ''; //Regexp for pages to be skipped from RSS, Search and Recent Changes
|
||||
|
||||
/* Authentication Settings */
|
||||
$conf['useacl'] = 0; //Use Access Control Lists to restrict access?
|
||||
$conf['autopasswd'] = 1; //autogenerate passwords and email them to user
|
||||
$conf['authtype'] = 'authplain'; //which authentication backend should be used
|
||||
$conf['passcrypt'] = 'bcrypt'; //Used crypt method (smd5,md5,sha1,ssha,crypt,mysql,my411,bcrypt)
|
||||
$conf['defaultgroup']= 'user'; //Default groups new Users are added to
|
||||
$conf['superuser'] = '!!not set!!'; //The admin can be user or @group or comma separated list user1,@group1,user2
|
||||
$conf['manager'] = '!!not set!!'; //The manager can be user or @group or comma separated list user1,@group1,user2
|
||||
$conf['profileconfirm'] = 1; //Require current password to confirm changes to user profile
|
||||
$conf['rememberme'] = 1; //Enable/disable remember me on login
|
||||
$conf['disableactions'] = ''; //comma separated list of actions to disable
|
||||
$conf['auth_security_timeout'] = 900; //time (seconds) auth data is considered valid, set to 0 to recheck on every page view
|
||||
$conf['securecookie'] = 1; //never send HTTPS cookies via HTTP
|
||||
$conf['remote'] = 0; //Enable/disable remote interfaces
|
||||
$conf['remoteuser'] = '!!not set!!'; //user/groups that have access to remote interface (comma separated). leave empty to allow all users
|
||||
$conf['remotecors'] = ''; //enable Cross-Origin Resource Sharing (CORS) for the remote interfaces. Asterisk (*) to allow all origins. leave empty to deny.
|
||||
|
||||
/* Antispam Features */
|
||||
$conf['usewordblock']= 1; //block spam based on words? 0|1
|
||||
$conf['relnofollow'] = 1; //use rel="ugc nofollow" for external links?
|
||||
$conf['indexdelay'] = 60*60*24*5; //allow indexing after this time (seconds) default is 5 days
|
||||
$conf['mailguard'] = 'hex'; //obfuscate email addresses against spam harvesters?
|
||||
//valid entries are:
|
||||
// 'visible' - replace @ with [at], . with [dot] and - with [dash]
|
||||
// 'hex' - use hex entities to encode the mail address
|
||||
// 'none' - do not obfuscate addresses
|
||||
$conf['iexssprotect']= 1; // check for JavaScript and HTML in uploaded files 0|1
|
||||
|
||||
/* Editing Settings */
|
||||
$conf['usedraft'] = 1; //automatically save a draft while editing (0|1)
|
||||
$conf['htmlok'] = 0; //may raw HTML be embedded? This may break layout and XHTML validity 0|1
|
||||
$conf['phpok'] = 0; //may PHP code be embedded? Never do this on the internet! 0|1
|
||||
$conf['locktime'] = 15*60; //maximum age for lockfiles (defaults to 15 minutes)
|
||||
$conf['cachetime'] = 60*60*24; //maximum age for cachefile in seconds (defaults to a day)
|
||||
|
||||
/* Link Settings */
|
||||
// Set target to use when creating links - leave empty for same window
|
||||
$conf['target']['wiki'] = '';
|
||||
$conf['target']['interwiki'] = '';
|
||||
$conf['target']['extern'] = '';
|
||||
$conf['target']['media'] = '';
|
||||
$conf['target']['windows'] = '';
|
||||
|
||||
/* Media Settings */
|
||||
$conf['mediarevisions'] = 1; //enable/disable media revisions
|
||||
$conf['refcheck'] = 1; //check for references before deleting media files
|
||||
$conf['gdlib'] = 2; //the GDlib version (0, 1 or 2) 2 tries to autodetect
|
||||
$conf['im_convert'] = ''; //path to ImageMagicks convert (will be used instead of GD)
|
||||
$conf['jpg_quality'] = '70'; //quality of compression when scaling jpg images (0-100)
|
||||
$conf['fetchsize'] = 0; //maximum size (bytes) fetch.php may download from extern, disabled by default
|
||||
|
||||
/* Notification Settings */
|
||||
$conf['subscribers'] = 0; //enable change notice subscription support
|
||||
$conf['subscribe_time'] = 24*60*60; //Time after which digests / lists are sent (in sec, default 1 day)
|
||||
//Should be smaller than the time specified in recent_days
|
||||
$conf['notify'] = ''; //send change info to this email (leave blank for nobody)
|
||||
$conf['registernotify'] = ''; //send info about newly registered users to this email (leave blank for nobody)
|
||||
$conf['mailfrom'] = ''; //use this email when sending mails
|
||||
$conf['mailreturnpath'] = ''; //use this email as returnpath for bounce mails
|
||||
$conf['mailprefix'] = ''; //use this as prefix of outgoing mails
|
||||
$conf['htmlmail'] = 1; //send HTML multipart mails
|
||||
$conf['dontlog'] = 'debug'; //logging facilites that should be disabled
|
||||
|
||||
/* Syndication Settings */
|
||||
$conf['sitemap'] = 0; //Create a google sitemap? How often? In days.
|
||||
$conf['rss_type'] = 'rss1'; //type of RSS feed to provide, by default:
|
||||
// 'rss' - RSS 0.91
|
||||
// 'rss1' - RSS 1.0
|
||||
// 'rss2' - RSS 2.0
|
||||
// 'atom' - Atom 0.3
|
||||
// 'atom1' - Atom 1.0
|
||||
$conf['rss_linkto'] = 'diff'; //what page RSS entries link to:
|
||||
// 'diff' - page showing revision differences
|
||||
// 'page' - the revised page itself
|
||||
// 'rev' - page showing all revisions
|
||||
// 'current' - most recent revision of page
|
||||
$conf['rss_content'] = 'abstract'; //what to put in the items by default?
|
||||
// 'abstract' - plain text, first paragraph or so
|
||||
// 'diff' - plain text unified diff wrapped in <pre> tags
|
||||
// 'htmldiff' - diff as HTML table
|
||||
// 'html' - the full page rendered in XHTML
|
||||
$conf['rss_media'] = 'both'; //what should be listed?
|
||||
// 'both' - page and media changes
|
||||
// 'pages' - page changes only
|
||||
// 'media' - media changes only
|
||||
$conf['rss_update'] = 5*60; //Update the RSS feed every n seconds (defaults to 5 minutes)
|
||||
$conf['rss_show_summary'] = 1; //Add revision summary to title? 0|1
|
||||
$conf['rss_show_deleted'] = 1; //Show deleted items 0|1
|
||||
|
||||
/* Advanced Settings */
|
||||
$conf['updatecheck'] = 1; //automatically check for new releases?
|
||||
$conf['userewrite'] = 0; //this makes nice URLs: 0: off 1: .htaccess 2: internal
|
||||
$conf['useslash'] = 0; //use slash instead of colon? only when rewrite is on
|
||||
$conf['sepchar'] = '_'; //word separator character in page names; may be a
|
||||
// letter, a digit, '_', '-', or '.'.
|
||||
$conf['canonical'] = 0; //Should all URLs use full canonical http://... style?
|
||||
$conf['fnencode'] = 'url'; //encode filenames (url|safe|utf-8)
|
||||
$conf['autoplural'] = 0; //try (non)plural form of nonexisting files?
|
||||
$conf['compression'] = 'gz'; //compress old revisions: (0: off) ('gz': gnuzip) ('bz2': bzip)
|
||||
// bz2 generates smaller files, but needs more cpu-power
|
||||
$conf['gzip_output'] = 0; //use gzip content encodeing for the output xhtml (if allowed by browser)
|
||||
$conf['compress'] = 1; //Strip whitespaces and comments from Styles and JavaScript? 1|0
|
||||
$conf['cssdatauri'] = 512; //Maximum byte size of small images to embed into CSS, won't work on IE<8
|
||||
$conf['send404'] = 0; //Send a HTTP 404 status for non existing pages?
|
||||
$conf['broken_iua'] = 0; //Platform with broken ignore_user_abort (IIS+CGI) 0|1
|
||||
$conf['xsendfile'] = 0; //Use X-Sendfile (1 = lighttpd, 2 = standard)
|
||||
$conf['renderer_xhtml'] = 'xhtml'; //renderer to use for main page generation
|
||||
$conf['readdircache'] = 0; //time cache in second for the readdir operation, 0 to deactivate.
|
||||
$conf['search_nslimit'] = 0; //limit the search to the current X namespaces
|
||||
$conf['search_fragment'] = 'exact'; //specify the default fragment search behavior
|
||||
$conf['trustedproxy'] = '^(::1|[fF][eE]80:|127\.|10\.|192\.168\.|172\.((1[6-9])|(2[0-9])|(3[0-1]))\.)';
|
||||
//Regexp of trusted proxy address when reading IP using HTTP header
|
||||
// if blank, do not trust any proxy (including local IP)
|
||||
|
||||
/* Feature Flags */
|
||||
$conf['defer_js'] = 1; // Defer javascript to be executed after the page's HTML has been parsed. Setting will be removed in the next release.
|
||||
|
||||
/* Network Settings */
|
||||
$conf['dnslookups'] = 1; //disable to disallow IP to hostname lookups
|
||||
$conf['jquerycdn'] = 0; //use a CDN for delivering jQuery?
|
||||
// Proxy setup - if your Server needs a proxy to access the web set these
|
||||
$conf['proxy']['host'] = '';
|
||||
$conf['proxy']['port'] = '';
|
||||
$conf['proxy']['user'] = '';
|
||||
$conf['proxy']['pass'] = '';
|
||||
$conf['proxy']['ssl'] = 0;
|
||||
$conf['proxy']['except'] = '';
|
682
Sio2/SISR/20-ldap/install.php
Normal file
682
Sio2/SISR/20-ldap/install.php
Normal file
@ -0,0 +1,682 @@
|
||||
<?php
|
||||
|
||||
/*><div style="width:60%; margin: auto; background-color: #fcc;
|
||||
border: 1px solid #faa; padding: 0.5em 1em;">
|
||||
<h1 style="font-size: 120%">No PHP Support</h1>
|
||||
|
||||
It seems this server has no PHP support enabled. You will need to
|
||||
enable PHP before you can install and run DokuWiki. Contact your hosting
|
||||
provider if you're unsure what this means.
|
||||
|
||||
</div>*/
|
||||
/**
|
||||
* Dokuwiki installation assistance
|
||||
*
|
||||
* @author Chris Smith <chris@jalakai.co.uk>
|
||||
*/
|
||||
|
||||
if (!defined('DOKU_INC')) define('DOKU_INC', dirname(__FILE__) . '/');
|
||||
if (!defined('DOKU_CONF')) define('DOKU_CONF', DOKU_INC . 'conf/');
|
||||
if (!defined('DOKU_LOCAL')) define('DOKU_LOCAL', DOKU_INC . 'conf/');
|
||||
|
||||
// load and initialize the core system
|
||||
require_once(DOKU_INC . 'inc/init.php');
|
||||
require_once(DOKU_INC . 'inc/pageutils.php');
|
||||
|
||||
// check for error reporting override or set error reporting to sane values
|
||||
if (!defined('DOKU_E_LEVEL')) {
|
||||
error_reporting(E_ALL ^ E_NOTICE);
|
||||
} else {
|
||||
error_reporting(DOKU_E_LEVEL);
|
||||
}
|
||||
|
||||
// language strings
|
||||
require_once(DOKU_INC . 'inc/lang/en/lang.php');
|
||||
if (isset($_REQUEST['l']) && !is_array($_REQUEST['l'])) {
|
||||
$LC = preg_replace('/[^a-z\-]+/', '', $_REQUEST['l']);
|
||||
}
|
||||
if (empty($LC)) $LC = 'en';
|
||||
if ($LC && $LC != 'en') {
|
||||
require_once(DOKU_INC . 'inc/lang/' . $LC . '/lang.php');
|
||||
}
|
||||
|
||||
// initialise variables ...
|
||||
$error = array();
|
||||
|
||||
// begin output
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo $LC?>" dir="<?php echo $lang['direction']?>">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title><?php echo $lang['i_installer']?></title>
|
||||
<style>
|
||||
body { width: 90%; margin: 0 auto; font: 84% Verdana, Helvetica, Arial, sans-serif; }
|
||||
img { border: none }
|
||||
br.cl { clear:both; }
|
||||
code { font-size: 110%; color: #800000; }
|
||||
fieldset { border: none }
|
||||
label { display: block; margin-top: 0.5em; }
|
||||
select.text, input.text { width: 30em; margin: 0 0.5em; }
|
||||
a {text-decoration: none}
|
||||
</style>
|
||||
<script>
|
||||
function acltoggle(){
|
||||
var cb = document.getElementById('acl');
|
||||
var fs = document.getElementById('acldep');
|
||||
if(!cb || !fs) return;
|
||||
if(cb.checked){
|
||||
fs.style.display = '';
|
||||
}else{
|
||||
fs.style.display = 'none';
|
||||
}
|
||||
}
|
||||
window.onload = function(){
|
||||
acltoggle();
|
||||
var cb = document.getElementById('acl');
|
||||
if(cb) cb.onchange = acltoggle;
|
||||
};
|
||||
</script>
|
||||
</head>
|
||||
<body style="">
|
||||
<h1 style="float:left">
|
||||
<img src="lib/exe/fetch.php?media=wiki:dokuwiki-128.png"
|
||||
style="vertical-align: middle;" alt="" height="64" width="64" />
|
||||
<?php echo $lang['i_installer']?>
|
||||
</h1>
|
||||
<div style="float:right; margin: 1em;">
|
||||
<?php langsel()?>
|
||||
</div>
|
||||
<br class="cl" />
|
||||
|
||||
<div style="float: right; width: 34%;">
|
||||
<?php
|
||||
if (file_exists(DOKU_INC . 'inc/lang/' . $LC . '/install.html')) {
|
||||
include(DOKU_INC . 'inc/lang/' . $LC . '/install.html');
|
||||
} else {
|
||||
print "<div lang=\"en\" dir=\"ltr\">\n";
|
||||
include(DOKU_INC . 'inc/lang/en/install.html');
|
||||
print "</div>\n";
|
||||
}
|
||||
?>
|
||||
<a style="
|
||||
background: transparent
|
||||
url(data/dont-panic-if-you-see-this-in-your-logs-it-means-your-directory-permissions-are-correct.png)
|
||||
left top no-repeat;
|
||||
display: block; width:380px; height:73px; border:none; clear:both;"
|
||||
target="_blank"
|
||||
href="http://www.dokuwiki.org/security#web_access_security"></a>
|
||||
</div>
|
||||
|
||||
<div style="float: left; width: 58%;">
|
||||
<?php
|
||||
try {
|
||||
if (! (check_functions() && check_permissions())) {
|
||||
echo '<p>' . $lang['i_problems'] . '</p>';
|
||||
print_errors();
|
||||
print_retry();
|
||||
} elseif (!check_configs()) {
|
||||
echo '<p>' . $lang['i_modified'] . '</p>';
|
||||
print_errors();
|
||||
} elseif (check_data($_REQUEST['d'])) {
|
||||
// check_data has sanitized all input parameters
|
||||
if (!store_data($_REQUEST['d'])) {
|
||||
echo '<p>' . $lang['i_failure'] . '</p>';
|
||||
print_errors();
|
||||
} else {
|
||||
echo '<p>' . $lang['i_success'] . '</p>';
|
||||
}
|
||||
} else {
|
||||
print_errors();
|
||||
print_form($_REQUEST['d']);
|
||||
}
|
||||
} catch (Exception $e) {
|
||||
echo 'Caught exception: ', $e->getMessage(), "\n";
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
|
||||
<div style="clear: both">
|
||||
<a href="http://dokuwiki.org/"><img src="lib/tpl/dokuwiki/images/button-dw.png" alt="driven by DokuWiki" /></a>
|
||||
<a href="http://php.net"><img src="lib/tpl/dokuwiki/images/button-php.gif" alt="powered by PHP" /></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Print the input form
|
||||
*
|
||||
* @param array $d submitted entry 'd' of request data
|
||||
*/
|
||||
function print_form($d)
|
||||
{
|
||||
global $lang;
|
||||
global $LC;
|
||||
|
||||
include(DOKU_CONF . 'license.php');
|
||||
|
||||
if (!is_array($d)) $d = array();
|
||||
$d = array_map('hsc', $d);
|
||||
|
||||
if (!isset($d['acl'])) $d['acl'] = 1;
|
||||
if (!isset($d['pop'])) $d['pop'] = 1;
|
||||
|
||||
?>
|
||||
<form action="" method="post">
|
||||
<input type="hidden" name="l" value="<?php echo $LC ?>" />
|
||||
<fieldset>
|
||||
<label for="title"><?php echo $lang['i_wikiname']?>
|
||||
<input type="text" name="d[title]" id="title" value="<?php echo $d['title'] ?>" style="width: 20em;" />
|
||||
</label>
|
||||
|
||||
<fieldset style="margin-top: 1em;">
|
||||
<label for="acl">
|
||||
<input type="checkbox" name="d[acl]" id="acl" <?php echo(($d['acl'] ? ' checked="checked"' : ''));?> />
|
||||
<?php echo $lang['i_enableacl']?></label>
|
||||
|
||||
<fieldset id="acldep">
|
||||
<label for="superuser"><?php echo $lang['i_superuser']?></label>
|
||||
<input class="text" type="text" name="d[superuser]" id="superuser"
|
||||
value="<?php echo $d['superuser'] ?>" />
|
||||
|
||||
<label for="fullname"><?php echo $lang['fullname']?></label>
|
||||
<input class="text" type="text" name="d[fullname]" id="fullname"
|
||||
value="<?php echo $d['fullname'] ?>" />
|
||||
|
||||
<label for="email"><?php echo $lang['email']?></label>
|
||||
<input class="text" type="text" name="d[email]" id="email" value="<?php echo $d['email'] ?>" />
|
||||
|
||||
<label for="password"><?php echo $lang['pass']?></label>
|
||||
<input class="text" type="password" name="d[password]" id="password" />
|
||||
|
||||
<label for="confirm"><?php echo $lang['passchk']?></label>
|
||||
<input class="text" type="password" name="d[confirm]" id="confirm" />
|
||||
|
||||
<label for="policy"><?php echo $lang['i_policy']?></label>
|
||||
<select class="text" name="d[policy]" id="policy">
|
||||
<option value="0" <?php echo ($d['policy'] == 0) ? 'selected="selected"' : '' ?>><?php
|
||||
echo $lang['i_pol0']?></option>
|
||||
<option value="1" <?php echo ($d['policy'] == 1) ? 'selected="selected"' : '' ?>><?php
|
||||
echo $lang['i_pol1']?></option>
|
||||
<option value="2" <?php echo ($d['policy'] == 2) ? 'selected="selected"' : '' ?>><?php
|
||||
echo $lang['i_pol2']?></option>
|
||||
</select>
|
||||
|
||||
<label for="allowreg">
|
||||
<input type="checkbox" name="d[allowreg]" id="allowreg" <?php
|
||||
echo(($d['allowreg'] ? ' checked="checked"' : ''));?> />
|
||||
<?php echo $lang['i_allowreg']?>
|
||||
</label>
|
||||
</fieldset>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<p><?php echo $lang['i_license']?></p>
|
||||
<?php
|
||||
array_push($license, array('name' => $lang['i_license_none'], 'url' => ''));
|
||||
if (empty($d['license'])) $d['license'] = 'cc-by-sa';
|
||||
foreach ($license as $key => $lic) {
|
||||
echo '<label for="lic_' . $key . '">';
|
||||
echo '<input type="radio" name="d[license]" value="' . hsc($key) . '" id="lic_' . $key . '"' .
|
||||
(($d['license'] === $key) ? ' checked="checked"' : '') . '>';
|
||||
echo hsc($lic['name']);
|
||||
if ($lic['url']) echo ' <a href="' . $lic['url'] . '" target="_blank"><sup>[?]</sup></a>';
|
||||
echo '</label>';
|
||||
}
|
||||
?>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
<p><?php echo $lang['i_pop_field']?></p>
|
||||
<label for="pop">
|
||||
<input type="checkbox" name="d[pop]" id="pop" <?php
|
||||
echo(($d['pop'] ? ' checked="checked"' : ''));?> />
|
||||
<?php echo $lang['i_pop_label']?>
|
||||
<a href="http://www.dokuwiki.org/popularity" target="_blank"><sup>[?]</sup></a>
|
||||
</label>
|
||||
</fieldset>
|
||||
|
||||
</fieldset>
|
||||
<fieldset id="process">
|
||||
<button type="submit" name="submit"><?php echo $lang['btn_save']?></button>
|
||||
</fieldset>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
|
||||
function print_retry()
|
||||
{
|
||||
global $lang;
|
||||
global $LC;
|
||||
?>
|
||||
<form action="" method="get">
|
||||
<fieldset>
|
||||
<input type="hidden" name="l" value="<?php echo $LC ?>" />
|
||||
<button type="submit"><?php echo $lang['i_retry'];?></button>
|
||||
</fieldset>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
|
||||
/**
|
||||
* Check validity of data
|
||||
*
|
||||
* @author Andreas Gohr
|
||||
*
|
||||
* @param array $d
|
||||
* @return bool ok?
|
||||
*/
|
||||
function check_data(&$d)
|
||||
{
|
||||
static $form_default = array(
|
||||
'title' => '',
|
||||
'acl' => '1',
|
||||
'superuser' => '',
|
||||
'fullname' => '',
|
||||
'email' => '',
|
||||
'password' => '',
|
||||
'confirm' => '',
|
||||
'policy' => '0',
|
||||
'allowreg' => '0',
|
||||
'license' => 'cc-by-sa'
|
||||
);
|
||||
global $lang;
|
||||
global $error;
|
||||
|
||||
if (!is_array($d)) $d = array();
|
||||
foreach ($d as $k => $v) {
|
||||
if (is_array($v))
|
||||
unset($d[$k]);
|
||||
else $d[$k] = (string)$v;
|
||||
}
|
||||
|
||||
//autolowercase the username
|
||||
$d['superuser'] = isset($d['superuser']) ? strtolower($d['superuser']) : "";
|
||||
|
||||
$ok = false;
|
||||
|
||||
if (isset($_REQUEST['submit'])) {
|
||||
$ok = true;
|
||||
|
||||
// check input
|
||||
if (empty($d['title'])) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['i_wikiname']);
|
||||
$ok = false;
|
||||
}
|
||||
if (isset($d['acl'])) {
|
||||
if (empty($d['superuser']) || ($d['superuser'] !== cleanID($d['superuser']))) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['i_superuser']);
|
||||
$ok = false;
|
||||
}
|
||||
if (empty($d['password'])) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['pass']);
|
||||
$ok = false;
|
||||
} elseif (!isset($d['confirm']) || $d['confirm'] != $d['password']) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['passchk']);
|
||||
$ok = false;
|
||||
}
|
||||
if (empty($d['fullname']) || strstr($d['fullname'], ':')) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['fullname']);
|
||||
$ok = false;
|
||||
}
|
||||
if (empty($d['email']) || strstr($d['email'], ':') || !strstr($d['email'], '@')) {
|
||||
$error[] = sprintf($lang['i_badval'], $lang['email']);
|
||||
$ok = false;
|
||||
}
|
||||
} else {
|
||||
// Since default = 1, browser won't send acl=0 when user untick acl
|
||||
$d['acl'] = '0';
|
||||
}
|
||||
}
|
||||
$d = array_merge($form_default, $d);
|
||||
return $ok;
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes the data to the config files
|
||||
*
|
||||
* @author Chris Smith <chris@jalakai.co.uk>
|
||||
*
|
||||
* @param array $d
|
||||
* @return bool
|
||||
*/
|
||||
function store_data($d)
|
||||
{
|
||||
global $LC;
|
||||
$ok = true;
|
||||
$d['policy'] = (int) $d['policy'];
|
||||
|
||||
// create local.php
|
||||
$now = gmdate('r');
|
||||
$output = <<<EOT
|
||||
<?php
|
||||
/**
|
||||
* Dokuwiki's Main Configuration File - Local Settings
|
||||
* Auto-generated by install script
|
||||
* Date: $now
|
||||
*/
|
||||
|
||||
EOT;
|
||||
// add any config options set by a previous installer
|
||||
$preset = __DIR__ . '/install.conf';
|
||||
if (file_exists($preset)) {
|
||||
$output .= "# preset config options\n";
|
||||
$output .= file_get_contents($preset);
|
||||
$output .= "\n\n";
|
||||
$output .= "# options selected in installer\n";
|
||||
@unlink($preset);
|
||||
}
|
||||
|
||||
$output .= '$conf[\'title\'] = \'' . addslashes($d['title']) . "';\n";
|
||||
$output .= '$conf[\'lang\'] = \'' . addslashes($LC) . "';\n";
|
||||
$output .= '$conf[\'license\'] = \'' . addslashes($d['license']) . "';\n";
|
||||
if ($d['acl']) {
|
||||
$output .= '$conf[\'useacl\'] = 1' . ";\n";
|
||||
$output .= "\$conf['superuser'] = '@admin';\n";
|
||||
}
|
||||
if (!$d['allowreg']) {
|
||||
$output .= '$conf[\'disableactions\'] = \'register\'' . ";\n";
|
||||
}
|
||||
$ok = $ok && fileWrite(DOKU_LOCAL . 'local.php', $output);
|
||||
|
||||
if ($d['acl']) {
|
||||
// hash the password
|
||||
$phash = new \dokuwiki\PassHash();
|
||||
$pass = $phash->hash_bcrypt($d['password']);
|
||||
|
||||
// create users.auth.php
|
||||
$output = <<<EOT
|
||||
# users.auth.php
|
||||
# <?php exit()?>
|
||||
# Don't modify the lines above
|
||||
#
|
||||
# Userfile
|
||||
#
|
||||
# Auto-generated by install script
|
||||
# Date: $now
|
||||
#
|
||||
# Format:
|
||||
# login:passwordhash:Real Name:email:groups,comma,separated
|
||||
|
||||
EOT;
|
||||
// --- user:bcryptpasswordhash:Real Name:email:groups,comma,seperated
|
||||
$output = $output . "\n" . join(':', [
|
||||
$d['superuser'],
|
||||
$pass,
|
||||
$d['fullname'],
|
||||
$d['email'],
|
||||
'admin,user',
|
||||
]) . "\n";
|
||||
$ok = $ok && fileWrite(DOKU_LOCAL . 'users.auth.php', $output);
|
||||
|
||||
// create acl.auth.php
|
||||
$output = <<<EOT
|
||||
# acl.auth.php
|
||||
# <?php exit()?>
|
||||
# Don't modify the lines above
|
||||
#
|
||||
# Access Control Lists
|
||||
#
|
||||
# Auto-generated by install script
|
||||
# Date: $now
|
||||
|
||||
EOT;
|
||||
if ($d['policy'] == 2) {
|
||||
$output .= "* @ALL 0\n";
|
||||
$output .= "* @user 8\n";
|
||||
} elseif ($d['policy'] == 1) {
|
||||
$output .= "* @ALL 1\n";
|
||||
$output .= "* @user 8\n";
|
||||
} else {
|
||||
$output .= "* @ALL 8\n";
|
||||
}
|
||||
$ok = $ok && fileWrite(DOKU_LOCAL . 'acl.auth.php', $output);
|
||||
}
|
||||
|
||||
// enable popularity submission
|
||||
if (isset($d['pop']) && $d['pop']) {
|
||||
@touch(DOKU_INC . 'data/cache/autosubmit.txt');
|
||||
}
|
||||
|
||||
// disable auth plugins til needed
|
||||
$output = <<<EOT
|
||||
<?php
|
||||
/*
|
||||
* Local plugin enable/disable settings
|
||||
*
|
||||
* Auto-generated by install script
|
||||
* Date: $now
|
||||
*/
|
||||
|
||||
\$plugins['authad'] = 0;
|
||||
\$plugins['authldap'] = 0;
|
||||
\$plugins['authmysql'] = 0;
|
||||
\$plugins['authpgsql'] = 0;
|
||||
|
||||
EOT;
|
||||
$ok = $ok && fileWrite(DOKU_LOCAL . 'plugins.local.php', $output);
|
||||
|
||||
return $ok;
|
||||
}
|
||||
|
||||
/**
|
||||
* Write the given content to a file
|
||||
*
|
||||
* @author Chris Smith <chris@jalakai.co.uk>
|
||||
*
|
||||
* @param string $filename
|
||||
* @param string $data
|
||||
* @return bool
|
||||
*/
|
||||
function fileWrite($filename, $data)
|
||||
{
|
||||
global $error;
|
||||
global $lang;
|
||||
|
||||
if (($fp = @fopen($filename, 'wb')) === false) {
|
||||
$filename = str_replace($_SERVER['DOCUMENT_ROOT'], '{DOCUMENT_ROOT}/', $filename);
|
||||
$error[] = sprintf($lang['i_writeerr'], $filename);
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!empty($data)) {
|
||||
fwrite($fp, $data);
|
||||
}
|
||||
fclose($fp);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* check installation dependent local config files and tests for a known
|
||||
* unmodified main config file
|
||||
*
|
||||
* @author Chris Smith <chris@jalakai.co.uk>
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function check_configs()
|
||||
{
|
||||
global $error;
|
||||
global $lang;
|
||||
|
||||
$ok = true;
|
||||
|
||||
$config_files = array(
|
||||
'local' => DOKU_LOCAL . 'local.php',
|
||||
'users' => DOKU_LOCAL . 'users.auth.php',
|
||||
'auth' => DOKU_LOCAL . 'acl.auth.php'
|
||||
);
|
||||
|
||||
// configs shouldn't exist
|
||||
foreach ($config_files as $file) {
|
||||
if (file_exists($file) && filesize($file)) {
|
||||
$file = str_replace($_SERVER['DOCUMENT_ROOT'], '{DOCUMENT_ROOT}/', $file);
|
||||
$error[] = sprintf($lang['i_confexists'], $file);
|
||||
$ok = false;
|
||||
}
|
||||
}
|
||||
return $ok;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Check other installation dir/file permission requirements
|
||||
*
|
||||
* @author Chris Smith <chris@jalakai.co.uk>
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function check_permissions()
|
||||
{
|
||||
global $error;
|
||||
global $lang;
|
||||
|
||||
$dirs = array(
|
||||
'conf' => DOKU_LOCAL,
|
||||
'data' => DOKU_INC . 'data',
|
||||
'pages' => DOKU_INC . 'data/pages',
|
||||
'attic' => DOKU_INC . 'data/attic',
|
||||
'media' => DOKU_INC . 'data/media',
|
||||
'media_attic' => DOKU_INC . 'data/media_attic',
|
||||
'media_meta' => DOKU_INC . 'data/media_meta',
|
||||
'meta' => DOKU_INC . 'data/meta',
|
||||
'cache' => DOKU_INC . 'data/cache',
|
||||
'locks' => DOKU_INC . 'data/locks',
|
||||
'index' => DOKU_INC . 'data/index',
|
||||
'tmp' => DOKU_INC . 'data/tmp'
|
||||
);
|
||||
|
||||
$ok = true;
|
||||
foreach ($dirs as $dir) {
|
||||
if (!file_exists("$dir/.") || !is_writable($dir)) {
|
||||
$dir = str_replace($_SERVER['DOCUMENT_ROOT'], '{DOCUMENT_ROOT}', $dir);
|
||||
$error[] = sprintf($lang['i_permfail'], $dir);
|
||||
$ok = false;
|
||||
}
|
||||
}
|
||||
return $ok;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check the availability of functions used in DokuWiki and the PHP version
|
||||
*
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function check_functions()
|
||||
{
|
||||
global $error;
|
||||
global $lang;
|
||||
$ok = true;
|
||||
|
||||
if (version_compare(phpversion(), '5.6.0', '<')) {
|
||||
$error[] = sprintf($lang['i_phpver'], phpversion(), '5.6.0');
|
||||
$ok = false;
|
||||
}
|
||||
|
||||
if (ini_get('mbstring.func_overload') != 0) {
|
||||
$error[] = $lang['i_mbfuncoverload'];
|
||||
$ok = false;
|
||||
}
|
||||
|
||||
try {
|
||||
random_bytes(1);
|
||||
} catch (\Exception $th) {
|
||||
// If an appropriate source of randomness cannot be found, an Exception will be thrown by PHP 7+
|
||||
$error[] = $lang['i_urandom'];
|
||||
$ok = false;
|
||||
}
|
||||
|
||||
if (ini_get('mbstring.func_overload') != 0) {
|
||||
$error[] = $lang['i_mbfuncoverload'];
|
||||
$ok = false;
|
||||
}
|
||||
|
||||
$funcs = explode(' ', 'addslashes call_user_func chmod copy fgets ' .
|
||||
'file file_exists fseek flush filesize ftell fopen ' .
|
||||
'glob header ignore_user_abort ini_get mkdir ' .
|
||||
'ob_start opendir parse_ini_file readfile realpath ' .
|
||||
'rename rmdir serialize session_start unlink usleep ' .
|
||||
'preg_replace file_get_contents htmlspecialchars_decode ' .
|
||||
'spl_autoload_register stream_select fsockopen pack xml_parser_create');
|
||||
|
||||
if (!function_exists('mb_substr')) {
|
||||
$funcs[] = 'utf8_encode';
|
||||
$funcs[] = 'utf8_decode';
|
||||
}
|
||||
|
||||
if (!function_exists('mail')) {
|
||||
if (strpos(ini_get('disable_functions'), 'mail') !== false) {
|
||||
$disabled = $lang['i_disabled'];
|
||||
} else {
|
||||
$disabled = "";
|
||||
}
|
||||
$error[] = sprintf($lang['i_funcnmail'], $disabled);
|
||||
}
|
||||
|
||||
foreach ($funcs as $func) {
|
||||
if (!function_exists($func)) {
|
||||
$error[] = sprintf($lang['i_funcna'], $func);
|
||||
$ok = false;
|
||||
}
|
||||
}
|
||||
return $ok;
|
||||
}
|
||||
|
||||
/**
|
||||
* Print language selection
|
||||
*
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
*/
|
||||
function langsel()
|
||||
{
|
||||
global $lang;
|
||||
global $LC;
|
||||
|
||||
$dir = DOKU_INC . 'inc/lang';
|
||||
$dh = opendir($dir);
|
||||
if (!$dh) return;
|
||||
|
||||
$langs = array();
|
||||
while (($file = readdir($dh)) !== false) {
|
||||
if (preg_match('/^[\._]/', $file)) continue;
|
||||
if (is_dir($dir . '/' . $file) && file_exists($dir . '/' . $file . '/lang.php')) {
|
||||
$langs[] = $file;
|
||||
}
|
||||
}
|
||||
closedir($dh);
|
||||
sort($langs);
|
||||
|
||||
echo '<form action="">';
|
||||
echo $lang['i_chooselang'];
|
||||
echo ': <select name="l" onchange="submit()">';
|
||||
foreach ($langs as $l) {
|
||||
$sel = ($l == $LC) ? 'selected="selected"' : '';
|
||||
echo '<option value="' . $l . '" ' . $sel . '>' . $l . '</option>';
|
||||
}
|
||||
echo '</select> ';
|
||||
echo '<button type="submit">' . $lang['btn_update'] . '</button>';
|
||||
echo '</form>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Print global error array
|
||||
*
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
*/
|
||||
function print_errors()
|
||||
{
|
||||
global $error;
|
||||
if (!empty($error)) {
|
||||
echo '<ul>';
|
||||
foreach ($error as $err) {
|
||||
echo "<li>$err</li>";
|
||||
}
|
||||
echo '</ul>';
|
||||
}
|
||||
}
|
372
Sio2/SISR/20-ldap/labo51.lan.ldif
Normal file
372
Sio2/SISR/20-ldap/labo51.lan.ldif
Normal file
@ -0,0 +1,372 @@
|
||||
dn: dc=labo51,dc=lan
|
||||
o: labo51
|
||||
dc: labo51
|
||||
structuralObjectClass: organization
|
||||
entryUUID: fa4724a4-cf8e-103c-8b56-5b76801a304f
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923132546Z
|
||||
ou: labo51
|
||||
description: labo51
|
||||
objectClass: top
|
||||
objectClass: dcObject
|
||||
objectClass: organization
|
||||
objectClass: gosaDepartment
|
||||
objectClass: gosaAcl
|
||||
gosaAclEntry: 0:subtree:Y249YWRtaW4sb3U9YWNscm9sZXMsZGM9bGFibzUxLGRjPWxhbg==
|
||||
:dWlkPWZkLWFkbWluLG91PXBlb3BsZSxkYz1sYWJvNTEsZGM9bGFu
|
||||
entryCSN: 20220923133315.145750Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133315Z
|
||||
|
||||
dn: cn=admin,dc=labo51,dc=lan
|
||||
objectClass: simpleSecurityObject
|
||||
objectClass: organizationalRole
|
||||
cn: admin
|
||||
description: LDAP administrator
|
||||
userPassword:: e1NTSEF9azJpYVFLcGRSYis3MEVqMjVoR0V1aXpudGtGdDRyVEc=
|
||||
structuralObjectClass: organizationalRole
|
||||
entryUUID: fa477026-cf8e-103c-8b57-5b76801a304f
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923132546Z
|
||||
entryCSN: 20220923132546.893074Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923132546Z
|
||||
|
||||
dn: ou=fusiondirectory,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: fusiondirectory
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: fa2072e0-cf8f-103c-9ee5-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133256Z
|
||||
entryCSN: 20220923133256.134250Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133256Z
|
||||
|
||||
dn: cn=config,ou=fusiondirectory,dc=labo51,dc=lan
|
||||
fdLanguage: fr_FR
|
||||
fdTheme: breezy
|
||||
fdTimezone: Europe/Paris
|
||||
fdLdapSizeLimit: 200
|
||||
fdModificationDetectionAttribute: entryCSN
|
||||
fdLogging: TRUE
|
||||
fdSchemaCheck: TRUE
|
||||
fdEnableSnapshots: TRUE
|
||||
fdSnapshotBase: ou=snapshots,dc=labo51,dc=lan
|
||||
fdPasswordDefaultHash: ssha
|
||||
fdForcePasswordDefaultHash: FALSE
|
||||
fdHandleExpiredAccounts: FALSE
|
||||
fdLoginAttribute: uid
|
||||
fdForceSSL: FALSE
|
||||
fdWarnSSL: TRUE
|
||||
fdSessionLifeTime: 1800
|
||||
fdHttpAuthActivated: FALSE
|
||||
fdHttpHeaderAuthActivated: FALSE
|
||||
fdHttpHeaderAuthHeaderName: AUTH_USER
|
||||
fdSslKeyPath: /etc/ssl/private/fd.key
|
||||
fdSslCertPath: /etc/ssl/certs/fd.cert
|
||||
fdSslCaCertPath: /etc/ssl/certs/ca.cert
|
||||
fdCasActivated: FALSE
|
||||
fdCasServerCaCertPath: /etc/ssl/certs/ca.cert
|
||||
fdCasHost: localhost
|
||||
fdCasPort: 443
|
||||
fdCasContext: /cas
|
||||
fdAccountPrimaryAttribute: uid
|
||||
fdCnPattern: %givenName% %sn%
|
||||
fdStrictNamingRules: TRUE
|
||||
fdUserRDN: ou=people
|
||||
fdAclRoleRDN: ou=aclroles
|
||||
fdRestrictRoleMembers: FALSE
|
||||
fdSplitPostalAddress: FALSE
|
||||
fdDisplayErrors: FALSE
|
||||
fdLdapStats: FALSE
|
||||
fdDebugLevel: 0
|
||||
fdListSummary: TRUE
|
||||
fdAclTabOnObjects: FALSE
|
||||
fdDisplayHookOutput: FALSE
|
||||
structuralObjectClass: fusionDirectoryConf
|
||||
cn: config
|
||||
entryUUID: fa2105f2-cf8f-103c-9ee6-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133256Z
|
||||
fdDashboardNumberOfDigit: 3
|
||||
fdDashboardPrefix: PC
|
||||
fdDashboardExpiredAccountsDays: 15
|
||||
fdOGroupRDN: ou=groups
|
||||
fdForceSaslPasswordAsk: FALSE
|
||||
objectClass: fusionDirectoryConf
|
||||
objectClass: fdDashboardPluginConf
|
||||
objectClass: fusionDirectoryPluginsConf
|
||||
objectClass: fdPasswordRecoveryConf
|
||||
fdPasswordRecoveryActivated: FALSE
|
||||
fdPasswordRecoveryEmail: to.be@chang.ed
|
||||
fdPasswordRecoveryValidity: 10
|
||||
fdPasswordRecoverySalt: SomethingSecretAndVeryLong
|
||||
fdPasswordRecoveryUseAlternate: FALSE
|
||||
fdPasswordRecoveryLoginAttribute: uid
|
||||
fdPasswordRecoveryMailSubject:: W0Z1c2lvbkRpcmVjdG9yeV0gTGllbiBkZSByw6lpbml0
|
||||
aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2U=
|
||||
fdPasswordRecoveryMailBody:: Qm9uam91ciwKClZvaWNpIHZvcyBpbmZvcm1hdGlvbnMgOgo
|
||||
tIElkZW50aWZpYW504oCvOiAlcwotIExpZW7igK86ICVzCgpDZSBsaWVuIGVzdCBzZXVsZW1lbn
|
||||
QgdmFsaWRlIHBlbmRhbnQgMTAgbWludXRlcw==
|
||||
fdPasswordRecoveryMail2Subject:: W0Z1c2lvbkRpcmVjdG9yeV0gUsOpaW5pdGlhbGlzYXR
|
||||
pb24gZHUgbW90IGRlIHBhc3NlIHLDqXVzc2ll4oCvIQ==
|
||||
fdPasswordRecoveryMail2Body:: Qm9uam91ciwKClZvdHJlIG1vdCBkZSBwYXNzZSBhIMOpdM
|
||||
OpIGNoYW5nw6kuIApWb3RyZSBpZGVudGlmaWFudCBkZSBjb25uZXhpb24gZXN0IHRvdWpvdXJzI
|
||||
CVzLg==
|
||||
fusionConfigMd5: a757b5932e118edd99c930ce5cb6399b
|
||||
fdGroupRDN: ou=groups
|
||||
fdMinId: 100
|
||||
fdUidNumberBase: 1100
|
||||
fdGidNumberBase: 1100
|
||||
fdIdAllocationMethod: traditional
|
||||
fdShells: /bin/ash
|
||||
fdShells: /bin/bash
|
||||
fdShells: /bin/csh
|
||||
fdShells: /bin/sh
|
||||
fdShells: /bin/ksh
|
||||
fdShells: /bin/tcsh
|
||||
fdShells: /bin/dash
|
||||
fdShells: /bin/zsh
|
||||
fdShells: /sbin/nologin
|
||||
fdShells: /bin/false
|
||||
fdShells: /usr/bin/git-shell
|
||||
fdDefaultShell: /bin/ash
|
||||
entryCSN: 20220927084251.846088Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927084251Z
|
||||
|
||||
dn: ou=aclroles,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: aclroles
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 05717270-cf90-103c-9ee8-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133315Z
|
||||
entryCSN: 20220923133315.120052Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133315Z
|
||||
|
||||
dn: cn=admin,ou=aclroles,dc=labo51,dc=lan
|
||||
objectClass: top
|
||||
objectClass: gosaRole
|
||||
cn: admin
|
||||
description: Donne tous les droits sur tous les objets
|
||||
gosaAclTemplate: 0:all;cmdrw
|
||||
structuralObjectClass: gosaRole
|
||||
entryUUID: 0571e12e-cf90-103c-9ee9-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133315Z
|
||||
entryCSN: 20220923133315.122882Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133315Z
|
||||
|
||||
dn: ou=people,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: people
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 0573d402-cf90-103c-9eea-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133315Z
|
||||
entryCSN: 20220923133315.135652Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133315Z
|
||||
|
||||
dn: uid=fd-admin,ou=people,dc=labo51,dc=lan
|
||||
objectClass: inetOrgPerson
|
||||
objectClass: organizationalPerson
|
||||
objectClass: person
|
||||
cn: System Administrator
|
||||
sn: Administrator
|
||||
givenName: System
|
||||
uid: fd-admin
|
||||
userPassword:: e1NTSEF9WFlPYlZ4bi96eEhkUkFZaWluZjRLaFZNeUJaa1hTQTM=
|
||||
structuralObjectClass: inetOrgPerson
|
||||
entryUUID: 0574800a-cf90-103c-9eeb-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133315Z
|
||||
entryCSN: 20220923133315.140056Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133315Z
|
||||
|
||||
dn: cn=manager,ou=aclroles,dc=labo51,dc=lan
|
||||
cn: manager
|
||||
description: Donner tous les droits aux utilisateurs sur cette branche
|
||||
objectClass: top
|
||||
objectClass: gosaRole
|
||||
gosaAclTemplate: 0:user/user;cmdrw,user/posixAccount;cmdrw
|
||||
structuralObjectClass: gosaRole
|
||||
entryUUID: 06db8bc8-cf90-103c-9eec-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133317Z
|
||||
entryCSN: 20220923133317.493099Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133317Z
|
||||
|
||||
dn: cn=editowninfos,ou=aclroles,dc=labo51,dc=lan
|
||||
cn: editowninfos
|
||||
description:: UGVybWV0IGF1eCB1dGlsaXNhdGV1cnMgZCfDqWRpdGVyIGxldXJzIHByb3ByZX
|
||||
MgaW5mb3JtYXRpb25zIChvbmdsZXRzIGfDqW7DqXJpcXVlIGV0IHBvc2l4LCDDoCBuJ3V0aWxpc
|
||||
2VyIHF1ZSBzdXIgbGEgYmFzZSk=
|
||||
objectClass: top
|
||||
objectClass: gosaRole
|
||||
gosaAclTemplate: 0:user/user;srw,user/posixAccount;srw
|
||||
structuralObjectClass: gosaRole
|
||||
entryUUID: 06dc1dcc-cf90-103c-9eed-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133317Z
|
||||
entryCSN: 20220923133317.496837Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133317Z
|
||||
|
||||
dn: cn=editownpwd,ou=aclroles,dc=labo51,dc=lan
|
||||
cn: editownpwd
|
||||
description:: UGVybWV0IGF1eCB1dGlsaXNhdGV1cnMgZGUgY2hhbmdlciBsZXVyIG1vdCBkZS
|
||||
BwYXNzZSAow6AgbuKAmXV0aWxpc2VyIHF1ZSBzdXIgbGEgYmFzZSk=
|
||||
objectClass: top
|
||||
objectClass: gosaRole
|
||||
gosaAclTemplate: 0:user/user;s#userPassword;rw
|
||||
structuralObjectClass: gosaRole
|
||||
entryUUID: 06dc87d0-cf90-103c-9eee-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133317Z
|
||||
entryCSN: 20220923133317.499552Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133317Z
|
||||
|
||||
dn: ou=recovery,ou=fusiondirectory,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: recovery
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 867ca16e-cf90-103c-9ef1-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133651Z
|
||||
entryCSN: 20220923133651.619426Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133651Z
|
||||
|
||||
dn: ou=locks,ou=fusiondirectory,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: locks
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 89251e00-cf90-103c-9ef2-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133656Z
|
||||
entryCSN: 20220923133656.079063Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133656Z
|
||||
|
||||
dn: ou=snapshots,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: snapshots
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: d945fb3e-cf90-103c-9ef3-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923133910Z
|
||||
entryCSN: 20220923133910.512170Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923133910Z
|
||||
|
||||
dn: uid=dpaul,ou=people,dc=labo51,dc=lan
|
||||
cn: Paul Dubois
|
||||
sn: Dubois
|
||||
givenName: Paul
|
||||
description: Polo
|
||||
uid: dpaul
|
||||
preferredLanguage: fr_FR
|
||||
userPassword:: e1NTSEF9RkgrNnNtUnNxMGw3KzFDODB2MXNTQzJQVXJSZEttS0g=
|
||||
structuralObjectClass: inetOrgPerson
|
||||
entryUUID: 27e0f56e-cf91-103c-9ef4-cd38c1c99b59
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923134122Z
|
||||
objectClass: inetOrgPerson
|
||||
objectClass: organizationalPerson
|
||||
objectClass: person
|
||||
objectClass: posixAccount
|
||||
objectClass: shadowAccount
|
||||
homeDirectory: /home/paul
|
||||
gecos: Paul Dubois
|
||||
loginShell: /bin/ash
|
||||
uidNumber: 1101
|
||||
gidNumber: 1002
|
||||
shadowLastChange: 19262
|
||||
entryCSN: 20220927084325.025161Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927084325Z
|
||||
|
||||
dn: cn=fd-admin,dc=labo51,dc=lan
|
||||
objectClass: posixGroup
|
||||
cn: fd-admin
|
||||
description: Groupe de l'utilisateur fd-admin
|
||||
gidNumber: 1001
|
||||
structuralObjectClass: posixGroup
|
||||
entryUUID: ee847b00-cf91-103c-8113-87fb8d81eb6d
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220923134655Z
|
||||
entryCSN: 20220923134655.650648Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220923134655Z
|
||||
|
||||
dn: cn=dpaul,dc=labo51,dc=lan
|
||||
objectClass: posixGroup
|
||||
cn: dpaul
|
||||
description: Groupe de l'utilisateur dpaul
|
||||
gidNumber: 1002
|
||||
structuralObjectClass: posixGroup
|
||||
entryUUID: 8474bbca-d28a-103c-8c1d-dbb4971e905b
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220927083124Z
|
||||
entryCSN: 20220927083124.720185Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927083124Z
|
||||
|
||||
dn: uid=louis,ou=people,dc=labo51,dc=lan
|
||||
cn: louis depres
|
||||
sn: depres
|
||||
givenName: louis
|
||||
uid: louis
|
||||
preferredLanguage: fr_FR
|
||||
userPassword:: e1NTSEF9b2dhU25CWlNEWkFUekVIVXJsSXR4NFFEbGM2QURCNVk=
|
||||
structuralObjectClass: inetOrgPerson
|
||||
entryUUID: 4dee1eb4-d28c-103c-8125-f3f3a5e1910b
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220927084412Z
|
||||
objectClass: inetOrgPerson
|
||||
objectClass: organizationalPerson
|
||||
objectClass: person
|
||||
objectClass: posixAccount
|
||||
objectClass: shadowAccount
|
||||
homeDirectory: /home/louis
|
||||
gecos: louis depres
|
||||
loginShell: /bin/ash
|
||||
uidNumber: 1102
|
||||
gidNumber: 1101
|
||||
shadowLastChange: 19262
|
||||
entryCSN: 20220927084412.248333Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927084412Z
|
||||
|
||||
dn: ou=groups,dc=labo51,dc=lan
|
||||
objectClass: organizationalUnit
|
||||
ou: groups
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 4defab8a-d28c-103c-8128-f3f3a5e1910b
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220927084412Z
|
||||
entryCSN: 20220927084412.244637Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927084412Z
|
||||
|
||||
dn: cn=louis,ou=groups,dc=labo51,dc=lan
|
||||
objectClass: posixGroup
|
||||
cn: louis
|
||||
description: Groupe de l'utilisateur louis
|
||||
gidNumber: 1101
|
||||
structuralObjectClass: posixGroup
|
||||
entryUUID: 4defde70-d28c-103c-8129-f3f3a5e1910b
|
||||
creatorsName: cn=admin,dc=labo51,dc=lan
|
||||
createTimestamp: 20220927084412Z
|
||||
entryCSN: 20220927084412.245939Z#000000#000#000000
|
||||
modifiersName: cn=admin,dc=labo51,dc=lan
|
||||
modifyTimestamp: 20220927084412Z
|
||||
|
16
Sio2/SISR/20-ldap/local.php
Normal file
16
Sio2/SISR/20-ldap/local.php
Normal file
@ -0,0 +1,16 @@
|
||||
<?php
|
||||
$conf['title'] = 'labo2 ps wiki';
|
||||
$conf['lang'] = 'fr';
|
||||
$conf['license'] = 'cc-by-sa';
|
||||
$conf['useacl'] = 1;
|
||||
$conf['authtype'] = 'authldap';
|
||||
$conf['superuser'] = '@admin';
|
||||
$conf['disableactions'] = 'register';
|
||||
$conf['plugin']['authldap']['server'] = 'ldap://localhost:389';
|
||||
$conf['plugin']['authldap']['usertree'] = 'ou=people,dc=labo51,dc=lan';
|
||||
$conf['plugin']['authldap']['grouptree'] = 'ou=groups,dc=labo51,dc=lan';
|
||||
$conf['plugin']['authldap']['userfilter'] = '(&(uid=%{user})(objectClass=posixAccount))';
|
||||
$conf['plugin']['authldap']['groupfilter'] = '(&(objectClass=posixGroup)(memberUID=%{user}))';
|
||||
$conf['plugin']['authldap']['version'] = 3;
|
||||
$conf['plugin']['authldap']['debug'] = 1;
|
||||
$conf['plugin']['authldap']['passcrypt'] = 'ssha';
|
Loading…
x
Reference in New Issue
Block a user