none
LightSwitch 2012 Integrated Security Probleme RRS feed

  • Frage

  • Hallo Zusammen,

    ich habe eine Visual Studio 2012 Ultimat Trial inkl. Lightswitch.

    Ich habe eine SQL Server 2012 DB und einen IIS 7.5 (beides auf anderen Servern)

    Ich hab eine Lightswitch Webanwendung die Daten in der SQL DB ändern soll. (3 tier deployment architecture)

    Folgendes funktioniert Problemlos: Client <- Keine Authentifizierung -> IIS <- Feste SQL Authentifizierung -> DB

    Da ich aber gerne eine Audit Trail hätte um zu sehen welcher Benutzer was geändert hat, hätte ich das gerne so:

    Client <- Egal -> IIS <- Windows Integrated Security -> DB

    Die Berechtigung zwischen Client und IIS sind mir nicht primär wichtig. Mir gehts mehr um den Zugriff auf die DB.

    Wenn ich im IIS unter Authentifizierung die Windows Authentifizierung mit reinnehme,bekomme ich immer folgende Fehlermeldung:  "GetAuthenticationInfo". [HttpWebRequest_WebException_RemoteServer]

    Diese kann ich umgehen in dem ich ?IsLaunchedByVS=True&AuthenticationType=None an die URL hänge.

    Dann habe ich aber immer noch das Rote Kreuz das mir zeigt das ich keine DB Verbindung habe. Das liegt daran das zur DB nicht der Benutzer durchgereicht wird, sondern der Servername. Quasi so Contoso\Servername und eben nicht Contoso\Ich

    Googlen brachte mich dann dazu das das wohl am Application Pool vom IIS liegt, aber wenn ich den von Netzwerkdienst auf meine Identität setzte bringt mir das auch nichts, weil ich ja die Benutzeranmeldung durchschleusen will...

    Hat da irgend jemand Erfahrung mit und kann mir vielleicht ein paar Tipps geben?

    Vielen Dank im vorraus, Ruediger

    Dienstag, 24. September 2013 13:04

Antworten

  • Hallo Zusammen,

    ich habs inziwschen zum laufen gebracht und schildere hier mal wie, in der Hoffnung jemand anderem dadurch einiges an Nerven ersparen zu können...

    Obwohl auf dem IIS 7.5 das Web Deploy 3.5 erfolgreich installiert wurde muss ich beim veröffentlichen (ich veröffentliche direkt remote auf den Server) aus dem  Visual Studio 2012 das Häckchen bei "Auf dem IIS-Server sind die erforderlichen Komponenten für die Bereitstellung von LightSwitch installiert" rausnehmen!

    Auf dem IIS selbst lief es erst Problemlos (vorher bekam ich beim aufrufen der Seite immer diverse Authentication Fehlermeldungen) nachdem ich das .Net Framework 4.5 installiert habe.

    Um die Authentifizierung vom Anwender auf die DB durchzureichen (Client Contoso\Bob -> IIS -> Contoso\Bob -> DB) hab ich im IIS den Applikation Pool mit einer benutzerdefinierten Identität laufen lassen (Contoso\IISadmin) und in den Authentifizierungseinstellungen der Webandwenung die Anonyme Authentifierzung deaktiviert und die Windows Anmeldung sowie den ASP.Net Identitiätswechsel aktiviert. Bei der Windowsanmeldung musste ich unter Anbieter noch NTLM nach ganz oben schieben (Negotiate nach unten). Unter Erweitere Einstellungen musste ich dann noch die Kernenlmodus Authentifizierung rausnehmen, da der IE sonst nicht die Benutzerdaten korrekt durchgeschläust hat... (Firefox verwunderlicherweise schon)

    Zum Schluss musste die Web.Config folgendes beinhalten, bzw. ich musste es von Hand reinsetzten wenn es fehlte:

    <add name="TabelleData" connectionString="Data Source=ServerXYZ;Database=DatenbankXYZ;Integrated Security=SSPI;Pooling = true; Connect Timeout=30; User Instance=False" />

    <authentication mode="Windows">

      <identity impersonate="true"/>

    Hoffe das ist dem ein oder anderen eine Hilfe!

    Liebe Gruesse, Ruediger

    • Als Antwort markiert R2906 Donnerstag, 10. Oktober 2013 07:36
    Donnerstag, 10. Oktober 2013 07:36