> Tech > Etape 1 : Collecte des données (2)

Etape 1 : Collecte des données (2)

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Pour écrire l'application de collecte des données, il faut créer une architecture à  trois niveaux : un back-end base de données, un objet COM qui interagit avec la base de données, et un code ASP qui crée l'UI. Dans l'exemple d'application, la base de données incluse définit deux tables :

Etape 1 : Collecte des données (2)

Predefined_
Questions et Collected_Data.
Predefined_Questions stocke les questions prédéfinies que le script présente à  l’utilisateur (par exemple, quel est le nom de jeune fille de votre mère ?). Collected_Data, que
montre la table Web 2, stocke les réponses
des utilisateurs. Le script
exemple utilise une base de données
Microsoft Access 2000, mais vous pouvez
facilement modifier le code ADO
de l’objet COM pour utiliser n’importe
quel back-end base de données
conforme à  ODBC.

Le travail de collecte des données
commence quand la navigation des utilisateurs
les conduit à  data_collection.
asp, qui contient le code que
montre le listing Web 1 (http://www.itpro.
fr). Le script instancie authenticate.
dll par l’intermédiaire du fichier
include instantiate.inc, que montre le
listing 1.

Data_collection.asp utilise ensuite
le code du renvoi A dans le listing
2 pour appeler la méthode Get-
NumberOfPredefinedQuestions. Le
script utilise cette méthode pour déterminer
le nombre de questions prédéfinies
actuellement stockées dans la base de données. Comme le montre le
code du renvoi B dans le listing 2, le
script utilise ensuite cette valeur dans
une boucle pour appeler la méthode
DisplayPredefinedQuestions et pour
générer le code HTML qui présente les
questions-défi prédéfinies et les boîtes
de texte des réponses correspondantes.

Data_collection.asp utilise aussi le
code du listing 3 pour présenter un
couple question-réponse personnalisé.
Dès que l’utilisateur fournit l’information
et soumet le formulaire, le
script applique les données à  confirmation.
asp, que montre le listing Web
2.

Si confirmation.asp trouve les données
dans chaque champ, il appelle la
méthode WriteDB du serveur COM qui
utilise un algorithme de cryptage RC4
pour crypter les données, puis Base64
code le résultat, comme le montre le
listing 4, assurant que les données seront
stockées en sécurité dans la base de données. (Pour compromettre la
sécurité de base de données native, un
intrus devrait aussi casser l’algorithme
de cryptage pour obtenir la valeur des
données stockées). La fonction
WriteDB prend UID comme un argument.
Les fichiers .asp exemple
définissent UID comme Request.
ServerVariables(« Auth_User »), qui utilise
le nom que l’utilisateur présente
pour l’authentification. Microsoft IIS
(Internet Information Service) 5.0
peut permettre soit un nom d’utilisateur
standard (c’est-à -dire, domainusername), soit un UPN (user
principal name). Dans des environnements
Windows XP et Win2K, l’UPN est
un excellent choix parce qu’il permet
un mécanisme simple pour présenter
les noms d’utilisateurs sans obliger les
utilisateurs à  connaître autre chose
que leur adresse e-mail. Dans l’idéal,
vous vous inspirerez du mécanisme
qu’ils utilisent pour se connecter à 
leurs stations de travail. S’il manque
des données, confirmation.asp appelle
la sous-routine ValidationError, illustrée
dans le listing 5, pour rediriger
l’utilisateur vers data_collection.asp.

Authenticate.dll encapsule la plupart
des fonctions cruciales de l’application.
Les scripts exemple incluent un
code source commenté pour authenticate.
dll, dans le cas où vous voudriez modifier les clés ou l’algorithme de
cryptage. Vous pouvez maintenant utiliser
les secrets stockés pour authentifier
les utilisateurs au moyen d’une application
en self-service ou tout
simplement par le téléphone.

Téléchargez cette ressource

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Cybersécurité des collectivités : Enjeux, Perspectives & Solutions

Villes, intercommunalités, métropoles, départements et régions sont particulièrement exposés aux risques de cybersécurité. Ce livre blanc Stormshield présente les défis cyber que rencontrent les collectivités, les solutions et perspectives pour qu’elles puissent assurer leur mission d’utilité publique, en toute sécurité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010