Pour protéger ses formulaires contre le bot, spammer etc…, on utilise un captcha. Ce système permet de différencier de manière automatisée un utilisateur humain d’un ordinateur.
Nous allons utiliser Zend_Service_ReCaptcha qui fournit un client pour le Service Web reCAPTCHA.
Qu’est ce que reCAPTCHA ?
reCAPTCHA est un système mettant à profit les capacités de reconnaissance des utilisateurs humains mobilisées par les tests Captcha, pour améliorer par la même occasion le processus de numérisation de livres, là où échouent les systèmes de reconnaissance optique de caractères (OCR).
L’idée est de rendre utile une tâche qui peut sembler rébarbative. La technique tient du crowdsourcing.
Concrètement, par rapport à un processus habituel d’authentification par Captcha, ce ne sont pas un mais deux mots qui sont présentés à l’utilisateur. L’un d’eux est un Captcha habituel, dont la solution est par conséquent connue de manière certaine ; seul l’autre est issu de la numérisation d’un livre : c’est celui dont la solution est incertaine voire inconnue et que l’utilisateur va aider à résoudre.
Le système part du principe que si les utilisateurs résolvent correctement le Captcha habituel, alors ils ont aussi déchiffré correctement le mot inconnu. Néanmoins, un mot n’est considéré comme vraiment reconnu que si plusieurs utilisateurs l’ont vérifié en obtenant le même résultat.
Les vues sont implémentées en version 5 de MySQL, elles sont disponibles depuis la version 5.0.1.
Qu’est ce qu’une vue
Les vues sont des tables virtuelles créées à l’aide d’une requête SELECT.
Elles ne stockent pas les données qu’elles contiennent. Seule la requête permettant de les créer est conservée.
Qu’est ce qu’un VPN (Virtual Private Network)
Un VPN (Virtual Private Network), réseau virtuel privé, est une sorte de « tunnel » permettant le passage de communications privées à travers une infrastructure partagée. Celui-ci permet donc de relié deux réseaux « physiques » (réseaux locaux) par une liaison non fiable (ex: Internet) de manière sécurisé.
Pourquoi avoir mis en place un vpn ?
Dans mon cas, le VPN me permet de me connecter au réseau de ma boite et d’accéder aux différentes ressources et serveurs (tel que le serveur exchange, les serveurs de développement,…) comme si mon ordinateur faisait parti du réseau local de l’entreprise.
De plus, il n’y a plus qu’un seul port ouvert, celui du vpn. Le firewall bloque tout le reste se qui permet de ne pas avoir trop de porte ouverte accessible d’Internet et donc de ce fait d’augmenter la sécurité du réseau de l’entreprise.
Mise en place d’un VPN
Pour ce tutorial, je pars du principe que le serveur tourne sous la distribution Linux Gentoo et que le(s) client(s) tourne(nt) sous Windows.
Il va de soit que rien ne vous empêche d’adapter ce tutorial pour une autre distribution ou pour Windows.
Installation d’openvpn
Pour la mise en place de notre vpn, nous allons utiliser openvpn qui est comme son nom l’indique un outil open source utilisé pour construire des VPNs. Son rôle est de « tunneliser », de manière sécurisée, des données sur un seul port TCP/UDP à travers un réseau non sûr comme Internet et ainsi établir des VPNs.
Les bases de données définissent les transactions comme étant des unités logiques de travail qui peuvent êtres validées (commited) ou annulées (rolled back) en tant qu’une seule opération, même sur de multiples tables. Toutes les requêtes aux bases de données sont considérées comme faisant partie d’une transaction, même si le driver de base de données fait ceci implicitement. Ceci s’appelle le mode auto-commit, dans lequel le driver de base de données créer une transaction pour chaque requête executée et la valide. Par défaut toutes les classes Zend_Db_Adapter fonctionnent en mode auto-commit.
Après une longue absence et des postes pas très réguliers, j’ai décidé de recommencer à bloguer sérieusement.
Nouveau concept
J’ai également choisi de vous faire partager quelques concepts et expériences de programmation.
Je posterais donc de temps en temps des tutoriaux.
Je viens d’ailleurs d’installer les plugins wp-syntax et wp-codebox (je n’ai pas encore réellement choisi celui que j’allais utiliser) à cet effet.
Ces plugins permettent la coloration de syntaxe de code source.
Ce qui donne ceci :
1
2
3
4
<?php$date=date('d-m-Y');echo'Hello World ! '.$date;?>
Les divers tutos que j’aborderais seront axés sur des thèmes tels que :
Linux : config serveur
Programmation Web : php5
SGBD: mysql 5
…
En espérant que cette nouvelle approche vous plaira, je vais réfléchir à mon premier tutorial…