ارسال unified audit trail به syslog و Event Viewer(اوراکل 18c/19c)

در اوراکل 18c، پارامتری به نام UNIFIED_AUDIT_SYSTEMLOG اضافه شد که امکان نوشتن unified audit trail را در محیط سیستم عامل فراهم می کند با این قابلیت می توان فیلدهای کلیدی unified audit trail را در محیط لینوکس به syslog و در محیط ویندوز به Event Viewer فرستاد.

SQL>  show parameter unified_audit_systemlog

NAME                                   TYPE       VALUE

————————————    ———- ———-

unified_audit_systemlog             string

قصد داریم با طی چند مرحله، این قابلیت را در محیط لینوکس پیکربندی کنیم.

(بیشتر…)

اوراکل 19c- ایجاد کاربران سیستمی به صورت Schema Only Account

با ایجاد دیتابیس اوراکل، به ازای هر component انتخابی، تعدادی user ایجاد خواهند شد. برای نمونه، اسامی تعدادی از componentها به همراه کاربرانی که برای آنها ایجاد می شود را در قسمت زیر می بینید:

Oracle Multimedia: MDSYS,ORDDATA,ORDPLUGINS,SI_INFORMTN_SCHEMA

Oracle Database Vault: DVF,DVSYS

Oracle XML Database: ANONYMOUS

Oracle Text: CTXSYS

تا قبل از اوراکل 19c، برای این نوع از کاربران سیستمی، از روش احراز هویت، PASSWORD استفاده می شد به همین جهت، با ایجاد دیتابیس در این نسخه ها(قبل از 19c)، تعداد زیادی از کاربران، پسورد default داشتند.

(بیشتر…)

اوراکل 19c- ویژگی Audit Only Top-Level SQL Statements

در صورتی که حجم لاگ ایجاد شده توسط قابلیت unified auditing نسبتا زیاد باشد، برای مراجعه و نگهداری اطلاعات audit trail، ممکن است با مشکل پرفورمنس و کمبود استوریج مواجه شویم بنابرین auditing باید طوری پیکربندی شود که حتی المقدور، اطلاعات اضافه ای در جدول مربوطه، ثبت نگردد.

ویژگی جدید اوراکل 19c که Auditing Only Top-Level SQL Statements نام دارد، می تواند در این زمینه موثر واقع شود.

(بیشتر…)

ویژگی Schema Only Accounts در اوراکل 18c و 19c

در نسخه های ماقبل اوراکل 18c، ایجاد یک user تنها با تعیین متد AUTHENTICATION آن امکان پذیر است و به صورت کلی، در این نسخه ها(12c,11g,10g)، سه متد AUTHENTICATION برای کاربران وجود دارد:

Password: create user usef1 identified by password;

External: create user usef2 identified externally;

Global: create user usef3 identified globally;

در صورت استفاده از متد Password، شکل hash شده پسورد کاربر در جدولی از بانک ذخیره شده(جدول $user) و در دو حالت دیگر(External – Global)، پسوردی از کاربر در دیتابیس ذخیره نخواهد شد و AUTHENTICATION خارج از دیتابیس انجام می شود.

اوراکل 18c با ارائه یک قابلیت جدید، امکان ساخت user را بدون تعیین متد AUTHENTICATION فراهم کرد که استفاده از این قابلیت، منتج به عدم امکان لاگین مستقیم به این نوع از کاربران خواهد شد.

(بیشتر…)

اتصال از راه دور به دیتابیس بدون استفاده از listener

پرسش: چگونه می توان در زمان پایین بودن سرویس listener، به صورت از راه دور به دیتابیس متصل شد؟

در متن پیش رو، خواهیم دید که علاوه پروسس listener، پروسس های دیگری چون Dispatcher، هم امکان اتصال از راه دور را فراهم می کنند.

(بیشتر…)

lock/unlock کردن کاربران بدون داشتن مجوز alter user

قصد داریم به کاربری “مجوز unlock کردن کاربران دیگر” را اهدا کنیم! می دانیم که این کار با دادن مجوز alter user به آن کاربر، قابل انجام خواهد بود منتها این مجوز، قابلیتهای دیگری چون تغییر پسورد کاربران، قفل کردن آنها و … را هم به آن کاربر خواهد داد!

در نتیجه، اهدای مجوز alter user، گزینه مناسبی برای این کار نخواهد بود و باید به دنبال راه حل دیگری برای حل این مسئله باشیم!

(بیشتر…)

Auditing در محیط Active Data Guard

در زمان استفاده از Active Data Gaurd، ممکن است نیاز باشد تا نظارتی بر روی دسترسی کاربران به جداول صورت پذیرد. با توجه به read only بودن ADG، طبیعی است که امکان استفاده از $aud برای ثبت auditing امکان پذیر نخواهد بود و تنظیم پارامتر audit_trail به مقدار DB نمی تواند در این محیط موثر باشد.

(بیشتر…)

سیر تکاملی ذخیره سازی پسورد کاربران dblink(ویژگی DICTIONARY CREDENTIALS ENCRYPT)

در اوراکل 10gR1، پسورد کاربران استفاده شده برای dblink، بدون رمزنگاری و بصورت کاملا شفاف(clear text) در جداول data dictionary ذخیره می شدند و امکان مشاهده کلمه عبور به صورت clear text، از طریق ویوهای data dictionary امکان پذیر بود:

SQL*Plus: Release 10.1.0.4.2 – Production on Wed Apr 18 11:23:01 2018

SQL> create database link dblinkname connect to usef identified by “pass@123” using ‘tns_name’;

Database link created.

SQL> select DB_LINK,USERNAME,PASSWORD  from USER_DB_LINKS;

DB_LINK              USERNAME   PASSWORD

——————– ———- ———-

DBLINKNAME      USEF       pass@123

(بیشتر…)

تهیه دامپ از جداول auditing در اوراکل 12c

در اوراکل 11g، امکان گرفتن دامپ از جدول $aud با کمک data pump وجود ندارد:

[oracle@myhost ~]$ expdp directory=mrm dumpfile=aud.dmp tables=aud$

Export: Release 11.2.0.4.0 – Production on Sat Dec 8 17:30:47 2018

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

Starting “SYS”.”SYS_EXPORT_TABLE_01″:  sys/******** AS SYSDBA directory=mrm dumpfile=aud.dmp tables=aud$

Estimate in progress using BLOCKS method…

Total estimation using BLOCKS method: 0 KB

ORA-39166: Object SYS.AUD$ was not found.

ORA-31655: no data or metadata objects selected for job

Job “SYS”.”SYS_EXPORT_TABLE_01″ completed with 2 error(s) at Sat Dec 8 17:30:59 2018 elapsed 0 00:00:04

(بیشتر…)