Πώς φτιάχνουμε Logon Trigger για να ελέγχουμε τους χρήστες που επιτρέπουμε να συνδεθούν σε Oracle Database

Πώς φτιάχνουμε Logon Trigger για να ελέγχουμε τους χρήστες που επιτρέπουμε να συνδεθούν σε Oracle Database
Πώς φτιάχνουμε Logon Trigger για να ελέγχουμε τους χρήστες που επιτρέπουμε να συνδεθούν σε Oracle Database

Πολλές φορές μπορεί για λόγους ασφαλείας να θέλουμε να συνδέονται συγκεκριμένοι χρήστες μόνο από συγκεκριμένα μηχανήματα – servers και σε περίπτωση που έρθει μία σύνδεση απο διαφορετικό μηχάνημα να μην επιτρέπει την πρόσβαση αλλά να εμφανίσει ένα μήνυμα απόρριψης.

Αυτό μπορούμε να το κάνουμε πολύ εύκολα σε βάση δεδομένων της Oracle με την δημιουργία ενός Logon Trigger τρέχωντας τον παρακάτω κώδικα. Το μόνο που χρειάζεται να αλλαχτεί ειναι το όνομα του χρήστη και των host που θέλουμε να επιτρέψουμε να συνδέονται:

CREATE OR REPLACE TRIGGER logon_trigger
AFTER LOGON ON DATABASE
BEGIN
  IF USER = 'STRATOS' AND SYS_CONTEXT('USERENV', 'HOST') not in ('oracledev1','oracledev2') THEN
    RAISE_APPLICATION_ERROR(-20001, 'You are not allowed to login from this host.');
  END IF;
END;
/

Όταν πάει πλέον να συνδεθεί κάποιος απο κάποιο host εκτός απο τα δύο αυτά που εξαιρέσαμε θα τους εμφανίσει το παρακάτω μήνυμα:

Πώς φτιάχνουμε Logon Trigger για να ελέγχουμε τους χρήστες που επιτρέπουμε να συνδεθούν σε Oracle Database
01

Για να το απενεργοποιήσουμε τρέχουμε το παρακάτω:

alter trigger logon_trigger disable;
Μοιράσου το

Αφήστε μία απάντηση