zachy 10 Geschrieben 19. Oktober 2015 Melden Geschrieben 19. Oktober 2015 Hallo Community, ich habe mich mit der Windows-Authentifizerung am SQL Server 2014 angemeldet und mit folgendem Code einen Login und einen User für meine Datenbank erstellt: CREATE LOGIN Test123 WITH PASSWORD = 'Passw0rd'; GO CREATE USER Test123; Wenn ich mich nun mit diesem User am Server anmelde, kann ich im Objekt-Explorer in meiner Datenbank keine Tabellen mehr sehen – so hatte ich es auch erwartet. Allerdings kann ich ein SELECT ausführen, um mir die Tabellen samt Inhalt anzeigen zu lassen. Selbst INSERT, UPDATE und DELETE sind möglich!! Wo liegt mein Fehler? Eigentlich dürfte der User doch gar nichts können, oder?? Stehe gerade voll auf dem Schlauch und hoffe auf eure Ideen. Viele Grüße zachy Zitieren
zahni 566 Geschrieben 19. Oktober 2015 Melden Geschrieben 19. Oktober 2015 Vielleicht hat die PUBLIC Role zu viele Rechte? Zitieren
zachy 10 Geschrieben 20. Oktober 2015 Autor Melden Geschrieben 20. Oktober 2015 Vielleicht hat die PUBLIC Role zu viele Rechte? Hallo zahni, danke für deine Antwort. Ich habe mal folgendes probiert: DENY INSERT, UPDATE, DELETE, SELECT ON tbl_Artikel TO public; Dann habe ich mich wieder mit Test123 angemeldet, konnte aber trotzdem noch alles tun. Selbst wenn ich mit Windows-Authentifizierung folgenden Code ausführe DENY INSERT, UPDATE, DELETE, SELECT ON tbl_Artikel TO Test123; kann der User immer noch auf die Tabelle zugreifen. Wo kommen die Berechtigungen denn bloß her? Zitieren
NilsK 2.978 Geschrieben 21. Oktober 2015 Melden Geschrieben 21. Oktober 2015 Moin, du bist auch wirklich als Test123 angemeldet? Was sagt SELECT user()? Was sagt SELECT suser_sname()? Gruß, Nils Zitieren
MDD 13 Geschrieben 22. Oktober 2015 Melden Geschrieben 22. Oktober 2015 Moin Was sagt SELECT user()? Kann es sein dass hier die Klammer versehentlich reingerutscht sind? Gruß MDD Zitieren
NilsK 2.978 Geschrieben 22. Oktober 2015 Melden Geschrieben 22. Oktober 2015 Moin, fast. ;) Da ich nix zum Ausprobieren hatte, kam das aus dem Gedächtnis. Richtig wäre user_name(): https://msdn.microsoft.com/de-de/library/ms188014%28v=sql.120%29.aspx Gruß, Nils Zitieren
zachy 10 Geschrieben 23. Oktober 2015 Autor Melden Geschrieben 23. Oktober 2015 Moin, du bist auch wirklich als Test123 angemeldet? Was sagt SELECT user()? Was sagt SELECT suser_sname()? Gruß, Nils Hallo NilsK, ich werd bekloppt. Du hast Recht! suser_name() sagt mir, dass ich mit der Windows-Anmeldung angemeldet sein, user_name() gibt mir dbo zurück. Ich versteh bloß nicht warum! Ich habe doch im Anmeldedialog auf SQL-Server-Authentifizierung umgeschaltet und Benutzername und Passwort eingegeben. Was habe ich denn da falsch gemacht??!! :confused: Zitieren
NilsK 2.978 Geschrieben 23. Oktober 2015 Melden Geschrieben 23. Oktober 2015 Moin, keine Ahnung. Vielleicht versehentlich noch ein zusätzliches Fenster geöffnet? Ist die SQL-AUthentifizierung auf Serverebene (gemischte Authentifizierung) aktiviert? Gruß, Nils Zitieren
zachy 10 Geschrieben 24. Oktober 2015 Autor Melden Geschrieben 24. Oktober 2015 (bearbeitet) Komisch, wenn ich das Management Studio komplett schließe und mich dann noch mal anmelde, dann klappt es. Irgendwie scheint er also die Anmeldedaten der vorherigen Sitzung beim "normalen" Abmelden (über die Schaltfläche Trennen) zwischen zu speichern und wiederzuverwenden, auch wenn man sich mit anderem Namen anmeldet. Das ist doch sehr kurios. Ist evtl. noch irgendwo ein Haken gesetzt, den ich rausnehmen muss? bearbeitet 24. Oktober 2015 von zachy Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.