Ergebnis 1 bis 3 von 3
  1. #1
    Neuling
    Registriert seit
    19.11.2008
    Beiträge
    2

    Standard Webservice auf IIS mit Firebird-Datenbank

    Ich hab einen Webservice (ASP.NET/C#) mit FirebirdV2.5 Datenbank geschrieben.
    Wenn ich den Webservice in der IDE lokal starte, läuft der Zugriff auf die DB problemlos.
    Aber wenn ich den Webservice mit Visual Studio auf dem IIS veröffentliche, kann er nicht mehr auf die DB zugreifen.
    Zu Beginn des Projekts hab ich diesen Webservice mit einer Access-DB (*.accdb) geschrieben.
    Da hat es sowohl lokal, als auch auf dem IIS gefunzt.
    Als ich dann denselben Code auf Firebird-DB umgeschrieben hab, ging's nur noch lokal.
    Das umschreiben war voll easy, weil die Klassen des FirebirdSql.Data.FirebirdClient-Namespace äquivalent zu MSSQL und OleDb sind.
    Ich hab zwei Vermutungen:
    1.) Es liegt an der SQL-Authentifizierung: Mit Windows-Authentifizierung würde es gehen
    2.a) Es liegt an den Einstellungen des IIS für Sicherheit und Zugriffsrechte.
    2.b) Es liegt an den ASP.NET-Anwendungseinstellungen

    Falls jemand Problem & Lösung kennt, bitte ich ihn, mir zu helfen.
    Ich werde solange meinen Vermutungen nachgehen.
    Wenn ich auf die Lösung komme, werde ich sie selbstverständlich für die "Nachwelt" posten.
    Danke!
    EDIT-Zusatz:
    Beim Veröffentlichen in VS2008 kann man ein Häkchen setzen, ob man App_Data-Ordner (Datenbankdatei *.FDB) mit auf den Webserver kopieren will.
    Bei meiner ersten Version mit der Access-DB wird er rüberkopiert.
    Bei der Firebird-Version wird der Ordner trotz gesetzten Hakens nicht rüberkopiert.
    Versteh ich nicht!
    Das mach ich dann von Hand. Vielleicht ist das auch eine der Fehlerquellen, weil bei diesen Deploy-Funktionen hier und da Einträge in XML-Konfigurationsdateien gemacht werden, die bei manueller Ergänzung nicht getätigt werden.

    KENNT SICH JEMAND GUT MIT IIS, ASP.NET UND Anwendungspool usw aus?
    °heulvorwut°

    Hier die Fehlermeldung im Browser.
    Ich denke, die wird durch den Webserver erzeugt:
    System.Security.SecurityException: Fehler bei der Anforderung des Berechtigungstyps "System.Security.Permissions.FileIOPermission , mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089".
    bei System.Security.CodeAccessSecurityEngine.Check(Obj ect demand, StackCrawlMark& stackMark, Boolean isPermSet)
    bei System.Security.CodeAccessPermission.Demand()
    bei System.AppDomain.GetData(String name)
    bei FirebirdSql.Data.FirebirdClient.FbConnectionString .ExpandDataDirectory(Stri ng s)
    bei FirebirdSql.Data.FirebirdClient.FbConnectionString .get_Database()
    bei FirebirdSql.Data.FirebirdClient.FbConnectionString .Load(String connectionString)
    bei FirebirdSql.Data.FirebirdClient.FbConnection.set_C onnectionString(String value)
    bei FirebirdSql.Data.FirebirdClient.FbConnection..ctor (String connectionString)
    bei PLZWebService_Csharp_Firebird_IIS.Database.OpenDB( ) in C:\Users\SedatKilinc\Documents\Visual Studio 2008\Projects\PLZWebService_Csharp_Firebird_IIS\PL ZWebService_Csharp_Firebi rd_IIS\Database.cs:Zeile 31.
    bei PLZWebService_Csharp_Firebird_IIS.PLZService.getCi tysByPLZ(String PLZ) in C:\Users\SedatKilinc\Documents\Visual Studio 2008\Projects\PLZWebService_Csharp_Firebird_IIS\PL ZWebService_Csharp_Firebi rd_IIS\PLZService.asmx.cs:Zeile 48.
    Geändert von atila2174 (16.09.2010 um 14:35 Uhr) Grund: Zusatz-Info
    dercheckervomneckar

  2. #2
    Linus Torvalds Avatar von kInGoFcHaOs
    Registriert seit
    25.11.2006
    Beiträge
    1.107

    Standard

    Gehe in deine Systemsteuerung dann auf Verwaltung: Dann starte .NET Framework -Assistent" und wähl".NET Sicherheit anpassen". Änderungen an diesen Computer vornehmen, dann auf "Lokales Intranet" auf "Voll vertrauen" stellen.


    Und gehts dann?

  3. #3
    Neuling
    Registriert seit
    19.11.2008
    Beiträge
    2

    Standard

    Zitat Zitat von kInGoFcHaOs Beitrag anzeigen
    Dann starte .NET Framework -Assistent" und wähl".NET Sicherheit anpassen
    Also bei mir (Windows 7) ist unter "Verwaltung" kein .NET Framework-Assistent zu finden.
    Ich fummel gerade im inetmgr, also der IIS-Verwaltungskonsole rum,
    aber völlig ohne Plan!
    Ich dachte, dass ich den SQL-User 'SYSDBA' irgendwelche Rechte für den App_Data-Ordner und in ihr befindenden Datenbank gebe.
    Weiß aber nicht, ob das so geht. Vielleicht, wenn ich dem II_IUSR mehr Rechte (Schreiben) gebe?
    Ich glaub, wenn ich die Datenbank mit Windows-Authentication erstelle, dann wären die Probleme weg. Die AccessDB war auch mit Win-Auth.
    Aber ich weiß net, wie ich den ConnectionString formuliere!
    dercheckervomneckar

Ähnliche Themen

  1. WoW Datenbank^^
    Von rezman im Forum Games
    Antworten: 3
    Letzter Beitrag: 06.11.2008, 22:06

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •