Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   MSSQL - Zugriff bei integrierter Sicherheit testen (https://www.delphipraxis.net/208104-mssql-zugriff-bei-integrierter-sicherheit-testen.html)

Papaschlumpf73 10. Jun 2021 11:30

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Mir fällt jetzt aber noch etwas anderes ein: Als Kunde würde ich nur ungern meine Windows-Anmeldedaten irgendwo in eine Anwendung eintippen, die nicht Windows selbst ist. Hätte ich kein gutes Gefühl dabei. Ist aber Geschmackssache.

DeddyH 10. Jun 2021 12:18

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Das ist ja nur eine Option.

Der schöne Günther 10. Jun 2021 12:35

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Zitat:

Zitat von Papaschlumpf73 (Beitrag 1490944)
Als Kunde würde ich nur ungern meine Windows-Anmeldedaten irgendwo in eine Anwendung eintippen, die nicht Windows selbst ist. Hätte ich kein gutes Gefühl dabei.

Ich auch nicht. Deshalb mein Vorschlag mit dem runas, da sollte Windows selbst die Authentifizierung handeln.

generic 10. Jun 2021 12:48

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
"Integrierte Sicherheit" sagt, dass das Konto verwendet wird, welches den Prozess ausführt.

Wenn etwas als Dienst läuft, läuft der Prozess im Dienstkonto. Dieses kannst du auch berechtigen in der DB.
Das alles geht auch ohne AD.
Evtl. musst du das Computerkonto berechtigen, wenn das o.g. Konto nicht geht. Computerkonten heißen so wie der PC mit angehängten $ -> MeinPC$
Du kannst den Dienst natürlich auch in jedem beliebigen Konto laufen lassen. Das kannst du in den Dienst-Einstellungen hinterlegen.

Ich als Benutzer freue mich über jedes Passwort welches ich nicht eingeben muss, schließlich bin ich schon in Windows angemeldet.

Das mit den Dienst und dem Systemkonto klingt erstmal komisch für mich.
Das Hauptprogramm läuft doch im Benutzerkonto. Welchen Grund hast du, dass du einen Services zwischen brauchst?
Wenn der Service notwendig ist, dann müsste der Service auf das Benutzerkonto eine Impersonation durchführen.
Alternativ müsste die Verbindung vom Hauptprogramm authentifiziert werden und die Berechtigungen müssen geprüft werden, um dann mit einen Servicekonto in die DB weiter zu gehen.

Ich erwähne dieses, weil schön ist, dass Benutzerkonto von vorne bis hinten zur Verfügung zu haben. Berechtigungen und Audits gehen dann erheblich leichter. Auch die Rechte sollte imho immer am zu sichernden Objekt liegen z.B. an der Datenbanktabelle, Sicht oder Prozedur. Dadurch können auch Daten einfacher gefiltert werden.

DeddyH 10. Jun 2021 15:09

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Zitat:

Zitat von generic (Beitrag 1490955)
Das mit den Dienst und dem Systemkonto klingt erstmal komisch für mich.
Das Hauptprogramm läuft doch im Benutzerkonto. Welchen Grund hast du, dass du einen Services zwischen brauchst?

Es ist genau andersherum. Ich habe einen Dienst, der als REST-Server fungiert und auf eine Datenbank zugreift. Damit er das kann, muss er aber auch wissen, wie er das machen muss. Dazu wird eine Konfigurationsdatei benutzt, die alle nötigen Angaben enthält, sensible Daten natürlich verschlüsselt. Wenn nun also MSSQL mit integrierter Sicherheit benutzt wird, muss SQL-Serverseitig der Zugriff für NTAUTHORITY\System auf die Datenbank zugelassen sein. Da viele unserer Kunden nicht halb so technikaffin sind, wie sie zu sein glauben, bekommen sie das aber nicht hin oder haben in der Compu****ild gelesen, dass das ein Sicherheitsrisiko ist, oder was weiß ich. Nun könnte man sagen "wenn Sie das nicht möchten, richten Sie eben den Dienst so ein, dass er unter einem berechtigten Benutzerkonto läuft". Von mindestens der Hälfte der Kunden kommt dann wieder "wieso ich, das muss doch automatisch gehen". Also möchte ich lediglich die Möglichkeit bieten, dass es eben automatisch geht, wenn man die Anmeldedaten gleich beim Setup hinterlegt. Der Dienst schaut im OnCreate in seiner Konfiguration nach entsprechenden Angaben und setzt dann ggf. StartServiceName und Password. Da ich aber jemand bin, der Benutzereingaben nach Möglichkeit auf Korrektheit prüft, wollte ich eben im Vorfeld testen, ob das dann auch so klappt. Und wie gesagt, niemand muss Anmeldedaten eingeben, wenn in meinem Setup der Haken bei "Windows-Authentifizierung" gesetzt ist, kann man Anmeldename und Kennwort auch leer lassen. In dem Fall muss man aber selbst dafür Sorge tragen, dass mein Dienst an die Daten kommt.

jobo 10. Jun 2021 21:29

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Also möchtest Du lediglich eine "manuelle" Anmeldung bei MSSQL per SQL Account über ein Testprogramm ausprobieren? (Weil alles andere sowieso geht)

DeddyH 11. Jun 2021 05:41

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
So ist es. Mittlerweile habe ich es auch mit LogonUser und ImpersonateLoggedOnUser hinbekommen. Ich wechsle kurz den Account, schaue, ob damit die Anmeldung funktioniert und wechsle wieder zurück. Zumindest in meinen ersten Tests klappt das ganz hervorragend.

Jumpy 11. Jun 2021 07:26

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
Wenn integrierte Sicherheit nicht aktiv ist, würdest du mit einem in der Anwendung bekannten/konfigurierbaren festen Konto arbeiten? Wie weiter oben schon gesagt wurde geht das trotz integrierter Sicherheit weiterhin. Wollte das nur noch mal erwähnt haben.

DeddyH 11. Jun 2021 08:23

AW: MSSQL - Zugriff bei integrierter Sicherheit testen
 
AFAIK aber nur, wenn die Serverauthentifizierung auch so eingestellt ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:01 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz