none
IIS 7.5 - Webdav: problema autorizzazioni su virtual directory mappata UNC. RRS feed

  • Domanda

  • Sto lavorando ad un servizio WebDAV che permetta, ad un selezionato gruppo di utenti di dominio, di raggiungere alcune cartelle di lavoro ubicate in uno dei file server aziendali: la macchina sulla quale gira IIS 7.5 è una VM 2008 R2 Enterprise R2 connessa a dominio.

    Il site una volta creato funziona a dovere, ma il problema si pone nel momento in cui si provano ad utilizzare le virtual directory che sono mappate UNC al file server di dominio e per le quali vorremmo gestire le autorizzazioni in lettura/scrittura sulla base dei reali diritti NTFS dell'utente autenticato da servizio WebDAV.

    Questo purtroppo non ci sta riuscendo.

    In pratica, mappando la virtual directory utilizzando l'autenticazione di tipo pass-through, il client la elenca come file senza estensione (a 0KB) e naturalmente non si riesce ad entrarci.

    Viceversa, mappando la virtual directory impersonando un qualsiasi utente AD (con diritti sufficienti) dal client WebDAV la si può vedere e trattare come normale directory, ma perdendo così la possibilità di utilizzare i diritti NTFS specifici dell'utente collegato.

    Suppongo che non ci sia soluzione. :(

    ALex.




    • Modificato Alex_B_ martedì 6 ottobre 2015 18:03
    martedì 6 ottobre 2015 16:07

Tutte le risposte

  • Ciao,

    ha giá visto questo articolo?

    Come abilitare l'autenticazione pass-through per le directory virtuali UNC


    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    martedì 6 ottobre 2015 17:31
  • Ciao,

    ha giá visto questo articolo?

    Come abilitare l'autenticazione pass-through per le directory virtuali UNC


    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    Accipicchi, interessante ... molto !

    Dopo me lo studio, grazie infinite.

    ALex.

    martedì 6 ottobre 2015 18:02
  • Ho letto l'articolo ed ho cercato di applicare le direttive riportate: si tratta però di un articolo datato, le impostazioni sono studiate per versioni di IIS fino alla 5.0, per implementarle sulla 7.5 è necessario installare moduli di compatibilità per lo scripting e le WMI, senza contare che ad esempio il comando "adsutil set uncauthenticationpassthrough true" non viene comunque accettato da cscript e mi pare fosse comunque già deprecato per IIS6.

    In ogni caso, almeno nel mio caso, le impostazioni non hanno funzionato.

    Comunque, il problema sembrerebbe legato ad una questione di delega di autenticazione "double-hop" verso il server di dominio (schema: Client -> IIS -> AD Server -> IIS), dove mi sembra di aver capito che entra in gioco il meccanismo di trust delegation.

    Segnalo un articolo molto interessante e ben dettagliato a firma Baris Bikmaz che affronta bene la problematica proprio su piattaforme più moderne (mi pare di di aver veduto le schermate II7):  http://blogbaris.blogspot.it/2013/04/using-webdav-on-iis-7-to-access-unc.html

    Ho già fatto alcuni test, ma purtroppo per adesso senza troppi risultati.

    ALex.





    • Modificato Alex_B_ mercoledì 7 ottobre 2015 13:05
    mercoledì 7 ottobre 2015 12:10
  • Sorry..

    Come hai impostato lo delega? Provato a mettere "use any authentication protocol"?


    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    mercoledì 7 ottobre 2015 12:21
  • prova anche a vedere la soluzione proposta qui

    IIS 7.5 WEBDAV access to user folders on backend FILESERVER


    Edoardo Benussi
    Microsoft MVP - Directory Services
    edo[at]mvps[dot]org

    mercoledì 7 ottobre 2015 12:42
    Moderatore
  • prova anche a vedere la soluzione proposta qui

    IIS 7.5 WEBDAV access to user folders on backend FILESERVER


    Edoardo Benussi
    Microsoft MVP - Directory Services
    edo[at]mvps[dot]org

    Purtroppo non posso vedere la risposta perchè non ho un account Expert-Exchange.

    Comunque sono praticamente tre giorni che lavoro solo a questo, senza risultati apprezzabili: l'accesso alla vDir mappata UNC lo riesco a fare solo imponendo domain\username + password direttamente all'interno delle proprietà della vDir stessa, perdendomi però così la possibilità di utilizzare i diritti di accesso ai files e alle cartelle che avrei attraverso una autenticazione pass-through, se funzionasse.

    Dopo tante prove sono sempre più convinto che il problema risieda nel livello di trust dello scambio di credenziali tra client - IIS - AD, dovrei forse pasticciare col SetSPN,  ma sinceramente ...

    ALex.



    • Modificato Alex_B_ mercoledì 7 ottobre 2015 16:51
    mercoledì 7 ottobre 2015 16:48
  • Potresti postare lo screenshot della delegation e il risultato del comando "SETSPN -L <FILE_SERVER>" ?

    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    mercoledì 7 ottobre 2015 16:56
  • copio ed incollo:

    Okay, here is what I found after some testing....
    Go here to setup the Application Pool in IIS: http://forums.iis.net/t/1152391.aspx

    I noted that when I setup the WebDAV folder, you could choose to use the share UNC (\\server\share) or the direct folder (\\server\root_drive$\folder1\folder2...).  I found that creating a share on the non-local server worked best.  I then added the permissions for the account used in the Application Pool as well as the users (or groups) you want for access to the folder - but make sure you add them to the SHARE permissions as well as NTFS.  If you don't use a Share reference, I found it to be messy using straight NTFS permissions since you have to add permissions to the Root folder for all access to even the folder you want.

    Finally, the kicker was in the Authentication for the Virtual Directory (actually, it's now an Application) you must use Basic Authentication... I couldn't get Windows Authentication to work.  I did try playing with the SPN utility, but to no avail.

    Let me know how the above works.  Like I said, we have a different setup with DFS-R and the one non-local server share I setup with a Connect As, but I needed to hammer out the other details in case I wanted to do other non-local server shares.


    Edoardo Benussi
    Microsoft MVP - Directory Services
    edo[at]mvps[dot]org

    giovedì 8 ottobre 2015 07:15
    Moderatore
  • Potresti postare lo screenshot della delegation e il risultato del comando "SETSPN -L <FILE_SERVER>" ?

    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    Rispondo alla tua domanda precedente:

    Domain Functional Level -> Windows Server 2008
    SE0010FI -> Domain Server e File Server
    SE0011FI-VM06 -> IIS Server (inserito a dominio)
    Vdir mappata su -> \\SE0010FI\Pub\Produzione\Progetti

    Risultato di SETSPN -L SE0010FI:

    ------------------
    ServicePrincipalNames registrati per CN=SE0010FI,OU=Domain Controllers,DC=<miodominio>,DC=it:
    Microsoft Virtual System Migration Service/SE0010FI
    Microsoft Virtual System Migration Service/SE0010FI.<miodominio>.it
    Microsoft Virtual Console Service/SE0010FI
    Microsoft Virtual Console Service/SE0010FI.<miodominio>.it
    ldap/SE0010FI.<miodominio>.it/ForestDnsZones.<miodominio>.it
    ldap/SE0010FI.<miodominio>.it/DomainDnsZones.<miodominio>.it
    TERMSRV/SE0010FI
    TERMSRV/SE0010FI.<miodominio>.it
    Dfsr-12F9A27C-BF97-4787-9364-D31B6C55EB04/SE0010FI.<miodominio>.it
    DNS/SE0010FI.<miodominio>.it
    GC/SE0010FI.<miodominio>.it/<miodominio>.it
    RestrictedKrbHost/SE0010FI.<miodominio>.it
    RestrictedKrbHost/SE0010FI
    HOST/SE0010FI/<miodominio>
    HOST/SE0010FI.<miodominio>.it/<miodominio>
    HOST/SE0010FI
    HOST/SE0010FI.<miodominio>.it
    HOST/SE0010FI.<miodominio>.it/<miodominio>.it
    E3514235-4B06-11D1-AB04-00C04FC2DCD2/0b8ca62d-3d89-474e-9ebb-89f943608fee/<miodominio>.it
    ldap/SE0010FI/<miodominio>
    ldap/0b8ca62d-3d89-474e-9ebb-89f943608fee._msdcs.<miodominio>.it
    ldap/SE0010FI.<miodominio>.it/<miodominio>
    ldap/SE0010FI
    ldap/SE0010FI.<miodominio>.it
    ldap/SE0010FI.<miodominio>.it/<miodominio>.it
    ------------------

    Questa è la finesta delle deleghe del IIS server vs. il Domain Server (Kerberos con tutti i servizi), spero di non aver sbagliato ...

    ALex


    • Modificato Alex_B_ giovedì 8 ottobre 2015 07:37
    giovedì 8 ottobre 2015 07:37
  • Prima di proseguire con i test relativi alla pagina postata da Edoardo, pongo una questione forse un po' stupida: se io spostassi il servizio IIS/WebDAV dalla macchina virtuale SE0011FI-MV06 al controller di dominio SE0010FI, potrei evitare tutto il problema legato alle trust chain ? 
    Essendo IIS hostato direttamente sulla macchina AD controller ...

    ALex.


    • Modificato Alex_B_ giovedì 8 ottobre 2015 08:21
    giovedì 8 ottobre 2015 08:15
  • Gli SPN mi sembrano a posto.

    Prova cosí:

    Seguendo il suggerimento di Edoardo non ha funzionato?


    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    giovedì 8 ottobre 2015 08:26
  • Aggiornamento.

    Ho attivato il ruolo IIS Server 7.5 sul controller di dominio, ho creato il webserver ed attivato il Webdav, configurato tutto come avevo fatto sulla macchina virtuale, et volià ... tutto ha iniziato a funzionare.

    Con questa nuova configurazione l'utente si logga in WebDAV con le sue credenziali di dominio e può operare all'interno delle cartelle mappate nella vDir (nella forma \\server\share\) con i suoi propri diritti di accesso.

    Credo che sia la riprova che tutti i problemi rilevati facciano capo ad un difetto a livello di trustee chain, che rimane quindi, a mio vedere, irrisolto.

    ALex.


    • Modificato Alex_B_ giovedì 8 ottobre 2015 09:10
    giovedì 8 ottobre 2015 09:09
  • Almeno abbiamo la conferma di quale sia il problema. Deduco che i suggerimenti sopra non abbiano protato a risultati.

    SE mai vorrai continuare il troubleshooting ti consiglio di catturare i pacchetti con netmon/wireshark sul fileserver e sul webserver riproducendo il problema. 


    This post is provided AS IS with no warranties or guarantees, and confers no rights.
    ~~~
    Questo post non fornisce garanzie e non conferisce diritti

    giovedì 8 ottobre 2015 09:17