Esistono metodi standard per consentire a qualcun altro l'accesso in sola lettura ai miei dati?

6

Esistono metodi standard per consentire a qualcun altro l'accesso in sola lettura ai miei dati?

Ci sono diverse situazioni in cui potrei voler dare a pochi utenti l'accesso in sola lettura ad alcuni dati, ma preferirei non dare a quelle persone le mie password segrete che consentono all'autorizzazione completa di agire come me.

  • Voglio vedere dei bei grafici di borsa, quindi voglio dare a questo servizio web un accesso sufficiente per vedere quali azioni / fondi comuni di investimento / ecc. Possiedo e quanto di ciascuno - ma non abbastanza accesso per comprare, vendere, ecc.
  • Voglio consentire alla persona che effettua le mie tasse un accesso sufficiente ai miei conti bancari per scaricare tutte le transazioni dell'ultimo anno fiscale, ma non abbastanza accesso per trasferire denaro. (Una persona a " potrebbe mint.com essere più sicuro, e se sì, come? "afferma che esiste un sistema simile a OAuth" progettato dal sistema bancario "per questo - qual è il nome di quel sistema?)
  • Come utilizzare "materiale chiave" in modo che più persone possano accedere ai file protetti?
  • Voglio consentire alle persone che ho autorizzato di fare un controllo in background su di me per vedere chi sono i miei "amici" sui siti di social network - ma non abbastanza accesso per consentire loro di aggiungere nuovi amici, defriend vecchi amici, modificare le impostazioni sulla privacy sulle mie foto, ecc. ( "I pericoli di chiedere password per le reti sociali" ; Gli utenti in cerca di domande per le password di Facebook , La legislazione SNOPA impedirebbe ai datori di lavoro di utilizzare le password dei social network , 6 buoni motivi per non chiedere le password di Facebook , ecc.)
  • Quando inizio a utilizzare un nuovo sito di social network, sarebbe bello sapere quali dei miei amici (che conosco dalla vita reale o da altri siti online o entrambi) hanno già un account su quel sito - ma semplicemente la consegna sulla mia password gmail sembra la cosa sbagliata da fare. Qual è il sistema chiamato che consente a Etsy ( Come posso trovare i miei amici su Etsy? ) guarda la mia email elenco dei contatti senza dare a Etsy la mia password di Gmail? C'è un modo per dare in qualche modo solo una versione hash degli indirizzi e-mail, quindi i miei amici non vengono "accidentalmente" spammati?
  • Le nuove leggi potrebbero richiedere che io tenga traccia di chi fornisco informazioni a (HIPAA " È un modulo W-2 protetto da informazioni sulla salute? "). Non posso farlo se Alice dà semplicemente al Dr. Bob la sua password per ottenere le sue informazioni - dal mio punto di vista giù nel seminterrato del server, non posso dire la differenza tra Alice che digita la sua password e Dr. Bob che scrive La password di Alice Che tipo di sistemi permettono ad Alice di dire al mio server che ha autorizzato il Dr. Bob a vedere le sue informazioni, e poi mi permette di rispettare la legge e poi dire ad Alice se / quando il Dr. Bob ha effettivamente avuto accesso alle sue informazioni?

Sono disponibili metodi standard per consentire a qualcun altro l'accesso in sola lettura ai miei dati? Spero che questo sia uno dei Problemi risolti di crittografia .

Esistono metodi standard per me per configurare un sistema in modo che Alice possa autorizzare (e successivamente revocare) il permesso al Dr. Bob di esaminare le sue informazioni sul mio sistema, ma impedire al Dr. Bob di accidentalmente o deliberatamente modificando i suoi dati?

(Decenni fa, un'ottima risposta a questa domanda riguardava "permessi Unix tradizionali" e "Gruppi Unix". Forse anche "setuid" o "setgid").

    
posta David Cary 19.05.2012 - 22:22
fonte

4 risposte

5

Certo. Esistono diversi approcci standard a questo problema:

  1. Esporta. Alice esporta i suoi dati in un file o documento, quindi invia al Dr. Bob una copia dei dati. Ora Bob può modificare la sua copia locale, ma ciò non influirà sulle risorse di Alice.

    Naturalmente, lo svantaggio di questo approccio è che fornisce al Dr. Bob solo un'istantanea dei dati di Alice. Se i dati di Alice stanno cambiando nel tempo, Alice dovrà fare una nuova copia ogni volta che il Dr. Bob vuole vedere gli ultimi dati. Tuttavia, un vantaggio è che questo è molto facile per Alice. Non richiede alcun supporto dal sistema sottostante o alcuna esperienza speciale.

  2. Proxying. Alice vuole dare al Dr. Bob accesso in sola lettura ad alcune delle sue risorse, quindi imposta un proxy. Il codice del proxy ha pieno accesso alle risorse di Alice, ma Alice scrive il codice proxy in modo che esegua solo gli operatori di lettura. Il proxy esporta un'API che consente l'accesso in sola lettura e Alice consente al Dr. Bob di accedere al proxy.

    Naturalmente, il problema con questo è che Alice deve essere un programmatore o equivalente per seguire questo approccio. Il vantaggio è che non richiede supporto dal sistema sottostante.

  3. Supporto per la condivisione di sola lettura. Puoi scrivere il sistema in modo che Alice possa concedere ad altri l'accesso ai suoi dati. È possibile scrivere ulteriormente il sistema per fornire un'opzione per condividere i dati come di sola lettura. Ad esempio, Google Documenti ti consente di condividere un documento con altri e, se lo desideri, puoi scegliere di condividerlo come di sola lettura (in modo che possano leggere il documento ma non modificarlo).

    Naturalmente, questo approccio richiede il supporto del sistema sottostante. Il sistema deve essere costruito per supportare questo caso d'uso. Tuttavia, è probabile che questo approccio sia facile da comprendere per gli utenti.

  4. Funzionalità attenuate. Molti sistemi di funzionalità forniscono supporto integrato per questo caso d'uso. Alice ha una capacità che le consente di accedere ai suoi dati. Il sistema fornisce un modo in modo che Alice possa generare una versione attenuata delle sue capacità: una capacità di sola lettura che si riferisce solo alla stessa risorsa, ma garantisce solo l'accesso in lettura, non l'accesso in scrittura. Ora Alice può condividere questa capacità con altri.

    Ad esempio, un'applicazione web potrebbe dare ad Alice un modo per generare un collegamento (URL) ai suoi dati, in modo che chiunque condivida il collegamento abbia accesso anche ai suoi dati. (Google Docs supporta anche questa modalità di funzionamento). Se l'applicazione Web è scritta per supportarla, l'applicazione Web può anche consentire a Alice di generare un URL che concede l'accesso in sola lettura ma non l'accesso in scrittura a nessuno con cui Alice condivide il collegamento.

    Lo svantaggio è che anche questo richiede il supporto dal sistema sottostante. Il sistema deve essere costruito con la condivisione di sola lettura in mente.

risposta data 21.05.2012 - 01:15
fonte
2

copia / incolla i dati in un file, crittografalo tramite file zip protetto da password e consegna la passphrase di persona o dopo aver crittografato le informazioni con gngpgp o la chiave pubblica delle altre parti;) ma capisco che non è quello che intendevi. Anche se è di sola lettura e sicuro finché si consegna la frase segreta in modo sicuro.

OAuth è piuttosto comune e standard. Se cerchi openid, lo usano per reindirizzare l'utente a un sito di terze parti e i rapporti di terze parti se riconoscono l'utente o meno. Di quanto tu possa utilizzare l'API di terze parti per ottenere dati di sola lettura.

L'ho visto fare prima con un'app che lanciava una finestra su un sito che fornisce all'utente un pin per l'uso una tantum. Il pin viene utilizzato con il nome dell'account e rispetto all'app i dettagli richiedono che esso comunichi con api che di solito prendono i dettagli di OAuth che IIRC è semplicemente un token e un token segreto.

    
risposta data 20.05.2012 - 10:56
fonte
0

Usa Linux, installa SSH e assegna i permessi necessari ai file e alle directory usando chmod. Se sei un utente di Windows, non ne sono sicuro. Forse una soluzione simile è possibile.

    
risposta data 21.05.2012 - 15:55
fonte
0

OAuth2 sarebbe un protocollo piacevole da utilizzare in questo caso. Il consumatore (ad esempio il contabile) proverà ad accedere ai dati (alcuni URL forniti dall'utente) e il fornitore del servizio (banca) chiederà al consumatore di fornire un token di autorizzazione. Fornirai al consumatore un token che hai ottenuto dal fornitore di servizi. Dopo aver visto ciò, il fornitore di servizi può quindi consentire al portatore di token di accedere ai tuoi dati. Questo metodo richiede che i provider di servizi implementino il flusso di lavoro OAuth

D'altra parte, è anche possibile con una soluzione SSO (Enterprise Sign-On) con una sorta di capacità di prevenzione della perdita di dati. L'utente accederà alla macchina utilizzando le proprie credenziali SSO e il servizio SSO a sua volta registra l'utente nel provider di servizi utilizzando le proprie credenziali (nascosto ai propri occhi). Una volta effettuato l'accesso, al consumatore verrebbe impedito di eseguire azioni "dannose" (ad esempio, fare clic sui fondi di trasferimento) e di disporre effettivamente dell'accesso "di sola lettura" al servizio.

    
risposta data 25.02.2014 - 09:16
fonte

Leggi altre domande sui tag