113 lines
6.3 KiB
HTML
113 lines
6.3 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<html lang="fr" dir="ltr">
|
||
|
<head>
|
||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||
|
<meta charset="utf-8" />
|
||
|
<title>documentation:2.0:redirections</title>
|
||
|
<meta name="generator" content="DokuWiki"/>
|
||
|
<meta name="robots" content="index,follow"/>
|
||
|
<meta name="keywords" content="documentation,2.0,redirections"/>
|
||
|
<link rel="search" type="application/opensearchdescription+xml" href="lib/exe/opensearch.html" title="LemonLDAP::NG"/>
|
||
|
<link rel="start" href="redirections.html"/>
|
||
|
<link rel="contents" href="redirections.html" title="Sitemap"/>
|
||
|
<link rel="stylesheet" type="text/css" href="lib/exe/css.php.t.bootstrap3.css"/>
|
||
|
<link rel="stylesheet" type="text/css" href="/static/bwr/bootstrap/dist/css/bootstrap.min.css"/>
|
||
|
<script type="text/javascript">/*<![CDATA[*/var NS='documentation:2.0';var JSINFO = {"id":"documentation:2.0:redirections","namespace":"documentation:2.0"};
|
||
|
/*!]]>*/</script>
|
||
|
<script type="text/javascript" charset="utf-8" src="lib/exe/js.php.t.bootstrap3.js"></script>
|
||
|
</head>
|
||
|
<body>
|
||
|
<div class="dokuwiki export container">
|
||
|
|
||
|
<h1 class="sectionedit1" id="handler_redirections">Redirections des agents</h1>
|
||
|
<div class="level1">
|
||
|
<div class="noteclassic">Lorsqu'un utilisateur accède à un agent sans cookie, il est redirigé vers le portail, et l'<abbr title="Uniform Resource Locator">URL</abbr> cible est encodée dans l'<abbr title="Uniform Resource Locator">URL</abbr> de redirection (pour rediriger l'utilisateur après authentification).
|
||
|
</div>
|
||
|
</div><!-- EDIT1 SECTION "Handler Redirections" [1-223] -->
|
||
|
|
||
|
<h2 class="sectionedit2" id="protocol_and_port">Protocole et port</h2>
|
||
|
<div class="level2">
|
||
|
|
||
|
<p>
|
||
|
Pour encoder l'<abbr title="Uniform Resource Locator">URL</abbr> de redirection, l'agent utilise des variables d'environnement Apache et des paramètres de configuration :
|
||
|
</p>
|
||
|
<ul>
|
||
|
<li class="level1"><div class="li"> <strong>HTTPS</strong> : utilise https comme protocole</div>
|
||
|
</li>
|
||
|
<li class="level1"><div class="li"> <strong>Port</strong> : port de l'application (par défaut, 80 pour http, 443 pour https)</div>
|
||
|
</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>
|
||
|
Cesparamètres peuvent être configurés dans le manager, dans <code>Paramètres généraux</code> > <code>Paramètres avancés</code> > <code>Redirections des agents</code>.
|
||
|
</p>
|
||
|
<div class="notetip">Ces paramètres peuvent être surchargés dans chaque hôte virtuel, voir la <a href="configvhost.html" class="wikilink1" title="documentation:2.0:configvhost">gestion des hôtes virtuels</a>.
|
||
|
</div>
|
||
|
</div><!-- EDIT2 SECTION "Protocol and port" [224-731] -->
|
||
|
|
||
|
<h2 class="sectionedit3" id="forbidden_and_server_error">Accès interdits et erreurs du serveur</h2>
|
||
|
<div class="level2">
|
||
|
|
||
|
<p>
|
||
|
Les agents utilisent le code d'erreur d'Apache dans les cas suivants :
|
||
|
</p>
|
||
|
<ul>
|
||
|
<li class="level1"><div class="li"> L'utilisateur ne dispose pas de droits d'accès : FORBIDDEN (403)</div>
|
||
|
</li>
|
||
|
<li class="level1"><div class="li"> Une erreur est survenue côté serveur : SERVER_ERROR (500)</div>
|
||
|
</li>
|
||
|
<li class="level1"><div class="li"> The application is in maintenance: HTTP_SERVICE_UNAVAILABLE (503)</div>
|
||
|
</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>
|
||
|
|
||
|
These errors can be catch trough Apache <code>ErrorDocument</code> directive or Nginx <code>error_page</code> directive, to redirect user on a specific page:
|
||
|
|
||
|
</p>
|
||
|
<pre class="code file apache"><span class="co1"># Apache: Common error page and security parameters</span>
|
||
|
<span class="kw1">ErrorDocument</span> <span class="nu0">403</span> http://auth.example.com/?lmError=<span class="nu0">403</span>
|
||
|
<span class="kw1">ErrorDocument</span> <span class="nu0">500</span> http://auth.example.com/?lmError=<span class="nu0">500</span>
|
||
|
<span class="kw1">ErrorDocument</span> <span class="nu0">503</span> http://auth.example.com/?lmError=<span class="nu0">503</span></pre>
|
||
|
<pre class="code file nginx"># Nginx: Common error page and security parameters
|
||
|
error_page 403 http://auth.example.com/?lmError=403;
|
||
|
error_page 500 http://auth.example.com/?lmError=500;
|
||
|
error_page 503 http://auth.example.com/?lmError=503;</pre>
|
||
|
|
||
|
<p>
|
||
|
|
||
|
It is also possible to redirect the user without using <code>ErrorDocument</code>: the Handler will not returnV 403, 500, 503 code, but code 302 (REDIRECT).
|
||
|
|
||
|
</p>
|
||
|
|
||
|
<p>
|
||
|
L'utilisateur sera redirigé vers l'<abbr title="Uniform Resource Locator">URL</abbr> du portail avec une erreur dans le paramètre <code>lmError</code> de l'<abbr title="Uniform Resource Locator">URL</abbr>.
|
||
|
</p>
|
||
|
|
||
|
<p>
|
||
|
Ces paramètres peuvent être configurés dans le manager, dans <code>Paramètres généraux</code> > <code>Paramètres avancés</code> > <code>Redirections des agents</code>:
|
||
|
</p>
|
||
|
<ul>
|
||
|
<li class="level1"><div class="li"> <strong>Redirections pour les accès interdits</strong> : utilise 302 au lieu de 403</div>
|
||
|
</li>
|
||
|
<li class="level1"><div class="li"> <strong>Redirection pour les erreurs</strong> : utilise 302 au lieu de 500 ou 503</div>
|
||
|
</li>
|
||
|
</ul>
|
||
|
|
||
|
</div><!-- EDIT3 SECTION "Forbidden and Server error" [732-2103] -->
|
||
|
|
||
|
<h1 class="sectionedit4" id="portal_redirections">Redirections du portail</h1>
|
||
|
<div class="level1">
|
||
|
<div class="noteclassic">Si un utilisateur est redirigé depuis un agent vers le portail pour s'authentifier et s'il est déjà authentifié, le portail le redirige vers l'<abbr title="Uniform Resource Locator">URL</abbr> de redirection.
|
||
|
</div><ul>
|
||
|
<li class="level1"><div class="li"> <strong>Redirection message</strong>: The redirection from portal can be done either with code 303 (See Other), or with a JavaScript redirection. Souvent la redirection prend du temps car c'est le premier accès de l'utilisateur à l'application protégée et il faut créer la session applicative ; la redirection JavaScript améliore le ressenti utilisateur en l'informant que l'authentification est réussie et en évitant qu'il clique de nouveau sur le bouton.</div>
|
||
|
</li>
|
||
|
<li class="level1"><div class="li"> <strong>Keep redirections for Ajax</strong>: By default, when an Ajax request is done on the portal for an unauthenticated user (after a redirection done by the handler), a 401 code will be sentwith a <code>WWW-Authenticate</code> header containing “<abbr title="Authentification unique (Single Sign On)">SSO</abbr> <portal-<abbr title="Uniform Resource Locator">URL</abbr>>”. Set this option to 1 to keep the old behavior (return of <abbr title="HyperText Markup Language">HTML</abbr> code).</div>
|
||
|
</li>
|
||
|
</ul>
|
||
|
|
||
|
</div><!-- EDIT4 SECTION "Portal Redirections" [2104-] -->
|
||
|
</div>
|
||
|
</body>
|
||
|
</html>
|