Ok, quindi sto creando un'applicazione C# winforms.Come limitare l'accesso alla cartella/file ad un solo programma?
Voglio scrivere/leggere dal file di dati binari. Ma, voglio mettere quel file in una cartella da qualche parte e non voglio che qualcuno sia in grado di cancellare o modificare il file. Voglio solo che il programma che utilizza il file sia in grado di accedervi.
È possibile? Ho esaminato la struttura di MSDN in merito alla sicurezza dei file e, mentre lo analizzavo, ho visto persone lamentarsi del fatto che se si limita il file a un utente, quella persona può semplicemente ignorare i privilegi e renderla modificabile.
Inoltre, ho pensato a come avrebbe funzionato, considerando in sostanza che vorrei che un processo modificasse solo il file e che il processo potesse avere diversi ID di processo se è aperto e chiuso nel tempo, sembra difficile.
Qualche idea?
'Voglio solo che il programma che utilizza il file sia in grado di accedervi. Domanda seria: perché? A meno che tu non agisca come amministratore della macchina, non hai alcun controllo su ciò che l'utente fa al proprio filesystem. Se sei preoccupato dell'integrità dei dati dell'app, allora ci sono altre cose che puoi fare per verificare detta integrità quando usi i dati. – admdrew
Beh, il mio pensiero è perché vorresti che qualcuno fosse in grado di esaminare i file, trovarne uno che dice "importantData.bin" e aprirlo e iniziare a scherzare con esso. Se una cosa si incasina, hai perso l'integrità dei dati come hai detto. –
Esatto: in tal caso, è possibile creare la propria logica (o cercare in linea per trovare una soluzione) che accetti solo dati "buoni". Questo è un metodo migliore del tentativo di bloccare in qualche modo il filesystem, che non è desiderato dal punto di vista dell'utente. – admdrew