Accéder au contenu principal

CONTROL D’ACCES AVEC HTACCESS





L’authentification des utilisateurs permet de les identifier et de leur permettre d’accéder ou pas des ressources données. IL existe plusieurs méthodes de protection de sites web.  Le fichier .htaccess permet entre autre de protéger l’Access à des fichiers ou dossiers du dossier qui le contient.
Les fichiers
Nous utilisons apache 2 sous Debian 6. L’implémentation sous Windows présentes quelques différences. Les fichiers utilisés nomment :
Le fichier .htaccess
Le premier est reconnu par apache comme contenant des configurations.
DIRECTIVES
Voici quelques directives du fichier .htaccess.
AuthUserFile: annonce le fichier contenant les noms d’utilisateur et mot de passe
AuthGroupFile : annonce le fichier décrivant les groupes
AuthName: annonce le titre de la fenêtre  qui apparaîtra a l’utilisateur lors de la demande de mot de passe.
Require : annonce le ou les utilisateurs ou groupes qui ont le droit d’accéder à une ressource
Le fichier .htusers
Il  contient les noms d’utilisateur et le mot de passe correspondant sous la forme
utilisateur1 :motdepasse1 utilisateur2 :motdepasse2 utilisateur3 :motdepasse3 …
Sous linux, l’utilitaire htpasswd, fourni avec  apache permet de générer ce fichier à partir de la ligne de commande.
On peut créer le fichier et y faire une insertion avec la commandehtpasswd -bcm .htusers  ;
Si le fichier existe déjà, on peut ajouter un utilisateur avechtpasswd -bm .htusers
Avec l’option –m, les mots de passe seront haches en md5. Il est possible d’utiliser  plutôt le SHA  avec l’option -s ou aucun chiffrement avec l’option -p.
On peut supprimer un utilisateur avechtpasswd -bmD htusers <="" span="">
Le fichier .htgroups

Il précise les groupes auquel appartiennent les utilisateurs sous la forme
:
:

IMPLEMENTATION
Le fichier .htaccess
#fichier .htaccess pour le répertoire Web /service
AuthUserFile /var/www/org/.htusers
AuthGroupFile /var/www/org/.htgroups
AuthName "Qui va la?!!"
AuthType Basic
require user  Tiiga
require group root
Le fichier .htusers
Tiiga:ZOikXNTzfTL1A
Ali:bA80EMFSXSzzo
Paul:21yNiwn8sfbg6
Le fichier .htgroups
# Fichier de groupe pour projet Web root : Paul
RESULTAT
Nous protégeons les fichiers d’extension html.  Seule peuvent y accéder l’utilisateur  Tiiga et ceux qui sont du groupe root. Ainsi Tiiga peut y accéder à cause de « require user  Tiiga » et Paul peut y accéder car il est membre du groupe root et ce groupe est autorisé avec « require group root ».

Commentaires

Posts les plus consultés de ce blog

Gérer les requêtes USSD sur un MoDem avec les commandes AT

Introduction L'USSD (Universal Structured Service D) est un service des réseaux télécoms defini dans 3GPP TS 02.90 et dans 3GPP TS 23.090. Il permet à un terminal mobile d'effectuer des requetes ou une suite de requete à l'operateur. Il est courament utiliser pour consulter le solde. Dans ce tutoriel nous apprendrons à effectuer des requetes USSD depuis une connection serie avec une modem. Pré requis Pour utiliserons pour ce faire: un modem GSM (Huawei E1552) bien sur avec une carte SIM (AIRTEL Burkina) un ordinateur auquel sera connecte le modem un terminal (minicom) pour dialoger avec le modem depuis l'ordinateur perl, pour encoder et decoder les PDU Demarche Nous allons consulter le solde du compte de l'utilisateur. Pour l'opérateur courant il faut composer le code USSD *160#. connecter le modem Connectez le modem au port USB de l'ordinateur et retrouvez ses port series logiciels. Notre modem créé trois ports series (/dev/t...

Testing crossplane on Digital ocean

  Crossplane brings the management of external resources into kubernetes through kubernetes APIs. This can in some situations be an alternative to other IaC such as terraform.  In the example below, we will create a droplet on DO by applying a kubernetes manifest using kubectl. The exemple suppose the kubernetes cluster in which crossplane will be installed is already up. ```bash kubectl create namespace crossplane-system helm repo add crossplane-stable https://charts.crossplane.io/stable helm repo update # install crossplane helm install crossplane --namespace crossplane-system crossplane-stable/crossplane # install the upjet digital ocean provider cat << EOF | kubectl apply -f - apiVersion: pkg.crossplane.io/v1 kind: Provider metadata: name: provider-upjet-digitalocean spec: package: crossplane-contrib/provider-upjet-digitalocean:v0.3.0 EOF # create the upjet digital ocean provider secret kubectl apply -f - << EOF apiVersion: v1 kind: S...

GIT

  Git is a version control system that is used to track changes to files and manage projects. It is a powerful tool that allows developers to collaborate on projects and manage the source code of their projects. Some common Git commands include: git init: This command is used to initialize a new Git repository. It creates a new directory and sets up the necessary configuration files and directories. git clone: This command is used to create a local copy of a remote repository. It allows a developer to download a copy of the repository and all its history to their local machine. git add: This command is used to add new or modified files to the staging area. The staging area is a temporary holding area where changes are stored before they are committed to the repository. git commit: This command is used to save changes to the repository. It creates a new snapshot of the project and adds it to the repository's history. git push: This command is used to send changes from the local repo...