Commit ae1835b6 authored by Xavier Guimard's avatar Xavier Guimard

Update doc

parent ca399ab5
......@@ -90,7 +90,7 @@
<form action="/start" accept-charset="utf-8" class="search" id="dw__search" method="get" role="search"><div class="no"><input type="hidden" name="do" value="search" /><input type="text" id="qsearch__in" accesskey="f" name="id" class="edit" title="[F]" /><input type="submit" value="Search" class="button" title="Search" /><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form>
<ul class="nav navbar-nav">
<li><a href="/documentation/2.0/applications/img/icons.png?do=login&amp;sectok=d4fe5585dec923939be5e0ea38da2802" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
<li><a href="/documentation/2.0/applications/img/icons.png?do=login&amp;sectok=fa0cc1a85fc0d1baf3a61bfee1cba736" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
</div>
......@@ -204,7 +204,7 @@ You&#039;ve followed a link to a topic that doesn&#039;t exist yet. If permissio
</div><!-- /site -->
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Aapplications%3Aimg%3Aicons.png&amp;1505393484" width="2" height="1" alt="" /></div>
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Aapplications%3Aimg%3Aicons.png&amp;1508842909" width="2" height="1" alt="" /></div>
<div id="screen__mode" class="no">
<span class="visible-xs"></span>
<span class="visible-sm"></span>
......
......@@ -90,7 +90,7 @@
<form action="/start" accept-charset="utf-8" class="search" id="dw__search" method="get" role="search"><div class="no"><input type="hidden" name="do" value="search" /><input type="text" id="qsearch__in" accesskey="f" name="id" class="edit" title="[F]" /><input type="submit" value="Search" class="button" title="Search" /><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form>
<ul class="nav navbar-nav">
<li><a href="/documentation/2.0/applications/img/loader.gif?do=login&amp;sectok=d4fe5585dec923939be5e0ea38da2802" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
<li><a href="/documentation/2.0/applications/img/loader.gif?do=login&amp;sectok=fa0cc1a85fc0d1baf3a61bfee1cba736" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
</div>
......@@ -204,7 +204,7 @@ You&#039;ve followed a link to a topic that doesn&#039;t exist yet. If permissio
</div><!-- /site -->
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Aapplications%3Aimg%3Aloader.gif&amp;1505393484" width="2" height="1" alt="" /></div>
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Aapplications%3Aimg%3Aloader.gif&amp;1508842909" width="2" height="1" alt="" /></div>
<div id="screen__mode" class="no">
<span class="visible-xs"></span>
<span class="visible-sm"></span>
......
......@@ -135,6 +135,8 @@ Each module that will be used in combination rule must be declared. You must set
</li>
</ul>
</li>
<li class="level1"><div class="li"> overwritten parameters: you can redefine any LLNG string parameter. For example, if you use 2 different LDAP, the first can use normal configuration and for the second, overwritten parameter can redefine ldapServer,…</div>
</li>
</ul>
<p>
......@@ -143,23 +145,23 @@ For example:
<div class="table sectionedit6"><table class="inline table table-bordered table-striped">
<thead>
<tr class="row0 roweven">
<th class="col0"> Name </th><th class="col1"> Type </th><th class="col2"> Scope </th>
<th class="col0"> Name </th><th class="col1"> Type </th><th class="col2"> Scope </th><th class="col3"> Parameters </th>
</tr>
</thead>
<tr class="row1 rowodd">
<td class="col0"> DB1 </td><td class="col1"> <abbr title="Database Interface">DBI</abbr> </td><td class="col2"> Auth only </td>
<td class="col0"> DB1 </td><td class="col1"> <abbr title="Database Interface">DBI</abbr> </td><td class="col2"> Auth only </td><td class="col3"> </td>
</tr>
<tr class="row2 roweven">
<td class="col0"> DB2 </td><td class="col1"> <abbr title="Database Interface">DBI</abbr> </td><td class="col2"> User DB only </td>
<td class="col0"> DB2 </td><td class="col1"> <abbr title="Database Interface">DBI</abbr> </td><td class="col2"> User DB only </td><td class="col3"> dbiAuthChain ⇒ “mysql:…” </td>
</tr>
</table></div>
<!-- EDIT6 TABLE [811-889] -->
<!-- EDIT6 TABLE [1034-1157] -->
<p>
Usually, you can&#039;t declare two modules of the same type if they don&#039;t have the same parameters. For example, usually you can&#039;t declare a MySQL <abbr title="Database Interface">DBI</abbr> and a PostgreSQL <abbr title="Database Interface">DBI</abbr>, because there is no extra field for PostgreSQL parameters. Now with Combination, you can declare some overloaded parameters. For example, if <abbr title="Database Interface">DBI</abbr> is configured to use PostgreSQL but DB2 is a MySQL DB, you can override the “dbiChain” parameter.
</p>
</div>
<!-- EDIT5 SECTION "Modules declaration" [516-1303] -->
<!-- EDIT5 SECTION "Modules declaration" [516-1571] -->
<h3 class="sectionedit7" id="rule_chain">Rule chain</h3>
<div class="level3">
......@@ -206,7 +208,7 @@ Remember that schemes in rules are the names declared above.
<td class="col0 leftalign"> <code>[mySSL and myLDAP, myLDAP ]</code> </td><td class="col1"> Use mySSL and myLDAP to authentify, myLDAP to get user </td>
</tr>
</table></div>
<!-- EDIT8 TABLE [1757-2188] --><div class="noteimportant">Note that “or” can&#039;t be used inside a scheme.
<!-- EDIT8 TABLE [2025-2456] --><div class="noteimportant">Note that “or” can&#039;t be used inside a scheme.
If you think to “[mySSL or myLDAP, myLDAP]”, you must write <code>[mySSL, myLDAP] or [myLDAP, myLDAP]</code>
</div><div class="table sectionedit9"><table class="inline table table-bordered table-striped">
......@@ -222,7 +224,7 @@ If you think to “[mySSL or myLDAP, myLDAP]”, you must write <code>[mySSL, my
<td class="col0"> <code>[myDBI1] and [myDBI2] or [myLDAP] and [myDBI2]</code> </td><td class="col1"> Try myDBI1 and myDBI2, if it fails, try myLDAP and myDBI2 </td>
</tr>
</table></div>
<!-- EDIT9 TABLE [2361-2605] --><div class="noteimportant">You can&#039;t use brackets in a boolean expression and “and” has precedence on “or”.
<!-- EDIT9 TABLE [2629-2873] --><div class="noteimportant">You can&#039;t use brackets in a boolean expression and “and” has precedence on “or”.
<p>
If you think to “( [myLDAP] or [myDBI1] ) and [myDBI2]”, you must write <code>[myLDAP] and [myDBI2] or [myDBI1] and [myDBI2]</code>
</p>
......@@ -249,7 +251,7 @@ Test can use only the <code>$env</code> variable. It contains the FastCGI enviro
<td class="col0"> <code>if($env→{REMOTE_ADDR} =~ /^10\./) then [myLDAP] else if($env→{REMOTE_ADDR} =~ /^192/) then [myDBI1] else [myDBI2]</code> </td><td class="col1"> Chain tests </td>
</tr>
</table></div>
<!-- EDIT10 TABLE [2941-3263] --><div class="noteimportant">Note that brackets can&#039;t be used except to enclose test.
<!-- EDIT10 TABLE [3209-3531] --><div class="noteimportant">Note that brackets can&#039;t be used except to enclose test.
<p>
If you wants to write <code>if(…) then if…</code>, you must write <code>if(not …) then … else if(…)…</code>
</p>
......@@ -269,7 +271,7 @@ The following rule is valid:
</p>
</div>
<!-- EDIT7 SECTION "Rule chain" [1304-3610] -->
<!-- EDIT7 SECTION "Rule chain" [1572-3878] -->
<h3 class="sectionedit11" id="combine_second_factor">Combine second factor</h3>
<div class="level3">
......@@ -294,7 +296,7 @@ Now if you want to authenticate users either by LDAP or LDAP+U2F <em>(to have 2
</ul>
</div>
<!-- EDIT11 SECTION "Combine second factor" [3611-4260] -->
<!-- EDIT11 SECTION "Combine second factor" [3879-4528] -->
<h3 class="sectionedit12" id="display_multiple_forms">Display multiple forms</h3>
<div class="level3">
......@@ -305,12 +307,12 @@ Combination module returns the form corresponding to the first authentication sc
<span class="re1">combinationForms</span> <span class="sy0">=</span><span class="re2"> standardform, openidform</span></pre>
</div>
<!-- EDIT12 SECTION "Display multiple forms" [4261-4589] -->
<!-- EDIT12 SECTION "Display multiple forms" [4529-4857] -->
<h2 class="sectionedit13" id="known_problems">Known problems</h2>
<div class="level2">
</div>
<!-- EDIT13 SECTION "Known problems" [4590-4617] -->
<!-- EDIT13 SECTION "Known problems" [4858-4885] -->
<h3 class="sectionedit14" id="federation_protocols">Federation protocols</h3>
<div class="level3">
......@@ -330,9 +332,9 @@ Combination module returns the form corresponding to the first authentication sc
<td class="col0"> <em><code>[<abbr title="Security Assertion Markup Language">SAML</abbr>] and [LDAP] or [LDAP]</code></em> </td><td class="col1"> <code>[<abbr title="Security Assertion Markup Language">SAML</abbr>, <abbr title="Security Assertion Markup Language">SAML</abbr> and LDAP] or [LDAP]</code> </td><td class="col2"> Authentication is done by <abbr title="Security Assertion Markup Language">SAML</abbr> or LDAP but user must match an LDAP entry </td>
</tr>
</table></div>
<!-- EDIT15 TABLE [4917-5249] -->
<!-- EDIT15 TABLE [5185-5517] -->
</div>
<!-- EDIT14 SECTION "Federation protocols" [4618-5250] -->
<!-- EDIT14 SECTION "Federation protocols" [4886-5518] -->
<h3 class="sectionedit16" id="authapache_authentication">Auth::Apache authentication</h3>
<div class="level3">
......@@ -350,7 +352,7 @@ To bypass this, follow the documentation of <a href="authapache.html" class="wik
</p>
</div>
<!-- EDIT16 SECTION "Auth::Apache authentication" [5251-5862] -->
<!-- EDIT16 SECTION "Auth::Apache authentication" [5519-6130] -->
<h3 class="sectionedit17" id="ssl_authentication">SSL authentication</h3>
<div class="level3">
......@@ -359,6 +361,6 @@ To chain SSL, you have to set “SSLRequire optional” in Apache configuration,
</p>
</div>
<!-- EDIT17 SECTION "SSL authentication" [5863-] --></div>
<!-- EDIT17 SECTION "SSL authentication" [6131-] --></div>
</body>
</html>
......@@ -4,7 +4,7 @@
<meta charset="utf-8" />
<title>documentation:2.0:configlocation</title>
<meta name="generator" content="DokuWiki"/>
<meta name="robots" content="noindex,nofollow"/>
<meta name="robots" content="index,follow"/>
<meta name="keywords" content="documentation,2.0,configlocation"/>
<link rel="search" type="application/opensearchdescription+xml" href="lib/exe/opensearch.html" title="LemonLDAP::NG"/>
<link rel="start" href="configlocation.html"/>
......
......@@ -74,11 +74,11 @@
<div class="level2">
<p>
To use Nginx, you must install LemonLDAP::NG FastCGI server, which is not installed by default lemonldap-ng metapackage.
To use Nginx, you must install LemonLDAP::NG FastCGI server, which is not installed by lemonldap-ng metapackage.
</p>
</div>
<!-- EDIT2 SECTION "FastCGI server" [43-192] -->
<!-- EDIT2 SECTION "FastCGI server" [43-184] -->
<h3 class="sectionedit3" id="debianubuntu">Debian/Ubuntu</h3>
<div class="level3">
<pre class="code">apt install lemonldap-ng-fastcgi-server</pre>
......@@ -90,7 +90,7 @@ Enable and start the service :
systemctl start llng-fastcgi-server</pre>
</div>
<!-- EDIT3 SECTION "Debian/Ubuntu" [193-393] -->
<!-- EDIT3 SECTION "Debian/Ubuntu" [185-385] -->
<h3 class="sectionedit4" id="red_hatcentos">Red Hat/CentOS</h3>
<div class="level3">
<pre class="code">yum install lemonldap-ng-fastcgi-server</pre>
......@@ -102,7 +102,7 @@ Enable and start the service :
systemctl start llng-fastcgi-server</pre>
</div>
<!-- EDIT4 SECTION "Red Hat/CentOS" [394-595] -->
<!-- EDIT4 SECTION "Red Hat/CentOS" [386-587] -->
<h2 class="sectionedit5" id="files">Files</h2>
<div class="level2">
......@@ -115,7 +115,7 @@ You have to include them in Nginx main configuration.
</p>
</div>
<!-- EDIT5 SECTION "Files" [596-818] -->
<!-- EDIT5 SECTION "Files" [588-810] -->
<h3 class="sectionedit6" id="debianubuntu1">Debian/Ubuntu</h3>
<div class="level3">
......@@ -136,7 +136,7 @@ ln -s /etc/nginx/sites-available/portal-nginx.conf /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/test-nginx.conf /etc/nginx/sites-enabled/</pre>
</div>
<!-- EDIT6 SECTION "Debian/Ubuntu" [819-1577] -->
<!-- EDIT6 SECTION "Debian/Ubuntu" [811-1569] -->
<h3 class="sectionedit7" id="red_hatcentos1">Red Hat/CentOS</h3>
<div class="level3">
......@@ -149,6 +149,6 @@ ln -s /etc/lemonldap-ng/portal-nginx.conf /etc/nginx/conf.d/
ln -s /etc/lemonldap-ng/test-nginx.conf /etc/nginx/conf.d/</pre>
</div>
<!-- EDIT7 SECTION "Red Hat/CentOS" [1578-] --></div>
<!-- EDIT7 SECTION "Red Hat/CentOS" [1570-] --></div>
</body>
</html>
......@@ -4,7 +4,7 @@
<meta charset="utf-8" />
<title>documentation:2.0:configvhost</title>
<meta name="generator" content="DokuWiki"/>
<meta name="robots" content="index,follow"/>
<meta name="robots" content="noindex,nofollow"/>
<meta name="keywords" content="documentation,2.0,configvhost"/>
<link rel="search" type="application/opensearchdescription+xml" href="lib/exe/opensearch.html" title="LemonLDAP::NG"/>
<link rel="start" href="configvhost.html"/>
......@@ -368,11 +368,11 @@ server {
<div class="level2">
<p>
An apache virtual host protected by LemonLDAP::NG Handler must be registered in LemonLDAP::NG configuration.
A virtual host protected by LemonLDAP::NG Handler must be registered in LemonLDAP::NG configuration.
</p>
<p>
To do this, use the Manager, and go in <code>Virtual Hosts</code> branch. You can add, delete or modify a virtual host here.
To do this, use the Manager, and go in <code>Virtual Hosts</code> branch. You can add, delete or modify a virtual host here. Enter the exact virtual host name (for example <code>test.example.com</code>) or use a wildcard (for example <code>*.example.com</code>).
</p>
<p>
......@@ -390,7 +390,7 @@ A virtual host contains:
</ul>
</div>
<!-- EDIT9 SECTION "LemonLDAP::NG configuration" [7862-8349] -->
<!-- EDIT9 SECTION "LemonLDAP::NG configuration" [7862-8461] -->
<h3 class="sectionedit10" id="access_rules_and_http_headers">Access rules and HTTP headers</h3>
<div class="level3">
......@@ -399,7 +399,7 @@ See <strong><a href="writingrulesand_headers.html" class="wikilink1" title="docu
</p>
</div>
<!-- EDIT10 SECTION "Access rules and HTTP headers" [8350-8542] -->
<!-- EDIT10 SECTION "Access rules and HTTP headers" [8462-8654] -->
<h3 class="sectionedit11" id="post_data">POST data</h3>
<div class="level3">
......@@ -408,7 +408,7 @@ See <strong><a href="formreplay.html" class="wikilink1" title="documentation:2.0
</p>
</div>
<!-- EDIT11 SECTION "POST data" [8543-8677] -->
<!-- EDIT11 SECTION "POST data" [8655-8789] -->
<h3 class="sectionedit12" id="options">Options</h3>
<div class="level3">
......@@ -429,6 +429,6 @@ These options are used to build redirection <abbr title="Uniform Resource Locato
</p>
</div>
<!-- EDIT12 SECTION "Options" [8678-] --></div>
<!-- EDIT12 SECTION "Options" [8790-] --></div>
</body>
</html>
......@@ -54,8 +54,8 @@
<ul class="toc">
<li class="level2"><div class="li"><a href="#declare_module_in_handler_server">Declare module in handler server</a></div>
<ul class="toc">
<li class="level3"><div class="li"><a href="#apache">Apache</a></div></li>
<li class="level3"><div class="li"><a href="#fastcgi_server_nginx">FastCGI server (Nginx)</a></div></li>
<li class="level3"><div class="li"><a href="#new_method">New method</a></div></li>
<li class="level3"><div class="li"><a href="#old_method">Old method</a></div></li>
</ul>
</li>
<li class="level2"><div class="li"><a href="#declare_custom_functions">Declare custom functions</a></div></li>
......@@ -106,9 +106,28 @@ Create your Perl module with custom functions. You can name your module as you w
</div>
<h4 id="apache">Apache</h4>
<h4 id="new_method">New method</h4>
<div class="level4">
<p>
Just declare files or Perl module that must be loaded:
</p>
<pre class="code file :ini"><span class="re0"><span class="br0">&#91;</span>all<span class="br0">&#93;</span></span>
<span class="re1">require</span> <span class="sy0">=</span><span class="re2"> /path/to/functions.pl, /path/to/func2.pm</span>
# OR
<span class="re1">require</span> <span class="sy0">=</span><span class="re2"> My::Func1, My::Func2</span></pre>
</div>
<h4 id="old_method">Old method</h4>
<div class="level4">
<div class="notewarning">This method is available but unusable by Portal under Apache. So if your rule may be used by the menu, use the new method.
</div>
</div>
<h5 id="apache">Apache</h5>
<div class="level5">
<p>
Your module has to be loaded by Apache (for example after Handler load):
</p>
......@@ -119,8 +138,8 @@ PerlOptions +GlobalRequest</pre>
</div>
<h4 id="fastcgi_server_nginx">FastCGI server (Nginx)</h4>
<div class="level4">
<h5 id="fastcgi_server_nginx">FastCGI server (Nginx)</h5>
<div class="level5">
<p>
You&#039;ve just to incicate to <a href="fastcgiserver.html" class="wikilink1" title="documentation:2.0:fastcgiserver">LLNG FastCGI server</a> the file to read using either <code>-f</code> option or <code>CUSTOM_FUNCTIONS_FILE</code> environment variable. Using packages, you just have to modify your <code>/etc/default/llng-fastcgi-server</code> (or <code>/etc/default/lemonldap-ng-fastcgi-server</code>) file:
......@@ -142,7 +161,7 @@ GROUP=www-data
CUSTOM_FUNCTIONS_FILE=/root/SSOExtensions.pm</pre>
</div>
<!-- EDIT4 SECTION "Declare module in handler server" [609-1543] -->
<!-- EDIT4 SECTION "Declare module in handler server" [609-1892] -->
<h3 class="sectionedit5" id="declare_custom_functions">Declare custom functions</h3>
<div class="level3">
......@@ -153,7 +172,7 @@ Go in Manager, <code>General Parameters</code> » <code>Advanced Parameters</cod
<div class="noteimportant">If your function is not compliant with <a href="safejail.html" class="wikilink1" title="documentation:2.0:safejail">Safe jail</a>, you will need to disable the jail.
</div>
</div>
<!-- EDIT5 SECTION "Declare custom functions" [1544-1840] -->
<!-- EDIT5 SECTION "Declare custom functions" [1893-2189] -->
<h2 class="sectionedit6" id="use_it">Use it</h2>
<div class="level2">
......@@ -163,6 +182,6 @@ You can now use your function in a macro, an header or an access rule, for examp
<pre class="code">Custom-Header =&gt; function1( $uid, $ENV{REMOTE_ADDR} )</pre>
</div>
<!-- EDIT6 SECTION "Use it" [1841-] --></div>
<!-- EDIT6 SECTION "Use it" [2190-] --></div>
</body>
</html>
......@@ -47,6 +47,11 @@
<h1 class="sectionedit1" id="convert_http_header_into_environment_variable">Convert HTTP header into environment variable</h1>
<div class="level1">
</div>
<!-- EDIT1 SECTION "Convert HTTP header into environment variable" [1-61] -->
<h2 class="sectionedit2" id="apache">Apache</h2>
<div class="level2">
<p>
Using <abbr title="LemonLDAP::NG">LL::NG</abbr> in reverse proxy mode, you will not have the <code>REMOTE_USER</code> environment variable set. Indeed, this variable is set by the Handler on the physical server hosting the Handler, and not on other servers where the Handler is not installed.
</p>
......@@ -95,6 +100,17 @@ Of course, you need to <a href="passwordstore.html" class="wikilink1" title="doc
</div>
</div>
<!-- EDIT2 SECTION "Apache" [62-1756] -->
<h2 class="sectionedit3" id="nginx">Nginx</h2>
<div class="level2">
<p>
Nginx doesn&#039;t launch directly PHP pages (or other languages): it dials with FastCGI servers (like php-fpm). As you can see in examples, it&#039;s easy to map a LLNG header to a fastcgi param. Example:
</p>
<pre class="code file nginx">auth_request_set $authuser $upstream_http_auth_user;
fastcgi_param HTTP_MYVAR $authuser;</pre>
</div>
<!-- EDIT3 SECTION "Nginx" [1757-] --></div>
</body>
</html>
......@@ -60,7 +60,7 @@
<li class="level1"><div class="li"><a href="#package_gpg_signature">Package GPG signature</a></div></li>
<li class="level1"><div class="li"><a href="#install_packages">Install packages</a></div>
<ul class="toc">
<li class="level2"><div class="li"><a href="#with_aptitude">With aptitude</a></div></li>
<li class="level2"><div class="li"><a href="#with_apt">With apt</a></div></li>
<li class="level2"><div class="li"><a href="#with_dpkg">With dpkg</a></div></li>
</ul>
</li>
......@@ -148,12 +148,12 @@ deb-src https://lemonldap-ng.org/deb stable main</pre>
</div>
<p>
Run this to update packages cache:
You may need to install this package to access HTTPS repositories:
</p>
<pre class="code">apt-get update</pre>
<pre class="code">apt install apt-transport-https</pre>
</div>
<!-- EDIT5 SECTION "LL::NG repository" [1000-1595] -->
<!-- EDIT5 SECTION "LL::NG repository" [1000-1644] -->
<h3 class="sectionedit6" id="manual_download">Manual download</h3>
<div class="level3">
......@@ -162,7 +162,7 @@ Packages are available on the <a href="download.html" class="wikilink1" title="d
</p>
</div>
<!-- EDIT6 SECTION "Manual download" [1596-1682] -->
<!-- EDIT6 SECTION "Manual download" [1645-1731] -->
<h2 class="sectionedit7" id="package_gpg_signature">Package GPG signature</h2>
<div class="level2">
......@@ -173,21 +173,26 @@ The GPG key can be downloaded here: <a href="rpm-gpg-key-ow2" class="media media
<p>
Install it to trust packages:
</p>
<pre class="code">apt-key add rpm-gpg-key-ow2</pre>
<pre class="code">wget -O - https://lemonldap-ng.org/_media/rpm-gpg-key-ow2 | apt-key add -</pre>
<p>
Update cache:
</p>
<pre class="code">apt update</pre>
</div>
<!-- EDIT7 SECTION "Package GPG signature" [1683-1851] -->
<!-- EDIT7 SECTION "Package GPG signature" [1732-1986] -->
<h2 class="sectionedit8" id="install_packages">Install packages</h2>
<div class="level2">
</div>
<!-- EDIT8 SECTION "Install packages" [1852-1881] -->
<h3 class="sectionedit9" id="with_aptitude">With aptitude</h3>
<!-- EDIT8 SECTION "Install packages" [1987-2016] -->
<h3 class="sectionedit9" id="with_apt">With apt</h3>
<div class="level3">
<pre class="code">aptitude install lemonldap-ng</pre>
<pre class="code">apt install lemonldap-ng</pre>
</div>
<!-- EDIT9 SECTION "With aptitude" [1882-1952] -->
<!-- EDIT9 SECTION "With apt" [2017-2077] -->
<h3 class="sectionedit10" id="with_dpkg">With dpkg</h3>
<div class="level3">
......@@ -201,12 +206,12 @@ Then:
<pre class="code">dpkg -i liblemonldap-ng-* lemonldap-ng*</pre>
</div>
<!-- EDIT10 SECTION "With dpkg" [1953-2101] -->
<!-- EDIT10 SECTION "With dpkg" [2078-2226] -->
<h2 class="sectionedit11" id="first_configuration_steps">First configuration steps</h2>
<div class="level2">
</div>
<!-- EDIT11 SECTION "First configuration steps" [2102-2140] -->
<!-- EDIT11 SECTION "First configuration steps" [2227-2265] -->
<h3 class="sectionedit12" id="change_default_dns_domain">Change default DNS domain</h3>
<div class="level3">
......@@ -216,7 +221,7 @@ By default, <abbr title="Domain Name System">DNS</abbr> domain is <code>example.
<pre class="code shell">sed -i 's/example\.com/ow2.org/g' /etc/lemonldap-ng/* /var/lib/lemonldap-ng/conf/lmConf-1.json /var/lib/lemonldap-ng/test/index.pl</pre>
</div>
<!-- EDIT12 SECTION "Change default DNS domain" [2141-2460] -->
<!-- EDIT12 SECTION "Change default DNS domain" [2266-2585] -->
<h3 class="sectionedit13" id="reload_virtual_host">Reload virtual host</h3>
<div class="level3">
......@@ -227,7 +232,7 @@ To allow the manager to reload the configuration, register the reload virtual ho
<div class="notetip">Adapt the reload virtual host name to the domain you configured.
</div>
</div>
<!-- EDIT13 SECTION "Reload virtual host" [2461-2762] -->
<!-- EDIT13 SECTION "Reload virtual host" [2586-2887] -->
<h3 class="sectionedit14" id="upgrade">Upgrade</h3>
<div class="level3">
......@@ -236,7 +241,7 @@ If you upgraded <abbr title="LemonLDAP::NG">LL::NG</abbr>, check all <a href="up
</p>
</div>
<!-- EDIT14 SECTION "Upgrade" [2763-2843] -->
<!-- EDIT14 SECTION "Upgrade" [2888-2968] -->
<h3 class="sectionedit15" id="dns">DNS</h3>
<div class="level3">
......@@ -252,7 +257,7 @@ Follow the <a href="start.html#configuration" class="wikilink1" title="documenta
</p>
</div>
<!-- EDIT15 SECTION "DNS" [2844-3116] -->
<!-- EDIT15 SECTION "DNS" [2969-3241] -->
<h2 class="sectionedit16" id="file_location">File location</h2>
<div class="level2">
<ul>
......@@ -273,7 +278,7 @@ Follow the <a href="start.html#configuration" class="wikilink1" title="documenta
</ul>
</div>
<!-- EDIT16 SECTION "File location" [3117-3653] -->
<!-- EDIT16 SECTION "File location" [3242-3778] -->
<h2 class="sectionedit17" id="build_your_packages">Build your packages</h2>
<div class="level2">
......@@ -285,6 +290,6 @@ cd lemonldap-ng-*
make debian-packages</pre>
</div>
<!-- EDIT17 SECTION "Build your packages" [3654-] --></div>
<!-- EDIT17 SECTION "Build your packages" [3779-] --></div>
</body>
</html>
......@@ -48,7 +48,7 @@
<div class="level1">
<p>
Since version 2.0, a Node.js handler is available on <a href="https://github.com/LemonLDAPNG/node-lemonldap-ng-handler" class="urlextern" title="https://github.com/LemonLDAPNG/node-lemonldap-ng-handler" rel="nofollow">GitHub</a>.
Since version 2.0, an experimental Node.js handler is available on <a href="https://github.com/LemonLDAPNG/node-lemonldap-ng-handler" class="urlextern" title="https://github.com/LemonLDAPNG/node-lemonldap-ng-handler" rel="nofollow">GitHub</a>.
</p>
<p>
......
......@@ -132,10 +132,16 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</li>
<li class="level1"><div class="li"> Digest::SHA</div>
</li>
<li class="level1"><div class="li"> Email::Sender</div>
</li>
<li class="level1"><div class="li"> GD::SecurityImage</div>
</li>
<li class="level1"><div class="li"> <abbr title="HyperText Markup Language">HTML</abbr>::Template</div>
</li>
<li class="level1"><div class="li"> HTTP::Headers</div>
</li>
<li class="level1"><div class="li"> HTTP::Request</div>
</li>
<li class="level1"><div class="li"> IO::String</div>
</li>
<li class="level1"><div class="li"> JSON</div>
......@@ -158,18 +164,20 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</li>
<li class="level1"><div class="li"> Regexp::Common</div>
</li>
<li class="level1"><div class="li"> SOAP::Lite</div>
<li class="level1"><div class="li"> SOAP::Lite <em>(optional)</em></div>
</li>
<li class="level1"><div class="li"> String::Random</div>
</li>
<li class="level1"><div class="li"> Unicode::String</div>
</li>
<li class="level1"><div class="li"> <abbr title="Uniform Resource Identifier">URI</abbr></div>
</li>
<li class="level1"><div class="li"> YAML</div>
<li class="level1"><div class="li"> <abbr title="Uniform Resource Identifier">URI</abbr>::Escape</div>
</li>
</ul>
</div>
<!-- EDIT4 SECTION "Core" [666-1194] -->
<!-- EDIT4 SECTION "Core" [666-1289] -->
<h3 class="sectionedit5" id="deprecated_features">Deprecated features</h3>
<div class="level3">
<ul>
......@@ -192,7 +200,7 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</ul>
</div>
<!-- EDIT5 SECTION "Deprecated features" [1195-1363] -->
<!-- EDIT5 SECTION "Deprecated features" [1290-1458] -->
<h3 class="sectionedit6" id="saml2">SAML2</h3>
<div class="level3">
<ul>
......@@ -205,7 +213,7 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</ul>
</div>
<!-- EDIT6 SECTION "SAML2" [1364-1449] -->
<!-- EDIT6 SECTION "SAML2" [1459-1544] -->
<h3 class="sectionedit7" id="specific_authentication_backends">Specific authentication backends</h3>
<div class="level3">
<ul>
......@@ -248,7 +256,7 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</ul>
</div>
<!-- EDIT7 SECTION "Specific authentication backends" [1450-1678] -->
<!-- EDIT7 SECTION "Specific authentication backends" [1545-1773] -->
<h3 class="sectionedit8" id="smtpreset_password_by_mail">SMTP / Reset password by mail</h3>
<div class="level3">
<ul>
......@@ -259,7 +267,7 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</ul>
</div>
<!-- EDIT8 SECTION "SMTP / Reset password by mail" [1679-1757] -->
<!-- EDIT8 SECTION "SMTP / Reset password by mail" [1774-1852] -->
<h3 class="sectionedit9" id="unit_tests">Unit tests</h3>
<div class="level3">
<ul>
......@@ -267,10 +275,12 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</li>
<li class="level1"><div class="li"> Test::MockObject</div>
</li>
<li class="level1"><div class="li"> YAML</div>
</li>
</ul>
</div>
<!-- EDIT9 SECTION "Unit tests" [1758-1815] -->
<!-- EDIT9 SECTION "Unit tests" [1853-1919] -->
<h2 class="sectionedit10" id="other">Other</h2>
<div class="level2">
<ul>
......@@ -281,12 +291,12 @@ For Apache2, you can use all workers mpm-worker, mpm-prefork and mpm-event. Mpm-
</ul>
</div>
<!-- EDIT10 SECTION "Other" [1816-2032] -->
<!-- EDIT10 SECTION "Other" [1920-2136] -->
<h2 class="sectionedit11" id="install_dependencies_on_your_system">Install dependencies on your system</h2>
<div class="level2">
</div>
<!-- EDIT11 SECTION "Install dependencies on your system" [2033-2082] -->
<!-- EDIT11 SECTION "Install dependencies on your system" [2137-2186] -->
<h3 class="sectionedit12" id="apt-get">APT-GET</h3>
<div class="level3">
......@@ -306,7 +316,7 @@ For Nginx:
<pre class="code">apt install nginx nginx-extras</pre>
</div>
<!-- EDIT12 SECTION "APT-GET" [2083-2845] -->
<!-- EDIT12 SECTION "APT-GET" [2187-2949] -->
<h3 class="sectionedit13" id="yum">YUM</h3>
<div class="level3">
<div class="notetip">You need <a href="http://fedoraproject.org/wiki/EPEL/" class="urlextern" title="http://fedoraproject.org/wiki/EPEL/" rel="nofollow">EPEL</a> repository. See how you can activate this repository: <a href="http://fedoraproject.org/wiki/EPEL/FAQ#howtouse" class="urlextern" title="http://fedoraproject.org/wiki/EPEL/FAQ#howtouse" rel="nofollow">http://fedoraproject.org/wiki/EPEL/FAQ#howtouse</a>
......@@ -328,6 +338,6 @@ For Nginx:
<div class="noteimportant">As you need a recent version of Nginx, the best is to install <a href="https://www.nginx.com/resources/wiki/start/topics/tutorials/install/#official-red-hat-centos-packages" class="urlextern" title="https://www.nginx.com/resources/wiki/start/topics/tutorials/install/#official-red-hat-centos-packages" rel="nofollow">Nginx official packages</a>.
</div>
</div>
<!-- EDIT13 SECTION "YUM" [2846-] --></div>
<!-- EDIT13 SECTION "YUM" [2950-] --></div>
</body>
</html>
......@@ -90,7 +90,7 @@
<form action="/start" accept-charset="utf-8" class="search" id="dw__search" method="get" role="search"><div class="no"><input type="hidden" name="do" value="search" /><input type="text" id="qsearch__in" accesskey="f" name="id" class="edit" title="[F]" /><input type="submit" value="Search" class="button" title="Search" /><div id="qsearch__out" class="ajax_qsearch JSpopup"></div></div></form>
<ul class="nav navbar-nav">
<li><a href="/documentation/2.0/restserverplugin?do=login&amp;sectok=d4fe5585dec923939be5e0ea38da2802" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
<li><a href="/documentation/2.0/restserverplugin?do=login&amp;sectok=fa0cc1a85fc0d1baf3a61bfee1cba736" class="action login" rel="nofollow" title="Login"><i class="glyphicon glyphicon-log-in"></i> Login</a></li> </ul>
</div>
......@@ -204,7 +204,7 @@ You&#039;ve followed a link to a topic that doesn&#039;t exist yet. If permissio
</div><!-- /site -->
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Arestserverplugin&amp;1505393501" width="2" height="1" alt="" /></div>
<div class="no"><img src="/lib/exe/indexer.php?id=documentation%3A2.0%3Arestserverplugin&amp;1508842926" width="2" height="1" alt="" /></div>
<div id="screen__mode" class="no">
<span class="visible-xs"></span>
<span class="visible-sm"></span>
......
......@@ -82,6 +82,7 @@
<li class="level1"><div class="li"><a href="#advanced_features">Advanced features</a></div></li>
<li class="level1"><div class="li"><a href="#mini_howtos">Mini howtos</a></div></li>
<li class="level1"><div class="li"><a href="#exploitation">Exploitation</a></div></li>
<li class="level1"><div class="li"><a href="#bug_report">Bug report</a></div></li>
<li class="level1"><div class="li"><a href="#developer_corner">Developer corner</a></div></li>
</ul>
</div>
......@@ -428,7 +429,7 @@ Handlers are software control agents to install on your web servers <em>(Nginx,
<td class="col0"> <a href="securetoken.html" class="wikilink1" title="documentation:2.0:securetoken">Secure Token</a> </td><td class="col1 centeralign"></td><td class="col2 centeralign"></td><td class="col3 leftalign"> </td><td class="col4"> Designed to secure dialog between a LLNG reverse-proxy and a remote app </td><td class="col5"></td>
</tr>
<tr class="row6 roweven">
<td class="col0"> <a href="servertoserver.html" class="wikilink1" title="documentation:2.0:servertoserver">Service Token</a> <em>(Server-to-Server)</em> <a href="new.png" class="media" title="documentation:2.0:new.png"><img src="new.edf565b3f89a0ad56df9a5e7a31a6de8.png" class="media" alt="" width="35" /></a> </td><td class="col1 centeralign"></td><td class="col2 centeralign"></td><td class="col3 leftalign"> </td><td class="col4"> Designed to permits underlying requests <em>(<abbr title="Application Programming Interface">API</abbr>-Based Infrastructure)</em> </td><td class="col5"></td>
<td class="col0"> <a href="servertoserver.html" class="wikilink1" title="documentation:2.0:servertoserver">Service Token</a> <a href="new.png" class="media" title="documentation:2.0:new.png"><img src="new.edf565b3f89a0ad56df9a5e7a31a6de8.png" class="media" alt="" width="35" /></a> <em>(Server-to-Server)</em> </td><td class="col1 centeralign"></td><td class="col2 centeralign"></td><td class="col3 leftalign"> </td><td class="col4"> Designed to permits underlying requests <em>(<abbr title="Application Programming Interface">API</abbr>-Based Infrastructure)</em> </td><td class="col5"></td>
</tr>
<tr class="row7 rowodd">
<td class="col0"> <a href="applications/zimbra.html" class="wikilink1" title="documentation:2.0:applications:zimbra">Zimbra PreAuth</a> </td><td class="col1 centeralign"></td><td class="col2 centeralign"></td><td class="col3 leftalign"> </td><td class="col4 leftalign"> </td>
......@@ -782,7 +783,16 @@ Sessions are stored using <a href="http://search.cpan.org/perldoc?Apache::Sessio
</div>
<!-- EDIT20 SECTION "Exploitation" [13962-14382] -->
<h2 class="sectionedit21" id="developer_corner">Developer corner</h2>
<h2 class="sectionedit21" id="bug_report">Bug report</h2>
<div class="level2">
<p>
See <a href="bugreport.html" class="wikilink1" title="bugreport">How to report a bug</a>.
</p>
</div>
<!-- EDIT21 SECTION "Bug report" [14383-14447] -->
<h2 class="sectionedit22" id="developer_corner">Developer corner</h2>
<div class="level2">
<p>
......@@ -846,6 +856,6 @@ To translate this doc (Manager help):
</ul>
</div>