4 messaggi dal 11 novembre 2007
Ciao a tutti,
devo fare in modo che un mio "fornitore" possa scrivere su un DB (MS SQL) che risiede su una mia macchina...

Le soluzioni che mi vengono in mente sono:

1- "esporre" il DB su internet (ma mi piace poco...)
2- procedere per la strada webservice
3- fare una semplice pagina aspx su internet, che riceve una chiamata POST ed inserisce le variabili POST ricevute nel DB


Per questioni di comodità, preferirei prendere la strada n° 3... voi che ne pensate? optereste anche voi per la 3? Se si, quale modo consigliate per rendere la cosa "abbastanza" sicura? (chessò... faccio un controllo su un cookie, piuttosto che un token testuale...)


Grazie a tutti, ciao!
edodad wrote:
Per questioni di comodità, preferirei prendere la strada n° 3... voi che ne pensate? optereste anche voi per la 3? Se si, quale modo consigliate per rendere la cosa "abbastanza" sicura? (chessò... faccio un controllo su un cookie, piuttosto che un token testuale...)

io sceglierei 2, in maniera specifica WCF, perchè ha alcune delle cose che ti possono servire (indipendenza dal canale, autenticazione) ed eventualmente, in subordine 3, dove però devi fare gran parte del lavoro a mano. anche scegliendo 3, ti consiglio di optare per qualcosa basato su REST, con invio dei comandi in formato XML e risposta in XML.

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
edodad ha scritto:
1- "esporre" il DB su internet (ma mi piace poco...)

Direttamente??? MAI, nemmeno da morto.

2- procedere per la strada webservice

Questa è decisamente la soluzione che preferisco e che adotterei, sia nel mio interesse che in quello del fornitore: indipendenza dalla piattaforma, estensibilità, UI personalizzabile, sicurezza... i motivi sono tanti!

3- fare una semplice pagina aspx su internet, che riceve una chiamata POST ed inserisce le variabili POST ricevute nel DB

Mmmm... un po' una soluzione "vecchio stile". Può andare ma ha troppi vincoli rispetto ad un servizio.
E comunque non inserire le variabili ricevute via POST nel DB: valida *sempre* l'input dell'utente, almeno sul tipo!

Per questioni di comodità, preferirei prendere la strada n° 3

Sicuro che sia più comodo un webform anziché un web service? IMHO è esattamente l'opposto...

HTH

Matteo Casati
GURU4.net
4 messaggi dal 11 novembre 2007
Ciao, grazie innanzitutto per le preziose risposte :)

Il problema del webservice è che il fornitore utilizza un CMS (Lynux\Pyton), non facilmente customizzabile, dunque ha dei dubbi che riesca facilmente a dialogare con un eventuale webservice (tantomeno con un servizio WCF), ma corregetimi se sbaglio, ovviamente ;)

Se scegliessi la strada numero 3, quale strataggemma di sicurezza mi cosigliereste di adottare, onde evitare che chiunque faccia un post sulla pagina mi inserisca dati nel DB? mi viene in mente un cookie, è fattibile?

per qunto riguarda il discorso "rest", è applicabile alla soluzione 3? Se si, avete quelche esempio da segnalarmi?

Grazie ancora per l'aiuto!
377 messaggi dal 10 settembre 2001
Contributi
edodad ha scritto:

Se scegliessi la strada numero 3, quale strataggemma di sicurezza mi cosigliereste di adottare, onde evitare che chiunque faccia un post sulla pagina mi inserisca dati nel DB? mi viene in mente un cookie, è fattibile?

!


io creerei un account per il soggetto che deve postare i dati sul db.

Quindi per poterpostare deve fare un login da qualche parte, prima sicurezza.

Poi quando posta i dati via post, ti fai arrivare anche il suo ID, in un kookie, o var session, e prima di avviare la scrittura sul db verifichi che quell'ID che è pervenuto insieme ai dati esista nel db, se esite procedi, sempre usando chiaramente query parametriche!!!!!!
se l'id non è quello giusto, gli dai un bel messaggio: Stai tentando di fare il Furbo, ti prendi il suo IP e ti fai inviare questi dati via e mail, non lo beccherai mai, ma perlomeno hai traccia dei tentativi di furbate che se aumentano vuol dire che il sistema è da ripensare!


ciao

Riccardo

dopo la laurea dissi: ho finito gli esami, qualcuno mi rispose: Gli esami non finiscono mai ....
2.190 messaggi dal 04 marzo 2004
Contributi | Blog
edodad ha scritto:
Il problema del webservice è che il fornitore utilizza un CMS (Lynux\Pyton), non facilmente customizzabile, dunque ha dei dubbi che riesca facilmente a dialogare con un eventuale webservice (tantomeno con un servizio WCF), ma corregetimi se sbaglio, ovviamente ;)

WCF nasce proprio per essere interoperabile potendo sfruttare protocolli SOAP standard di dialogo, è probabile che anche Python abbia un SoapToolkit o comunque non sia difficile creare un consumer di un servizio WCF.
Questo a titolo "accademico", ovviamente se non è il cms non è modificabile allora fagli inviare i dati in querystring

Alessio Leoncini (WinRTItalia.com)
.NET Developer, Interactive Designer, UX Specialist, Trainer

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.