Dare accesso a una sottodirectory senza dare accesso alle directory principali


12

Ho uno scenario che coinvolge un file server Windows in cui il "proprietario" vuole distribuire autorizzazioni a un gruppo di utenti del seguente tipo:

  • \\server\dir1\dir2\dir3: leggi, scrivi ed esegui
  • \\server\dir1\dir2: nessuna autorizzazione
  • \\server\dir1: nessuna autorizzazione
  • \\server: leggi ed esegui

Per la mia comprensione ( aggiornamento : Questo intero paragrafo è sbagliato!), Non è possibile fare questo perché Read & Executeil permesso deve essere concesso a tutte le directory principali di una catena di directory in modo che il sistema operativo per essere in grado di "vedere" il bambino directory e arrivare a loro. Senza questa autorizzazione, non è nemmeno possibile ottenere il token del contesto di sicurezza quando si tenta di accedere alla directory nidificata, anche se si dispone dell'accesso completo alla sottodirectory.

Stiamo cercando modi per aggirare questo problema, senza spostare i dati da \\server\dir1\dir2\dir3a \\server\dir4.

Una soluzione alternativa a cui ho pensato, ma di cui non sono sicuro che funzionerà, sta creando una sorta di collegamento o giunzione a \\server\dir4cui si fa riferimento \\server\dir1\dir2\dir3. Non sono sicuro di quale delle opzioni disponibili (se presenti) funzionerebbe a questo scopo se l'utente non dispone Read & Executedell'autorizzazione \\server\dir1\dir2o \\server\dir1, per quanto ne so, le opzioni sono queste:

  • Collegamento simbolico NTFS,
  • Giunzione,
  • Hard Link.

Quindi le domande:

  • Qualcuno di questi metodi è adatto a raggiungere il mio obiettivo?
  • Esistono altri metodi per collegare o fare riferimento indirettamente a una directory, che non ho elencato sopra, che potrebbero essere adatti?
  • Ci sono diretti soluzioni che non comportano la concessione Read & Executedi \\server\dir1o \\server\dir2ma ancora permettendo l'accesso a \\server\dir1\dir2\dir3?

Questo è possibile. L'utente visualizzerebbe la directory ma se non gli viene data l'autorizzazione di lettura, non può vedere affatto il contenuto della directory, abbastanza facile da configurare.
Ramhound,

Anche questa era la mia domanda. Grazie per aver sollevato la discussione. E per aggiornare la tua domanda in modo da riflettere immediatamente che la tua ipotesi era sbagliata.
Tyron,

Risposte:


15

Ti sbagli nel tuo presupposto originale, che rende discutibile il resto della tua domanda.

L'autorizzazione minima di cui un utente avrebbe bisogno dir1ed dir2è Traverse Directory. Molto probabilmente questo sarà problematico per i tuoi utenti, quindi lo consiglierei Traverse Directory e List Folders . Saranno in grado di navigare attraverso le prime due directory e arrivare dir3dove hanno più autorizzazioni, ma non vedranno nemmeno quali file esistono nelle prime due directory.

Autorizzazioni come Read & Executee Modifysono solo raccolte di autorizzazioni individuali. Sono la prima cosa che vedi, perché sono le più comunemente usate. Se devi diventare molto granulare (come questa situazione), fai clic sul Advancedpulsante e scava nelle opzioni elencate lì.


Informazioni eccellenti (2)! Ma c'è qualcosa che non ho recuperato: "Questo molto probabilmente sarà problematico per i tuoi utenti". Perché sarebbe problematico? La denominazione è piuttosto semplice, nel senso che "Traverse" sembra l'unica autorizzazione necessaria. Che tipo di problemi dovrebbero aspettarsi gli utenti?
Tyron,

12

Sorprendentemente, se l'individuo ha il percorso completo di una sottocartella su cui hanno almeno le autorizzazioni R, non richiedono autorizzazioni NO su nessuna delle cartelle principali, nemmeno attraversare. Possono semplicemente accedervi usando l'UNC. (Devono, ovviamente, avere i permessi di lettura sulla condivisione; non su tutte le cartelle sopra il livello a cui vogliono accedere).

Non ci credevo quando mi è stato detto, ma i test lo dimostrano.

Questo è in contrasto con ciò che pensavo di conoscere le autorizzazioni nel mondo Windows, e sospetto che sarà una sorpresa per molti.

\ Server \ cartella1 \ cartella2 \ folder3

Se non ci sono autorizzazioni per Bilbo sulla cartella1 e sulla cartella2, ma Bilbo ha modificato (ad esempio) sulla cartella3, \ server \ cartella1 \ cartella2 \ cartella3 lo porterà proprio lì, nessun problema.


Funziona quando folder1ha le autorizzazioni SHARE e le autorizzazioni NTFS sono impostate su folder3Quindi \\server\c$\folder1\folder2\folder3non funzionerà.
user2304170

1
Per aggiungere a questa risposta, questa "capacità" implicita di attraversare le cartelle principali in una sottocartella, per quanto profonda, a cui si ha accesso è concessa dal diritto dell'utente chiamato "Bypass Traverse Checking" concesso in Criteri di gruppo per impostazione predefinita per la maggior parte / tutti gli utenti nella maggior parte dei casi. Consulta itprotoday.com/management-mobility/… poiché non riesco a incollarne abbastanza qui per acquisire l'elenco di ciò che ottiene l'autorizzazione in quali circostanze.
Arriva il

Bypass Traverse Checking come diritto è anche presente come un miglioramento delle prestazioni NTFS per consentire di saltare il controllo delle autorizzazioni di ciascuna cartella nella struttura per aprire l'ultima cartella / file desiderato, quindi non è consigliabile rimuoverlo a meno che non si sappia che è necessario quel livello estremamente elevato di sicurezza.
Arriva il

1

Una soluzione simile a MDMarra è impostare le autorizzazioni NTFS come segue:

  1. dir1 : concedi contenuto della cartella Elenco (attraversa cartella / esegui file, elenca cartella / leggi dati, leggi attributi, leggi attributi estesi, autorizzazioni di lettura)
  2. MA seleziona questa cartella solo per Applica al menu a discesa
  3. dir2 : concede il contenuto della cartella Elenco e applica solo a questa cartella
  4. dir3 : concedi le autorizzazioni di lettura / scrittura desiderate e applica a questa cartella, sottocartelle e file o solo sottocartelle e file

Il risultato finale è che l'utente / gruppo può leggere ogni singola cartella principale e passare alla cartella figlio senza altre cartelle o file.


Non è simile alla risposta di MDMarra, questa è la risposta di MDMarra, spiegata in modo più dettagliato.
Scott,

0

Quindi ho provato questo nel seguente ambiente, come volevo ottenere una risposta finale, testata, con le autorizzazioni minime richieste per attraversare semplicemente le cartelle tramite la navigazione (ovvero tramite Esplora file di Windows). Ecco i risultati per coloro che vogliono bloccare le cose.

Non ho ancora testato questo in produzione per vedere se ci sono strani effetti collaterali da abbattere il modello di diritti di attraversamento ben testato "standard" di

  • Traverse Folder
  • Elenco cartelle
  • Leggi attributi
  • Leggi Ext. attributi
  • Autorizzazioni di lettura

... che è sostanzialmente solo le normali autorizzazioni "Leggi ed esegui" limitate a "Questa cartella". Detto questo, i test su piccola scala sono stati completamente corretti finora per gli utenti che semplicemente spostano, copiano e rimuovono i file sul server e gli utenti che lavorano completamente fuori dal server copie di documenti, ecc.


Ambiente:

  • Server : Windows 2008 R2 - Criteri di gruppo poco o niente, nulla è cambiato in relazione ai diritti dell'utente, configurato come controller di dominio, DNS integrato in AD, installazione molto standard / base.
  • Client : Windows 7 SP1: installazione pulita in una macchina virtuale, riavviata tra le modifiche per garantire che la connessione al server sia stata completamente ricreata ogni volta.
  • Entrambe le installazioni sono state aggiornate almeno alla fine del 2017, quindi probabilmente attuali per qualsiasi cosa relativa alle autorizzazioni che sono molto integrate a questo punto nella timeline di Windows.
  • Questo stava accedendo a una cartella condivisa montata come unità di rete persistente (\ server \ share -> S :) nella VM. Le autorizzazioni di condivisione erano Lettura + Modifica per il gruppo Utenti autenticati che copre l'utente di prova e tutti gli altri che potrebbero aver bisogno di accedere a un certo punto.
  • Dopo ogni modifica, riavviavo la VM, aprivo Esplora file e sfogliavo semplicemente la condivisione normalmente, seguendo un percorso che sapevo che l'utente di prova aveva questi diritti di attraversamento rispetto a quelli che non aveva.

risultati:

  • Richiesto nella cartella principale : ListFolder-ReadData + ReadAttributes (2x autorizzazioni)
  • Richiesto nelle sottocartelle : ListFolder-ReadData (autorizzazione 1x)
  • Opzionale : TraverseFolder - ExecuteFile

    -> Questa autorizzazione facoltativa è importante solo se il diritto dell'utente di controllo della traversata di esclusione è stato esplicitamente vietato, poiché è attivo per impostazione predefinita nel 99% delle circostanze. Detto in altri termini, il diritto utente "Bypass Traverse Checking" (esposto in Criteri di gruppo, non nelle autorizzazioni per file / cartelle NTFS) abilitato elimina completamente questo privilegio e rende questo privilegio abilitato ovunque per impostazione predefinita. Nota: non ho testato per vedere se una negazione esplicita di questo diritto avrebbe, a sua volta, impedito che il diritto dell'utente di Bypass Traverse Checking entrasse in vigore in quella particolare istanza, ma potrebbe).

Informazioni supplementari: il diritto utente "Bypass Traverse Checking" consente a qualcuno di passare passivamente a una sottocartella, per quanto a molti livelli di profondità, a cui ha accesso direttamente (ovvero le autorizzazioni sono impostate su quel file / cartella, ma non necessariamente altrove il percorso del file).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.