SIMULAZIONE RETE INTERNET
INTERNET SERVICE PROVIDER
GRUPPO 2
COMMESSA – INFORMATICA GRANATA
Corso Sicurezza su Reti II
Prof. A. De Santis
Anno Accademico 2006/2007
SPECIFICHE COMMESSA
Implementazione sito Informatica Granata
1.
Gestione anagrafica clienti
2.
Gestione catalogo e listino (con pannello
amministratori)
3.
Gestione utenti amministratori
4.
Carrello della spesa
5.
Interfaccia col sistema di pagamento U.P.
6.
Registrazione di almeno 30 utenti e catalogo
di almeno 20 prodotti di diversa prezzatura
SOLUZIONE PROPOSTA
Sito Web Informatica Granata:






Interazione con Ufficiale Pagatore
HTML & PHP
Interazione utente mediante form
Connessioni ed operazioni sicure con SSL
Utilizzo DBMS MySQL
Transazioni SQL
IL NOSTRO LAVORO




Creazione database SHOP ed interfaccia per
accesso ai dati
Utilizzo MySQL 5.0.37 e PHP 5.2.1
Suddivisione Lavoro:
I. Barone – Creazione Database
D. Laurino - Interazione Database
Interazione e Collaborazione con Gruppo 3
DATABASE SHOP


Contiene tutti i dati necessari all’applicazione
Composto da 5 tabelle:
- CUSTOMERS : cf,nome,indirizzo,uname,pwd,admin
- ORDERS : cod,cliente*,totale,data,stato
- PRODUCTS : cod,nome,descr,prezzo,qtà,foto
- PROD_ORD : prod*,ord*,qtà
- TOKENS : id,token
_ chiave primaria
* chiave esterna
ISTRUZIONI SQL - ESEMPIO
Creazione Tabella Customers
DROP TABLE IF EXISTS 'Customers';
CREATE TABLE 'Customers' (
'CF' varchar(16) NOT NULL,
'NAME' varchar(50) default NULL,
'ADDRESS' varchar(100) default NULL,
'UNAME' varchar(20) default NULL,
'PASSWORD' varchar(8000) default NULL,
'ADMINISTRATOR' enum('True','False') default 'False',
PRIMARY KEY ('CF')
)
MYDBMANAGER



Oggetto PHP
Connessione gestita nel costruttore
Funzionalità/Query:
- Login di Utenti ed Amministratori
- Gestione Utenti con modifiche dati
- Elenco Utenti e Dati Utente Specifico
- Gestione Prodotti con modifiche dati
- Catalogo Prodotti e Dati Prodotto Specifico
- Gestione ed Elenco Ordini e Prodotti Ordinati
- Gestione di Timeout e Conferma Ordini
MYDBMANAGER

Funzioni PHP Gestione SQL Injection:
- addslashes per inserimento
- stripslashes per reperimento

Transazioni per evitare Denial of Service

Gestione connesioni sicure SSL/MYSQL
DIFFICOLTA’ INCONTRATE



Creazione Modello E/R
Gestione Transazioni : Lock,Start
Transaction,Commit
Connessione Sicura DB
- mysql_connect(…,MYSQL_SSL_CLIENT)
- malfunzionamento
- soluzione : database presso Gruppo 3