Cek siapa yang login ke database Oracle

Ya, Anda bisa mengetahui siapa yang login ke database Oracle, dari IP mana, dan jam berapa dengan menggunakan view audit atau fitur Oracle Unified Auditing (tergantung pada konfigurasi database Anda). Berikut beberapa cara untuk mengeceknya:


1. Menggunakan View AUD$ (Jika Audit Traditional diaktifkan)

Oracle menyimpan informasi audit di tabel SYS.AUD$. Gunakan query berikut untuk melihat siapa yang login:

SELECT USERID, TERMINAL, TIMESTAMP, ACTION_NAME
FROM SYS.AUD$
WHERE ACTION_NAME = 'LOGON'
ORDER BY TIMESTAMP DESC;
  • USERID → Nama pengguna yang login
  • TERMINAL → IP atau nama komputer yang digunakan
  • TIMESTAMP → Waktu login
  • ACTION_NAME → Tindakan yang dilakukan (misalnya, LOGON)

Catatan: Pastikan auditing diaktifkan dengan perintah berikut:

SHOW PARAMETER audit_trail;

Jika nilainya DB, EXTENDED, maka audit sudah aktif.


2. Menggunakan View UNIFIED_AUDIT_TRAIL (Jika Unified Auditing Aktif)

Jika database Anda menggunakan Unified Auditing (Oracle 12c ke atas), gunakan query berikut:

SELECT DBUSERNAME, EVENT_TIMESTAMP, OS_USERNAME, USERHOST, IP_ADDRESS
FROM UNIFIED_AUDIT_TRAIL
WHERE ACTION_NAME = 'LOGON'
ORDER BY EVENT_TIMESTAMP DESC;
  • DBUSERNAME → Nama pengguna database
  • EVENT_TIMESTAMP → Waktu login
  • OS_USERNAME → Nama pengguna di sistem operasi
  • USERHOST → Nama komputer atau server
  • IP_ADDRESS → Alamat IP pengguna

Catatan: Pastikan Unified Auditing aktif dengan perintah:

SELECT VALUE FROM V$OPTION WHERE PARAMETER = 'Unified Auditing';

3. Menggunakan V$SESSION untuk Melihat Koneksi Saat Ini

Jika ingin melihat siapa yang sedang login sekarang, gunakan:

SELECT SID, SERIAL#, USERNAME, MACHINE, TERMINAL, STATUS, LOGON_TIME
FROM V$SESSION
WHERE USERNAME IS NOT NULL
ORDER BY LOGON_TIME DESC;
  • SID & SERIAL# → Identitas sesi
  • USERNAME → Nama pengguna
  • MACHINE → Nama komputer pengguna
  • TERMINAL → Terminal yang digunakan
  • STATUS → Status sesi (ACTIVE atau INACTIVE)
  • LOGON_TIME → Waktu login

Kesimpulan

  • Gunakan SYS.AUD$ atau UNIFIED_AUDIT_TRAIL untuk audit login.
  • Gunakan V$SESSION untuk melihat koneksi yang sedang aktif.
  • Pastikan auditing diaktifkan agar bisa merekam aktivitas login.

Komentar

Postingan populer dari blog ini

Goyang Ebot: Fenomena Joget Viral yang Menghebohkan Dunia Maya

RPM (Revenue Per Mille) yang Tinggi

Melihat ERD (Entity-Relationship Diagram) dari schema di Oracle