Limitare la manipolazione dei dati da utente solo attraverso lo strato di applicazione per soluzione multi database

StackOverflow https://stackoverflow.com/questions/1537765

  •  20-09-2019
  •  | 
  •  

Domanda

sto iniziando lo sviluppo di un nuovo software che deve essere conforme a SQL Server (2005 e oltre), Oracle (10r2 e superiori) e Sybase (12.5 e superiori). Sto pensando di attuare l'astrazione database utilizzando le stored procedure, in modo da poter usare il codice attuare approcci specifici di database più performatic per ogni caso. Ho intenzione di negare l'accesso a tutte le informazioni tavolo, tra cui lettura dei dati, e consentire l'accesso alle informazioni solo tramite stored procedure. Il problema è che quando mi concedo il permesso di esecuzione su una stored procedure che verrà utilizzato per inserire, se l'utente si connette al database tramite SQL Server Management Studio o SQL Inoltre, egli sarà in grado di aggiungere dati chiamando direttamente la procedura, e vorrei come per impedire che. Vorrei che la manipolazione dei dati tramite stored procedure da eseguire solo attraverso la mia domanda. Potrei dare login separati per la mia applicazione e gli utenti, ma voglio avere la possibilità di mia applicazione la connessione al database tramite l'autenticazione NT, utilizzando le credenziali dell'utente. C'è un modo per fare questo?
C'è un modo migliore per ottenere quello che sto cercando di realizzare?
Grazie

È stato utile?

Soluzione

Si potrebbe incorporare un UUID nella propria applicazione e hanno la stored procedure richiedono prima che scriverà i dati nel DB.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top