 |
forum.synerpy.de Synerpys User Forum zu AvERP
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
hoFFy
Anmeldungsdatum: 02.11.2007 Beiträge: 259 Wohnort: Diepholz
|
Verfasst am: Do Feb 18, 2010 4:14 pm Titel: Protokollierungsmöglichkeit wer sich von wo angemeldet hat |
|
|
Hallo,
vielleicht gibt es sie schon, aber wir würden uns eine Möglichkeit wünschen, mit der sich protokollieren ließe welcher Benutzername sich wann von welcher IP-Adresse (oder MAC-Adresse) aus angemeldet hat, oder sogar auch wer sich angemeldet hat und wo Anmeldungen fehlgeschlagen sind.
Hintergrund ist der Missbrauch von Anmeldenamen in unserem AvERP um Fähigkeiten eines Benutzernamens auszunutzen die der eigene nicht bietet... was natürlich absolut unerwünscht ist und hart geahndet wird. _________________ Windows - Wenn du nicht wissen willst, warum es nicht funktioniert
Mac - Wenn du nicht wissen willst, warum es funktioniert
Linux - Wenn du wissen willst, warum es funktioniert |
|
| Nach oben |
|
 |
admin Site Admin
Anmeldungsdatum: 10.02.2004 Beiträge: 2387 Wohnort: Bayreuth
|
Verfasst am: Mo Feb 22, 2010 10:36 am Titel: |
|
|
| Wir protokollieren derzeit nur die Daten in A_AKTIVUSER. In FB2.x werden die anderen genannten Parameter automatisch in den Systemtabellen von FB gespeichert. Wir machen das derzeit allerdings nicht. |
|
| Nach oben |
|
 |
hoFFy
Anmeldungsdatum: 02.11.2007 Beiträge: 259 Wohnort: Diepholz
|
Verfasst am: Mo Feb 22, 2010 10:54 am Titel: |
|
|
Also wir setzen ja FB 2.1 ein, aber ich kann im IBExpert keine Systemtabelle finden, die die entsprechenden Werte bereit stellt. Auf der Firebirdhomepage habe ich einen Hinweis darauf gefunden, wie man Loginversuche schon damals bei Interbase loggen konnte, dort scheint aber nicht der Ursprung des Logins aufgezeichnet zu werden.
Oder meinten Sie, dass die Daten schon jetzt von Anfang an, ohne Änderung, geloggt werden, ich sie nur nicht finden konnte? _________________ Windows - Wenn du nicht wissen willst, warum es nicht funktioniert
Mac - Wenn du nicht wissen willst, warum es funktioniert
Linux - Wenn du wissen willst, warum es funktioniert |
|
| Nach oben |
|
 |
admin Site Admin
Anmeldungsdatum: 10.02.2004 Beiträge: 2387 Wohnort: Bayreuth
|
Verfasst am: Mo Feb 22, 2010 1:28 pm Titel: |
|
|
Ich habe gerade keine FB2.x-Installation zur Hand, um die genauen Tabellen abzufragen, aber über Context-Variablen müsste es auch gehen:
| Code: |
select rdb$get_context('SYSTEM', 'NETWORK_PROTOCOL') as protocol,
rdb$get_context('SYSTEM', 'CLIENT_ADDRESS') as client_address from rdb$database;
|
|
|
| Nach oben |
|
 |
ibexpert
Anmeldungsdatum: 30.04.2004 Beiträge: 20
|
Verfasst am: Do Feb 25, 2010 11:26 pm Titel: |
|
|
| hoFFy hat folgendes geschrieben:: | Also wir setzen ja FB 2.1 ein, aber ich kann im IBExpert keine Systemtabelle finden, die die entsprechenden Werte bereit stellt. Auf der Firebirdhomepage habe ich einen Hinweis darauf gefunden, wie man Loginversuche schon damals bei Interbase loggen konnte, dort scheint aber nicht der Ursprung des Logins aufgezeichnet zu werden.
Oder meinten Sie, dass die Daten schon jetzt von Anfang an, ohne Änderung, geloggt werden, ich sie nur nicht finden konnte? |
einfach mal in der DB einen neuen Trigger mit rechtsklick auf den Trigger eintrag im Explorer machen und dann oben auf database trigger umschalten.
http://www.ibexpert.net/ibe/index.php?n=Doc.Trigger#DBTriggerTypes
Im OnConnect bekommt man das passende event. Dann z.B. über die Context variablen oder über die Inhalte der Tabelle mon$attachments suchen mit current_connection und das in eine eigenen Tabelle schreiben.
Gruß
Holger
www.ibexpert.com |
|
| Nach oben |
|
 |
hoFFy
Anmeldungsdatum: 02.11.2007 Beiträge: 259 Wohnort: Diepholz
|
Verfasst am: Fr März 05, 2010 8:24 am Titel: |
|
|
Okay, dann muss ich wohl warten bis unser Programmierer wieder im Hause ist, denn um einen solchen Trigger zu erstellen fehlen mir schlichtweg, wie geschrieben, die Kenntnisse. _________________ Windows - Wenn du nicht wissen willst, warum es nicht funktioniert
Mac - Wenn du nicht wissen willst, warum es funktioniert
Linux - Wenn du wissen willst, warum es funktioniert |
|
| Nach oben |
|
 |
ibexpert
Anmeldungsdatum: 30.04.2004 Beiträge: 20
|
Verfasst am: Sa März 06, 2010 9:50 am Titel: |
|
|
| hoFFy hat folgendes geschrieben:: | | Okay, dann muss ich wohl warten bis unser Programmierer wieder im Hause ist, denn um einen solchen Trigger zu erstellen fehlen mir schlichtweg, wie geschrieben, die Kenntnisse. |
Hi, Hoffy,
da gibt es zwei Lösungsmöglichkeiten:
1. warten
2. deine Kenntnisse erweitern (machen wir auch gerne im Rahmen der Hotline)
zu 2.
im IBExpert script executive folgendes script ausführen
| Code: |
/******************************************************************************/
/**** Generated by IBExpert 06.03.2010 09:46:09 ****/
/******************************************************************************/
/******************************************************************************/
/**** Following SET SQL DIALECT is just for the Database Comparer ****/
/******************************************************************************/
SET SQL DIALECT 3;
/******************************************************************************/
/**** Tables ****/
/******************************************************************************/
CREATE GENERATOR ID;
CREATE TABLE IBE$LOGCONNECT (
ID BIGINT NOT NULL,
USR VARCHAR(30),
PRG VARCHAR(255),
TME TIMESTAMP,
IP VARCHAR(255)
);
/******************************************************************************/
/**** Primary Keys ****/
/******************************************************************************/
ALTER TABLE IBE$LOGCONNECT ADD PRIMARY KEY (ID);
/******************************************************************************/
/**** Triggers ****/
/******************************************************************************/
SET TERM ^ ;
/******************************************************************************/
/**** Triggers for tables ****/
/******************************************************************************/
/* Trigger: IBE$LOGCONNECT_BI */
CREATE OR ALTER TRIGGER IBE$LOGCONNECT_BI FOR IBE$LOGCONNECT
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(ID,1);
END
^
SET TERM ; ^
/******************************************************************************/
/**** Privileges ****/
/******************************************************************************/
/* Privileges of users */
GRANT ALL ON IBE$LOGCONNECT TO PUBLIC;
SET TERM ^ ;
CREATE OR ALTER TRIGGER IBE$LOGCONNECT_I
ACTIVE ON CONNECT POSITION 0
AS
begin
insert into IBE$LOGCONNECT (USR, PRG, TME, IP)
select current_user,mon$attachments.mon$remote_process,current_timestamp,mon$attachments.mon$remote_address
from mon$attachments
where mon$attachments.mon$attachment_id=current_connection;
end
^
SET TERM ; ^
|
|
|
| Nach oben |
|
 |
hoFFy
Anmeldungsdatum: 02.11.2007 Beiträge: 259 Wohnort: Diepholz
|
Verfasst am: Mo März 08, 2010 9:39 am Titel: |
|
|
| ibexpert hat folgendes geschrieben:: | [...]
2. deine Kenntnisse erweitern (machen wir auch gerne im Rahmen der Hotline)
zu 2.
im IBExpert script executive folgendes script ausführen [...] |
Hallo,
das mit dem Script einspielen hat prima funktioniert, die Spalte "IP" liefert genau das was ich benötige. Nur hat die Sache einen Haken:
Auf dem einen Server wird die IP-Adresse korrekt angezeigt, auf dem anderen, dem Produktivsystem erhalte ich nur 0.0.0.0. Ich kann die Ursache jedoch nicht feststellen. Schon in mon$remote_address steht 0.0.0.0 drin.
Wir arbeiten mit zwei Netwerksegmenten 192.168.1.x und 192.168.2.x. Der Server verfügt über 2 Netzwerkkarten, jede für ein Netzwerksegment. Kann hier evtl. der Ursprung dafür liegen, dass die IP-Adressen nicht mit angegeben werden?
Der andere Server verfügt nur über eine Netzwerkkarte, er zeigt mir meine IP-Adresse wenn ich mich einlogge korrekt an. _________________ Windows - Wenn du nicht wissen willst, warum es nicht funktioniert
Mac - Wenn du nicht wissen willst, warum es funktioniert
Linux - Wenn du wissen willst, warum es funktioniert |
|
| Nach oben |
|
 |
|
|
Sie können keine Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum nicht antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group
|