Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Zugriff auf Datenbank mit MS SQL verweigern

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von Wow4iiik, 6 März 2014.

  1. Wow4iiik

    Wow4iiik Neuer Benutzer

    Hallo Leute!

    Ich habe folgendes Problem:
    Ich habe eine Webanwedung die auf eine MS SQL-Datenbank zugreift.
    Auf diese Webanwendung haben mehrere User Zugriff um nach den Inhalten in der Datenbank zu suchen.
    Diese User können sich mit ihren Zugriffsrechten aber auch mit MS SQL Server Management Studio mit der Datenbank verbinden. Genau hier besteht das Problem. Ich möchte, dass diese User keinen Zugriff mit MS SQL Server Management Studio auf die Datenbank haben, aber dennoch per Webanwendung auf die Datenbank zugeifen können.

    Ich habe schon mit den (Security)Login-Einstellungen experimentiert, aber leider ohne Erfolg.

    Kann mich da jemand unterstützen?

    Danke schon mal im Voraus!

    Gruß
    Wow4iiik
     
  2. Marius Ilg

    Marius Ilg Neuer Benutzer

    Hallo,

    hast du schon mal über den Gebrauch einer Anwendungsrolle nachgedacht? Oder kommt das für dich nicht in Frage?

    Gruß
    Marius
     
  3. Fumus

    Fumus Benutzer

    Da muss ich ein wenig weiter ausholen: Sofern deine Anwendung Windows Authentifizierung verwendet, bringt dir die Anwendungsrolle nichts, denn die User können sich nachwie vor anmelden, bekommen aber im SQL Server die Rechte der Anwendungsrolle verpaßt. Das können grundsätzlich deutlich höhere Rechte sein, als der User eigentlich bsitzt. Aber das Login wird weiterhin funktionieren.

    Ergo wird dir die Anwendungsrolle nichts bringen.

    Alternativen 1: Entwender du verwendest einen dedizierten Account (SQL Konto) für deine Anwendung, den die User nicht kennen. Fertig. Kein Login am SQL Server mit dem Management Studio ;-) Hat ja auch kein Login mehr. Vorteil: Ein Account für alle, geringe Administration, aber keine flexible User und Rechteverwaltung mehr. Alles oder nix Prinzip.

    Alternative 2:
    du verwendest Login Trigger und fängst beim Loginnamen den Applicationname ab. Steht da SQL Server Management Studio, fliegt er wieder raus, steht da was anderes, wird das Login funktionieren.
    Vorteil: Rel einfach in der Umsetzung, Rechte können im SQL Server exakt pro User vergeben werden. Nachteil. Es hindert niemand daran mit anderen Tools sich in den SQL Server einzuloggen. Folglich muss der Logintrigger exakt deine Anwendung abfangen und demnach den Login erlauben^

    Zum Logintrigger kannst du auch mal in meinem Blog nachlesen: http://blog.fumus.de/sql-server/2013/10/du-kommst-hier-net-rein-logon-trigger/

    Grüße der Fumus
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden