2017-05-31 1 views
2

Die vollständige Meldung ist"Die Anwendung hat versucht, eine Operation auszuführen, die von der Sicherheitsrichtlinie nicht zugelassen wurde." Mögliches Vertrauensproblem?

Die Anwendung einer Operation durch die Sicherheitspolitik nicht erlaubt auszuführen versucht. Um dieser Anwendung die erforderliche Berechtigung zu erteilen, wenden Sie sich an Ihren Systemadministrator oder ändern Sie die Vertrauensstufe der Anwendung in der Konfigurationsdatei.

Ich habe vor kurzem eine MVC-Anwendung auf eine von Fasthosts gehostete Website hochgeladen.

Die Anwendung läuft lokal in VS in Ordnung, aber nicht auf dem Server.

Es gab ursprünglich die Nachricht über die Aktivierung von Remote-Fehlermeldungen, so dass ich <customErrors mode="Off" /> in die Konfigurationsdatei hinzugefügt, die zunächst dies gestoppt hat.

Ich sah dann die obige Fehlermeldung, so nach einigem Googeln habe ich <trust level="Full" /> zu <system.web> hinzugefügt, aber stattdessen bekomme ich eine andere Nachricht, die besagt, dass der Host diese Funktion deaktiviert hat.

Die Sache ist, gibt es nichts Ungewöhnliches an dieser Anwendung; es ist nur eine sehr einfache MVC-App. Es verwendet keine Ressourcen an einem anderen Speicherort als der aktuellen Ordnerstruktur, daher sollten keine Vertrauensstellungen vorliegen.

Das Problem ist auch übertrieben, weil es scheint eine Art von Server-Side Caching-Problem zu sein.

Der <system.web> Abschnitt sieht derzeit wie folgt aus:

<system.web> 
    <customErrors mode="Off" /> 
    <trust level="Medium" /> 
    <compilation targetFramework="4.5.2" /> 
    <httpRuntime targetFramework="4.5.2" maxRequestLength="1048576" /> 
    </system.web> 

aber es sagt immer noch, dass ich brauche customErrors mode="Off" hinzufügen Fehlermeldungen zu sehen.

Das Hinzufügen verschiedener Zeilen zur Konfigurationsdatei in verschiedenen Positionen wird schließlich zur ersten Fehlermeldung zurückkehren, aber aus irgendeinem logischen Grund, den ich sehen kann.

Der Vollständigkeit sucht der Controller-Aktion wie folgt aus:

public ActionResult Index(int vehicleId = 0) 
{ 
    ViewBag.VehicleId = vehicleId; 
    return View(); 
} 

Die Aussicht ist nur ein shedload von HTML mit ein paar Hilfsmethoden, von denen sich wie folgt (die anderen sind nur verschiedene Entitäten, gleiche Code aus anderen Gründen):

public static MvcHtmlString Manufacturers(string id = "manufacturers", string className = "", string style = "", string optionClass = "", string optionStyle = "", int selectedValue = 0, bool showSelect = false) 
{ 
    var result = new StringBuilder(); 
    try 
    { 
     using (var context = new DB()) 
     { 
      var selected = selectedValue == 0 ? " selected" : ""; 
      result.Append($"<select id='{id}' class='{className}' style='{style}'>"); 
      if (showSelect) result.Append($"<option{selected} value='0' disabled='disabled'>(Select)</option>"); 
      foreach (var manufacturer in context.Manufacturers) 
      { 
       selected = manufacturer.ManufacturerId == selectedValue ? " selected" : ""; 
       result.Append($"<option{selected} value='{manufacturer.ManufacturerId}' class='{optionClass}' style='{optionStyle}'>{manufacturer.Name}</option>"); 
      } 
      result.Append("</select>"); 
     } 
    } 
    catch (Exception ex) 
    { 
     result = new StringBuilder(ex.GetBaseException().Message); 
    } 
    return new MvcHtmlString(result.ToString()); 
} 

ich habe ein offenes Support-Ticket mit Fasthosts, aber ich bin nicht sicher, es wird in absehbarer Zeit beantwortet wird :(

+1

Ich weiß nicht, die Antwort auf Ihre Frage, aber FYI, Vertrauen hat mehr mit, welche Arten von Dingen zu tun kann der Code tun, als wenn es aus geladen werden kann. Zum Beispiel ist eine Reflexion in einer Einstellung für teilweise Vertrauenswürdigkeit normalerweise nicht erlaubt. – Amy

+0

Ich denke, das kann hier beantwortet werden: https: // stackoverflow.com/questions/8242531/the-application-versucht-zu-per-operation-not-allowed-by-the-security-p? rq = 1 - bin derzeit mit Fasthosts überprüfen ... – CompanyDroneFromSector7G

+0

Leider Fasthosts Unterstützung sind die nächsten zu nutzlos. Verwenden Sie stattdessen einen anderen Hosting-Anbieter. – CompanyDroneFromSector7G

Antwort

0

es stellt sich heraus t zu sein Er Host-Server, nachdem sie sagten, es muss mein Code sein.

fand ich einen anderen Anbieter, meinen Code hochgeladen, alle fein ersten Mal gearbeitet.

Manchmal ist es nicht wahr, es ihnen ist.

Verwandte Themen