Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Access & Login :? (https://www.delphipraxis.net/61537-access-login.html)

Freecer 22. Jan 2006 19:01

Datenbank: Access • Version: XP • Zugriff über: ADO

Access & Login :?
 
Hallo liebe DP Community, nach langer zeit wende ich mich wieder an euer fachwissen :)

Also folgendes problem, Ich bin gerade am schreiben von einem proggy das unbedingt ein login benötigt, anfangs wollte ich es nur husch pfusch machen und habe mit einer if then prozedur gearbeitet, aber da es mehr als inefizient ist mit sowas zu arbeiten wenn mehrere accounts benötigt werden und auch leicht angelegt werden sollen dachte ich mir warum das nicht über eine access datenbank machen? --> Da das proggy so und so mit access arbeitet ist es auch kein weiterer aufwand. Kurz mal dazu, nun meine ideen ...

Ich habe nun versucht irgendwie die tabelle zu durchsuchen nach dem eingegebenen benutzername (soll weiters auch so mit dem passwort gemacht werden --> md5 verschlüsselung wegen sicherheit :?)

Aber ich komme auf keinen grünen zweig, es will kurz gesagt einfach nicht so wie ich ... der einzige ansatz wo ich weiß (oder es vermute :P) das es anfangen muss ist if .... then ... soviel dazu. Ein SQL query würde mir momentan auch schon halbwegs behilflich sien (denke das ist wohl der kern des problems das ich das nicht so zusammenbringe wie es sein soll(te)!

Freue mich über alle antworten die mir dabei nur ansatz weise weiterhelfen können!

Ein kleiner gedanke noch dazu, die einzelnen felder in arrays ainlesen :?

Danke schon einmal für euere freundliche hilfe!


P.s. hoffe auch ich bin im richtigen bereich, falls nicht sorry!

P.p.s. Ich arbeite mit ADO...

alzaimar 22. Jan 2006 19:50

Re: Access & Login :?
 
Erstell Dir eine Tabelle ('User'= mit zwei Spalten: 'UserId', 'PasswordMD5'. Dann eine Funktion:
Delphi-Quellcode:
Function LoginOk (aUserID, aPassWd : String) : Boolean;
Begin
  myUserTable.Active := True;
  Result := myUserTable.Locate('UserID;PasswordMD5',VarArrayOf([aUserID, MD5Hash aPassWd)]),[]);
End;
Das ist die einfachste Variante. Es reicht aber, das mit einem entsprechenden select zu prüfen...

marabu 22. Jan 2006 21:41

Re: Access & Login :?
 
Hi folks,

wenn eine Access Datenbank im Projekt verwendet wird, dann wäre es doch das einfachste ein Password auf die Datenbank zu legen. Beim Connect wird dann automatisch ein Login-Dialog geführt. Wer mehr braucht kann auch den User-Level-Security Wizard verwenden, aber das scheint mir hier overkill zu sein.

Aber vielleicht ist ja auch der Weg das Ziel - dann ignoriert diesen Beitrag.

Grüße vom marabu

Freecer 23. Jan 2006 20:36

Re: Access & Login :?
 
Zitat:

Zitat von marabu
Hi folks,

wenn eine Access Datenbank im Projekt verwendet wird, dann wäre es doch das einfachste ein Password auf die Datenbank zu legen. Beim Connect wird dann automatisch ein Login-Dialog geführt. Wer mehr braucht kann auch den User-Level-Security Wizard verwenden, aber das scheint mir hier overkill zu sein.

Aber vielleicht ist ja auch der Weg das Ziel - dann ignoriert diesen Beitrag.

Grüße vom marabu

Ja an sowas habe ich auch gedacht, jedoch würde ich gerne die möglichkeit haben zu kontrollieren wer wann und wo eingeloggt war, denke nicht dass das mit dieser möglichkeit läuft oder :? Sollte ich mich irren würde ich diese option durchaus in betracht ziehen...

Zu obigem, danke für die schnelle antwort, aber irgendwie komm ich damit nicht ganz klar ... könntest du mir vlt. kurz erläutern welche ado componenten hier zu verwenden sind? -> ADOTable nehme ich mal an ... bin mir aber nicht ganz sicher, danke shcon mal!

Delphi-Quellcode:
myUserTable.Active := True;
  Result := myUserTable.Locate('UserID;PasswordMD5',VarArrayOf([aUserID, MD5Hash aPassWd)]),[]);
Kann es sein das das nicht das komplette ist -> d.h. wie du schon erwähnt hast der SQL teil fehlt? -> entschuldigt bitte diese feststellung ob falsch oder "richtig" -> besser einmal zu viel gefragt als einmal zu wenig...:)

nochmal vielen dank für euere bemühungen!

marabu 23. Jan 2006 21:06

Re: Access & Login :?
 
Zitat:

Zitat von Freecer
Ja an sowas habe ich auch gedacht, jedoch würde ich gerne die möglichkeit haben zu kontrollieren wer wann und wo eingeloggt war, denke nicht dass das mit dieser möglichkeit läuft oder? Sollte ich mich irren würde ich diese option durchaus in betracht ziehen...

Was hält dich davon ab im Ereignis OnConnectComplete() der ADOConnection einen Log-Eintrag mit den Angaben (aktueller Zeitstempel, angemeldeter User, verbundene Datenbank) zu schreiben?

marabu

Freecer 23. Jan 2006 21:10

Re: Access & Login :?
 
Zitat:

Zitat von marabu
Zitat:

Zitat von Freecer
Ja an sowas habe ich auch gedacht, jedoch würde ich gerne die möglichkeit haben zu kontrollieren wer wann und wo eingeloggt war, denke nicht dass das mit dieser möglichkeit läuft oder? Sollte ich mich irren würde ich diese option durchaus in betracht ziehen...

Was hält dich davon ab im Ereignis OnConnectComplete() der ADOConnection einen Log-Eintrag mit den Angaben (aktueller Zeitstempel, angemeldeter User, verbundene Datenbank) zu schreiben?

marabu

Gute frage!

Hey vielen dank, auf die idee were ich wenn überhaupt nicht so schnell gekommen .... man muss auch wissen ich arbeite noch nicht so lang mit ado :? (jaja ich weiß billige ausrede :) )

Vielen dank nochmal ... die frage ist so zu sagen beantwortet! -> Morgen mal testen! :)

super hilfe, ich kann DP nur loben :) bin immer froh wenn ich sogar auf die simpelsten fragen nette antworten bekomme! :)

eF-eS 25. Jun 2006 18:03

Re: Access & Login :?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von marabu
wenn eine Access Datenbank im Projekt verwendet wird, dann wäre es doch das einfachste ein Password auf die Datenbank zu legen. Beim Connect wird dann automatisch ein Login-Dialog geführt. Wer mehr braucht kann auch den User-Level-Security Wizard verwenden, aber das scheint mir hier overkill zu sein.

Hallo, ich habe gerade das umgekehrte Problem:

Ich möchte mit BDE oder ADO auf eine mdb-Datei zugreifen. Da wird immer ein Passwort verlangt und ich weiss nicht, wo ich das gesetzt haben könnte.

Bitte schaut Euch die Anlage an - ich habe sogar angeklickt <Kein Passwort>.

Es ist zum verrückt werden.

Genauso: wenn ich im Datenbankexplorer den Baum für die Access-dateien öffnen will, dann werde ich auch nach einem Passwort gefragt. Ich habe hier aber definitv KEIN Passwort gesetzt.

Was kann ich tun?

Gruss Florian

Freecer 25. Jun 2006 18:31

Re: Access & Login :?
 
Welchen provider verwendest du? also Jet?

Sieht mir so aus als würde da was nicht passen....

andreash 25. Jun 2006 18:44

Re: Access & Login :?
 
Hi,

vielleicht ist der Verbindungsparameter "Jet OLEDB:System database" nicht korrekt gesetzt. :gruebel:

marabu 26. Jun 2006 10:10

Re: Access & Login :?
 
Hallo.

Ich würde den Verbindungsaufbau erstmal über eine UDL-Datei testen um Programmierfehler auszuschließen.

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:49 Uhr.

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