2012-07-17 6 views
11

Descrizione: l'applicazione ha tentato di eseguire un'operazione non consentita dalla politica di sicurezza. Per concedere a questa applicazione l'autorizzazione richiesta, contattare l'amministratore di sistema o modificare il livello di attendibilità dell'applicazione nel file di configurazione.System.Security.SecurityException?

Eccezione dettagli: System.Security.SecurityException: Richiesta di autorizzazione di tipo 'System.Security.Permissions.FileIOPermission, mscorlib, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089' fallita.

Il mio codice viene eseguito correttamente nel mio server locale, crea un problema durante il caricamento sul server.

hanno attraversato seguente codice ma non funziona per me:

Esempio 1:

<system.web> 
    <securityPolicy> 
    <trustLevel name="Full" policyFile="internal"/> 
    </securityPolicy> 
</system.web> 

Esempio 2:

<location allowOverride="false"> 
    <system.web> 
    <securityPolicy> 
     <trustLevel name="Full" policyFile="internal" /> 
     <trustLevel name="High" policyFile="web_hightrust.config" /> 
     <trustLevel name="Medium" policyFile="web_mediumtrust.config" /> 
     <trustLevel name="Low" policyFile="web_lowtrust.config" /> 
     <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/> 
    </securityPolicy> 
    </system.web> 
</location> 

Esempio 3:

<system.web> 
    <trust level="Full" originUrl="" /> 
</system.web> 

Non posso in grado di accedere a IIS ho solo dettagli FTP per caricare il file. Per favore suggeriscimi l'opzione per risolverlo dal file webconfig.

+0

Dov'è il server? – leppie

+0

Sono necessari i permessi di scrittura sulla cartella app_data e il livello di attendibilità impostato su "alto" o "completo" in IIS (o console di amministrazione per l'hosting web). Durante l'aggiornamento, i permessi dei file possono essere sovrascritti e potrebbe essere necessario un reset. Recentemente ho visto questo errore con 2.5.0.11 e ho dovuto aggiungere la direttiva di trust completa al web.config - anche se IIS mi ha detto che è già pieno di fiducia. Non so perché, ma è stato risolto. – Abhijeetchindhe

risposta

0

NOTA: se si utilizza un host condiviso, in genere dispongono di un'interfaccia Web per consentire l'accesso in lettura/scrittura ai file.

Non consiglio ma è possibile impersonare un account specifico:

<system.web> 
    <identity impersonate="true" username="user" password="pass" /> 
</system.web> 

Altrimenti assicurarsi di aver concesso l'autorizzazione corretta per il file (s) che si sta tentando di accedere alla Identity essere utilizzati in il tuo pool di app.

Specify an Identity for an Application Pool (IIS 7)

+0

HUmm hanno anche provato sopra il codice. Non risolve il mio problema ... grazie per il suggerimento. –

+0

Stai utilizzando un host condiviso? –

+0

Sì, ho condiviso l'hosting .. –

11

L'approccio utilizzato nel campione tre è simile alla mia soluzione, ma non ho aggiunto l'attributo aggiuntivo che hai avuto. Prova questo approccio semplice.

<system.web> 
    <trust level="Full"/> 
    </system.web> 

Questo è venuto da un MSDN posting ho letto.

Problemi correlati