Esegui query direttamente sul database e utilizza il servizio web

5

Sono un programmatore junior, sto lavorando su un'applicazione WPF che verrà distribuita a ~ 50 utenti.

Fondamentalmente stiamo ottimizzando tutti i suoi grafici / tracciamento dei dati dei clienti. Probabilmente ogni utente farà circa 25 letture / scritture al giorno.

Ho tutto ciò che funziona in Azure ma il mio problema / paura / domanda è che sto chiamando direttamente stored procedure nel db SQL di Azure per tutte le operazioni di CRUD / Caricamento ... è saggio / corretto? Dovrei sfruttare un'altra tecnica come un servizio web? Mai lavorato con servizi web o web apis o web worker ... ecc. In pratica sto solo facendo quello che serve per farlo funzionare.

Di nuovo ... Sono un dev junior ... & So quanto basta per essere pericoloso.

Le mie preoccupazioni sono che sia meno sicuro e ho paura dei maggiori costi di Azure perché sto facendo qualcosa di brutto o terribile.

    
posta markokstate 10.06.2015 - 16:30
fonte

1 risposta

-1

La risposta alla tua domanda sarà per lo più decisa sui seguenti punti.

  1. La tua applicazione WPF sarà limitata a questi ~ 50 utenti o c'è un ambito di aumento della base utente ...

  2. Che tipo di operazioni di scrittura di lettura l'utente sta facendo. (Hai davvero bisogno di sicurezza)

  3. La tua applicazione WPF sarà l'unico client per quei dati (esiste la possibilità che l'applicazione venga portata su dispositivi mobili come Android)

Il motivo dietro le domande è 1. se la tua applicazione è limitata a questi ~ 50 utenti e sai che gli utenti non sono tecnici (non tenteranno di rompere il sistema usando input errati o tentando di chiamare il livello del database, ad esempio con l'attacco SQL injection) in quel caso puoi utilizzare la chiamata SP diretta dalla tua applicazione.

2.se i dati che i tuoi utenti pubblicano sul database o che recuperano dal database sono molto confidenziali e non dovrebbero essere visibili a nessuno a snoofing del traffico. allora in quel caso dovresti cercare di avere un mezzo di trasporto più sicuro. Un modo può essere implementare il certificato SSL per l'accesso ai dati da e verso il servizio web.

3.Se i dati devono essere accessibili da diversi client (inclusi i dispositivi mobili, le applicazioni Web ecc. In tal caso anche l'implementazione dei servizi è sempre un'opzione migliore in quanto il livello di accesso ai dati completo è separato con una corretta protezione implementata)

Spero che questo risponda alla tua domanda.

    
risposta data 23.03.2016 - 21:05
fonte

Leggi altre domande sui tag