Comment modifier les droits d'accès de son espace de publication.

Table des matières

I. Introduction

La DISI propose au personnel de Télécom SudParis et Télécom Ecole de Management des espaces de publication :

Sur le campus, nous avons trois types de visibilité :

Avant de continuer la lecture de ce document, je vous conseille de lire le document technique de Jehan Procaccia : Publication de pages web individuelles, cours et/ou publique (ou sur l'infopédia : Principe des webspaces) qui explique comment gérer ses espaces de publication.

II. Principe de fonctionnement

Il est possible de modifier la visibilité de l'intégralité de l'espace ou d'une partie à l'aide d'un fichier de configuration .htaccess.

Ce fichier contient des directives que le serveur web devra interpréter. Il est ainsi possible de personnaliser son espace de publication. Dans le cas présent, nous allons travailler sur ce fichier pour pouvoir modifier les droits d'accès.

Pour restreindre l'accès à un répertoire, il faut y placer le fichier (soit à la racine du site, soit dans une sous-arborescence). La restriction sera alors prise en compte pour tous les fichiers et sous-répertoires.

Par défaut, ce fichier n'existe pas, vous devez le créer.

Attention :

  1. Si vous tentez de créer ce fichier directement dans windows (sans passer par un éditeur), le système vous signalera que "vous devez spécifier un nom de fichier". En effet, windows n'accepte pas qu'un fichier commence par un point. Dans ce cas là, créez un fichier commençant par une lettre (a.htaccess, par exemple). Vous renommerez ce fichier après l'avoir transféré sur le serveur de publication.
  2. Si vous utilisez le bloc note de windows pour éditer votre fichier, sélectionnez "Tous les fichiers" dans la liste Type lors de l'enregistrement. Si vous ne le faites pas, le bloc note rajoutera l'extension .txt à votre fichier, dans ce cas retirez l'extension .txt dans windows ou une fois le fichier transféré sur le serveur.

a. IPv4 et IPv6

Depuis quelques années, 2 types d'adresses IP cohabitent sur nos serveurs : IPv4 (157.159.10.107) et IPv6 (2001:660:3203:100:218:51ff:fe1c:ca29/64).

Pour la gestion d'accès par réseau et sous-réseau, il est nécessaire de définir les accès ou restriction pour les 2 types d'adresse.

III. Quelques exemples

Les exemples qui suivent vont du cas le plus simple (tout ouvrir) au cas le plus complexe (limiter l'accès à certains utilisateurs depuis un sous-réseau particulier). A chaque étape, des lignes seront rajoutées au fichier (et certaines modifiées ou supprimées).

Les lignes ajoutées sont en gras et rouge.

Les lignes modifiées sont en gras et orange.

Les lignes concernant les adresses IPv6 sont en italic.

a. Ouvrir sur internet l'espace des ressources pédagogiques

Par défaut cet espace n'est accessible que depuis le campus ou depuis l'extérieur après une authentification (c'est la visibilité extranet).

Voici le contenu du fichier .htaccess :

<Limit GET POST>
Allow from all
</Limit>

b. Restreindre l'accès au campus uniquement

Voici le contenu du fichier .htaccess :

<Limit GET POST>
Order Allow,Deny
Allow from 157.159
Allow from 2001:660:3203::/48
</Limit>

c. Restreindre l'accès à une sous-partie du réseau du campus

Soit vous spécifiez les sous-réseaux autorisés :

<Limit GET POST>
Order Allow,Deny
Allow from 157.159.190
Allow from 157.159.150
Allow from 2001:660:3203:1900::/64
Allow from 2001:660:3203:1500::/64
</Limit>

Soit vous ouvrez à tout le campus et interdisez à certains sous-réseaux :

<Limit GET POST>
Order Allow,Deny
Allow from 157.159
Allow from 2001:660:3203::/48
Deny from 157.159.140
Deny from 157.159.15
Deny from 2001:660:3203:1400::/64
Deny from 2001:660:3203:150::/64
</Limit>

d. Forcer l'authentification avec un compte LDAP

Dans ce cas, seules les personnes authentifiées pourront accéder à votre espace, que se soit depuis l'extérieur ou depuis le campus.

<Limit GET POST>
Order Allow,Deny
AuthType CAS
AuthName "INT auth"
Require valid-user
Satisfy any
</Limit>

e. Limiter à certains visiteurs l'accès à ses pages

Une fois l'authentification forcée, il est possible d'identifier le visiteur et de lui donner ou pas l'accès aux pages.

Il faut pour cela remplacer une ligne dans le précédent exemple en ajoutant la liste des logins (il s'agit de son login DISI/CAS de messagerie) autorisés à accéder aux pages.

<Limit GET POST>
Order Allow,Deny
AuthType CAS
AuthName "INT auth"
Require user login1 login2 login3
Satisfy any
</Limit>

f. Passer à un accès de type extranet

Si vous désirez restreindre l'accès de votres espace public au campus uniquement ou après une authentification lorsque le visiteur vient de l'extérieur, voici le contenu du fichier :

<Limit GET POST>
Order Allow,Deny
AuthType CAS
AuthName "INT auth"
Allow from 157.159
Allow from 2001:660:3203::/48
Require valid-user
Satisfy any
</Limit>

En spécifiant les bons sous-réseaux, il vous est possible de forcer l'authentification si l'internaute vient du réseau wifi du campus (157.159.140), des salles de TP (157.159.15 et 157.159.16) ou de la MAISEL (de 157.159.40 à 157.159.47) :

<Limit GET POST>
Order Allow,Deny
AuthType CAS
AuthName "INT auth"
Allow from 157.159
Deny from 157.159.140
Deny from 157.159.15
Deny from 157.159.16
Deny from 157.159.40
Deny from 157.159.41
Deny from 157.159.42
Deny from 157.159.43
Deny from 157.159.44
Deny from 157.159.45
Deny from 157.159.46
Deny from 157.159.47
Allow from 2001:660:3203::/48
Deny from 2001:660:3203:1400::/64
Deny from 2001:660:3203:150::/64
Deny from 2001:660:3203:160::/64
Deny from 2001:660:3203:400::/64
Deny from 2001:660:3203:410::/64
Deny from 2001:660:3203:420::/64
Deny from 2001:660:3203:430::/64
Deny from 2001:660:3203:440::/64
Deny from 2001:660:3203:450::/64
Deny from 2001:660:3203:460::/64
Deny from 2001:660:3203:470::/64
Require valid-user
Satisfy any
</Limit>

g. Limiter à certains visiteurs l'accès à ses pages depuis le campus

Dans ce cas, seules certaines personnes pourront accéder aux pages et uniquement depuis le campus.

<Limit GET POST>
Order Allow,Deny
AuthType CAS
AuthName "INT auth"
Allow from 157.159
Allow from 2001:660:3203::/48
Require user login1 login2 login3
Satisfy all
</Limit>

IV. Compléments d'informations

Dans ce document, nous n'avons abordé que le cas spécifique des webspaces de Télécom SudParis et Télécom Ecole de Management. le fichier .htaccess permet d'autres personnalisations (par exemple authentification à partir d'un fichier ou d'une base de données, reconfiguration de certains paramètres du serveur web, ...).

Pour plus de détails vous pouvez contacter Eric Bourhis.

 

Mis à jour le 16/11/2015 par Eric BOURHIS (DISI/CRMP)