PostgreSQL è un famoso DBMS relazionale, basato sul ben noto paradigma client-server, completamente gratuito ed open source, che annovera molte caratteristiche avanzate, quali viste, triggers, supporto pieno per la transazionalità, e via discorrendo.
Il presente articolo descrive il porting verso PostgreSQL della pseudo-applicazione di login sicuro creata su database MySQL e presentata in un precedente articolo. Il deploy è su un server Linux Debian.
Per i dettagli sulla logica di funzionamento del programma rimando all'articolo su Html.it, che descrive la pseudo-applicazione nel dettaglio. Essa viene di fatto qui usata quale esempio di un primo utilizzo di PostgreSQL al fine di presentare la filosofia del DBMS inerente la logica di utilizzo e le politiche di sicurezza.
Descriveremo dapprima l'installazione del DBMS su Linux Debian, quindi procederemo con la creazione di un database, descrivendo le caratteristiche più importanti per quanto riguarda autenticazione, connessione e scambio dati tra client e server. Solo al termine dell'articolo torneremo a parlare del login a sfida.
Installeremo prima di tutto PostgreSQL, PHP ed Apache. Otterremo un ambiente di lavoro che potremmo chiamare LAPP (Linux, Apache, PostgreSQL, PHP), in opposizione al più noto LAMP. Tutte le operazioni dette di qui in poi verranno svolte da shell in qualità di utente root.
Per conoscere la versione corrente del server database, che al momento in cui scrivo è rappresentata dalla 8.3, utilizziamo i seguenti comandi (i comandi digitati, per differenziarli dalle risposte del sistema, sono scritti qui e in seguito in rosso; i nostri commenti sono scritti in ciano):
apt-get update; apt-cache search postgres | grep postgres
Al fine di installare e configurare PostgreSQL quale servizio, una volta ottenute le informazioni sul nome del pacchetto Debian da scaricare, usiamo:
apt-get install postgresql-8.3
Lettura della lista dei pacchetti in corso... Fatto
Generazione dell'albero delle dipendenze in corso
Reading state information... Fatto
I seguenti pacchetti verranno inoltre installati:
postgresql-client-8.3 postgresql-client-common postgresql-common ssl-cert
Pacchetti suggeriti:
postgresql-doc-8.3
I seguenti pacchetti NUOVI (NEW) saranno installati:
postgresql-8.3 postgresql-client-8.3 postgresql-client-common
postgresql-common ssl-cert
0 aggiornati, 5 installati, 0 da rimuovere e 0 non aggiornati.
[...]
Configuro postgresql-8.3 (8.3.1-1) ...
Creating new cluster (configuration: /etc/postgresql/8.3/main, data: /var/lib/postgresql/8.3/main)...
Moving configuration file /var/lib/postgresql/8.3/main/postgresql.conf to /etc/postgresql/8.3/main...
Moving configuration file /var/lib/postgresql/8.3/main/pg_hba.conf to /etc/postgresql/8.3/main...
Moving configuration file /var/lib/postgresql/8.3/main/pg_ident.conf to /etc/postgresql/8.3/main...
Configuring postgresql.conf to use port 5432...
Starting PostgreSQL 8.3 database server: main.
Notiamo che i file di configurazione ed i file dati sono, come da consuetudine Debian, rispettivamente memorizzati nella cartella /etc (/etc/postgresql) e /var/lib (/var/lib/postgresql).
I file delle configurazioni inerenti l'autenticazione degli end-point sono leggibili (e modificabili) solamente dall'utente con cui gira PostgreSQL (e, sottinteso, da root):
-rw-r----- postgres postgres pg_hba.conf -rw-r----- postgres postgres pg_ident.conf
I file dei dati seguono la medesima logica, ovvero solo PostgreSQL potrà accedere a queste cartelle, implicando la segretezza, l'integrità e l'autenticità dei dati, per lo meno a livello "sistemistico" (protezione interna).
|
SQL Maintenance Solution: soluzione free per la manutenzione di SQL Server |
Guida AccessIniziare a sviluppare database grazie alla potenza visuale offerta... |
Guida SQL Server 2005L'RDBMS di Microsoft è uno dei più utilizzati, soprattutto in ambito... |
Guida OracleScoprire ed approfondire un dei più importanti RDBMS sulla scena... |
Ogni settimana, in due distinte newsletter: notizie a approfondimenti su MySQL, SQLserver e Oracle.
Iscriviti alla newsletter