Tutti gli utenti possono scrivere solo un sistema in grado di leggere

1

Il sistema che voglio implementare ha il seguente requisito: tutti gli utenti possono inserire alcuni dati sensibili, ma solo uno, l'utente principale, può vederlo.

Esistono soluzioni note e già implementate a questo problema? Devo crittografare i dati quindi senza la password principale è impossibile leggerli.

L'unica soluzione a cui pensavo era usare la crittografia asimmetrica. Gli utenti che possono scrivere useranno la chiave pubblica e l'utente principale può usare la sua chiave privata per leggere i dati. Il problema qui è che è impossibile per l'utente ricordare una lunga password (chiave pubblica / privata)

Grazie!

    
posta nucandrei 25.10.2014 - 22:35
fonte

1 risposta

1

Puoi crearlo in due modi: con controllo di accesso o con crittografia.

Controllo di accesso

Crei un sistema in cui i coloni possano accedere solo a una pagina inserisci dati e non creare una pagina per leggere i dati accessibile a loro. In questo modo hai il sistema scrivi solo . Per leggere effettivamente i dati, puoi creare un'altra pagina accessibile solo a admin , dove può leggere tutti i dati pubblicati.

Pro:

  • Facile da creare
  • Facile da mantenere
  • semplice

Contro:

  • Se le informazioni sono sensibili, una perdita di database può essere devastante
  • Non c'è modo di garantire l'integrità dei dati

Codifica

Crei un sistema con una pagina per coloni e un'altra pagina per admin . Non appena i dati vengono registrati dal settler , lo si codifica con una chiave pubblica di proprietà dell'amministratore, quindi si memorizzano i dati crittografati nel database.

Per leggere i dati, l'amministratore accede utilizzando la pagina speciale e ottiene i dati crittografati in un file JSON, XML o CSV. Quindi esegue il file tramite GPG o qualsiasi altro software di crittografia e decrittografa il file.

Il requisito di un programma esterno può essere risolto decodificando i dati localmente usando javascript. È fondamentale che non memorizzi la chiave privata nel server in alcun modo.

Pro:

  • Molto sicuro
  • Anche una perdita di database non comprometterà i dati

Contro:

  • Aggiunge complessità
  • Potrebbe richiedere programmi esterni
risposta data 27.10.2014 - 18:52
fonte

Leggi altre domande sui tag