Come impostare le autorizzazioni file corrette per ASP.NET su IIS

Errore HTTP 500.19 – Errore interno del server Imansible accedere alla pagina richiesta perché i relativi dati di configurazione per la pagina non sono validi.

Codice errore : 0x80070005
Errore di configurazione : imansible leggere il file di configurazione a causa di autorizzazioni insufficienti

Quando aggiungi una nuova applicazione Web in IIS 7.5 ed eseguilo, questa pagina mi mostra come risolverlo. Win7 ultimate visual studio 2010

inserisci la descrizione dell'immagine qui

Il messaggio è chiaro

Imansible leggere il file di configurazione a causa di autorizzazioni insufficienti

Come risolverlo

Ogni applicazione asp.net viene eseguita in un pool assegnato e ogni pool viene eseguito con un account specifico .

Aprire IIS, individuare il pool in cui si tenta di eseguire l’app, visualizzare l’utente assegnato a tale pool e fornire le autorizzazioni di lettura a tale utente sull’albero della directory del sito completo.

Speciale per il web.config

Il web.config , il suo configuration file che dice il messaggio, deve avere (e) i permessi di scrittura .

Quindi localizzi web.config nella root del tuo sito, fai clic con il tasto destro su di esso, vai su permessi e fornisci all’utente pool, la capacità di scrittura. L’utente del pool, è l’utente sotto la strega in cui viene eseguito il pool, come spiegato di seguito.

Più dettagli

Per poter eseguire un sito asp.net pubblico con IIS, ogni file nella directory deve disporre delle autorizzazioni per due account.

Un account autorizzato per l’accesso pubblico e l’account assegnato a tale pool di applicazioni.

Per trovare / dare il primo account vai sul tuo sito iis | Autenticazione | Modifica, e vedi o modificalo come vedi in quella schermata.

Ora nota quel nome e troveremo l’utente sotto con il pool run.
Vai al tuo sito IIS e fai clic su Impostazioni di base per trovare il nome del pool, quindi vai su IIS | Pool di applicazioni e vedere la colonna Identity e annotare il nome dell’utente sotto il quale viene eseguito il sito.

Ora che abbiamo i due nomi di utenti, andiamo alla radice del sito e impostiamo il minimo di permessi che è letto come

Alcune note

  • Se IIS_Public_ACCESS_USER non fornisce il permesso di lettura, il sito viene eseguito, ma richiede la password
  • Su alcune directory hai bisogno e scrivi permessi, se ad esempio permetti agli utenti di caricare immagini, o di mantenere su App_Data, alcuni file di database. Solo per le directory fornite e le autorizzazioni di scrittura per IIS_POOL_USER.
  • Alcune directory, come App_Data e App_Code, hanno protezione diretta da asp.net e non consentono a nessuno dal lato client di eseguire o visualizzare cosa è lì dentro.
  • Nella directory pubblica che consente l’accesso in scrittura all’utente, aggiungi un web.config e disabilita completamente l’esecuzione dei file asp.net.

Più da leggere per le directory che forniscono permessi di scrittura sono stato violato. Il file aspx malevolo caricato si chiama AspxSpy. Stanno ancora provando. Aiutami a intrappolarli!

Sembra che il tuo IIS_User non abbia le autorizzazioni necesarry per accedere al tuo sito web in C: \ Users …. \ Visual Studio 2012 \ Websites … Inoltre assicurati che l’applicazione stia eseguendo la versione .NET corretta (2.0, 4.0 , …)