Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Paradox Tabelle mit Passwort (https://www.delphipraxis.net/7052-paradox-tabelle-mit-passwort.html)

Mauli 31. Jul 2003 14:05


Paradox Tabelle mit Passwort
 
Hallo,

gerade ist mir eine Paradox Tabelle unter gekommen, die wohl nur mir einem Passwort geöffnet werden kann.

Das Passwort ist mir zwar bekannt. Allerdings muss ich dieses in den Quelltext mit einfügen :?:

Ich habe keine Ahnung, wie ich das anstellen soll. Hat jeman von euch damit erfahrung?

Danke

APP 1. Aug 2003 06:50

Re: Paradox Tabelle mit Passwort
 
Hallo,

Zitat:

To assign a password to a Paradox table, use the following unit and call function TablePasswort like this:

uses Unit2;
// ..
TablePasswort (Table1, 'secret');
Delphi-Quellcode:
unit Unit2;

interface

uses
  BDE, SysUtils, DBTables, Windows;

function TablePasswort(var table: TTable; password: String) : Boolean;

implementation

function StrToOem(const AnsiStr: String) : String;
begin
  SetLength(result, Length(AnsiStr));
  if Length(result)>0 then
    CharToOem(PChar(AnsiStr), PChar(result))
end;


function TablePasswort(var table: ttable; password: String) : Boolean;
var
  pTblDesc : pCRTblDesc;
  hDb     : hDBIDb;
begin
  result := false;
  with table do
  begin
    if Active and (not Exclusive) then
      Close;
    if (not Exclusive) then
      Exclusive := true;
    if (not Active) then
      Open;
    hDb := DBHandle;
    Close
  end;
  GetMem(pTblDesc, sizeof(CRTblDesc));
  FillChar(pTblDesc^, sizeof(CRTblDesc), 0);
  with pTblDesc^ do
  begin
    StrPCopy(szTblName, StrToOem(table.tablename));
    szTblType := szParadox;
    StrPCopy(szPassword, StrToOem(password));
    bPack := true;
    bProtected := true
  end;
  if DbiDoRestructure(hDb, 1, pTblDesc, nil, nil, nil, false)<>DBIERR_NONE then
    exit;
  if pTblDesc<>nil then
    FreeMem(pTblDesc, sizeof(CRTblDesc));
  result := true
end;


end.
Quelle: Assign a password to a Paradox table

hacki 12. Sep 2003 20:32

Re: Paradox Tabelle mit Passwort
 
Hi,

also mit dem hier beschriebenem weise ich einer paradox tabelle ein passwort zu:

Code:
TablePasswort(MasterTable, InternalPassword);
Wie kann ich die Tabelle aber nun, mit dem mir bekanntem Passwort im Programm zur Verwendung öffnen ? Wenn ich sie "normal" öffne:

Code:
MasterTable.Open;
poppt ein Kennwortfenster hoch und verlangt ein passwort. Ich will die Tabelle mit meinem bekanntem Passwort öffnen.

Die Zuweisung des Passwortes soll nur verhindern, daß jemand außerhalb meines programmes auf den Tabellenihnalt zugreift, der das passwort nicht kennt.

wie kann ich das machen ?

greetings
hacki

MrSpock 13. Sep 2003 11:03

Re: Paradox Tabelle mit Passwort
 
Hallo hacki,

die Session verwaltet eine Liste aller vom Benutzer eingegebenen Passworte und öffnet jede Tabelle, die dieses Passwort nutzt. Du fügst also der Seson einfach das dir bekannte Passwort hinzu:

Delphi-Quellcode:
Session.AddPassword('DasPasswort');
{ Jatzt kannst du die Tabelle öffnen }
MyTable.Open;

APP 13. Sep 2003 14:24

Re: Paradox Tabelle mit Passwort
 
Hallo hacki,

ich möchte Dir nicht die Laune verderben, aber falls Du in Deine
Paradox-Datenbank wichtige Daten speichern möchtest, und Deine User
nicht gerade DAUs sind, solltest Du wissen, dass in Paradox 7.0 / 5.0
und 4.x massive Sicherheitslücken existieren.

Es gibt für die drei o.g. Versionen Standardpassworte die jede
Passwortgeschützte Tabelle öffnen!

Da jederman googeln kann, hier sogar ein Link zu den Schweizern: http://www.swissdelphicenter.ch/de/showcode.php?id=211


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:05 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