Oracle Label Security OLS
Szintek
Kategóriák
Csoporthierachia
Csoportok
Címkék SENSITIVE:FINANCIAL,CHEMICAL: EASTERN_REGION,WESTERN_REGION CONFIDENTIAL:FINANCIAL:WR_FIN SENSITIVE HIGHLY_SENSITIVE:FINANCIAL SENSITIVE::WESTERN_REGION
Adatelérési háromszög
Hozzáférés a címkék alapján
Munkamenet címke
Szint
Kategória
Csoport
Írási jog
Olvasás
Írás
COMPACCESS jog olvasással
COMPACCESS jog írással
Privilégium rendelése kódhoz PROCEDURE SET_PROG_PRIVS ( policy_name IN VARCHAR2, schema_name IN VARCHAR2, program_unit_name IN VARCHAR2, privileges IN VARCHAR2)
Példa CREATE FUNCTION sum_purchases RETURN NUMBER IS psum NUMBER; BEGIN SELECT SUM(amount) INTO psum FROM purchase_orders; RETURN psum; END sum_purchases; EXECUTE sa_user_admin.set_prog_privs ( 'HR','myschema','sum_purchases','READ');
Oracle Advanced Security OAS
Központosított autentikáció 1.A felhasználó (kliens) autentikációt kér és megadja az azonosító információkat (jelszó, token, stb) 2.Az autentikációs szerver validálja az azonosító információkat és visszaküld a kliensnek egy jegyet (ticket) vagy egy tanúsítványt, amelyben van érvényességi idő 3.A kliens elküldi a szolgáltatáskéréssel együtt a jegyet az Oracle szervernek
Központosított autentikáció 4. Az Oracle szerver elküldi az autentikációs szerverhez a jegyet ellenőrzésre 5. Az ellenőrzi és visszajelez 6. Ha érvényes, akkor az Oracle szerver is autentikálja a klienst, különben megtagadja a kérést
Támogatott autentikációs módszerek Kerberos RADIUS SSL Entrust/PKI
Adapterek
Enterprise User Security EUS
Oracle Database Vault ODV
Komponensek (biztonsági) tartomány parancs szabály faktor szabályhalmaz
Példa Adjunk riasztást, ha egy felhasználó meg akar változtatni egy táblát a karbantar- tási időszakon kívül. Ehhez: -létrehozunk egy szabályt, amely beállítja a karbantartási időszak óráit - ezt a szabályt hozzáadjuk egy szabály- halmazhoz
Példa -létrehozunk egy parancs szabályt, amely engedélyezi a felhasználónak a tábla mó- dosítását - hozzárendeljük a szabályhalmazt a pa- rancs szabályhoz
Belépünk és t kezelünk sqlplus sys as sysdba Enter
Újraindítjuk az adatbázist ALTER SYSTEM SET SMTP_OUT_SERVER= "my_imap_mail_server.example.com" CONNECT SYS/AS SYSOPER Enter password: password SHUTDOWN IMMEDIATE STARTUP
Jogosultságok kiosztása CONNECT SYS/AS SYSDBA Enter password: password GRANT CREATE PROCEDURE, DROP ANY PROCEDURE TO lbrown_dvowner; GRANT EXECUTE ON UTL_TCP TO lbrown_dvowner; GRANT EXECUTE ON UTL_SMTP TO lbrown_dvowner; GRANT EXECUTE ON UTL_MAIL TO lbrown_dvowner; GRANT EXECUTE ON DBMS_NETWORK_ACL_ADMIN TO lbrown_dvowner; CONNECT lbrown_dvowner Enter password: password
riasztás CREATE OR REPLACE PROCEDURE _alert AS msg varchar2(20000) := 'Realm violation occurred for the ALTER TABLE Command Security Policy rule set. The time is: '; BEGIN msg := msg||to_char(SYSDATE, 'Day DD MON, YYYY HH24:MI:SS'); UTL_MAIL.SEND ( sender => recipients => subject => 'Table modification attempted outside maintenance!', message => msg); END _alert; /
Futtatási jog GRANT EXECUTE ON _alert TO DVSYS;
ACL BEGIN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL ( acl => 'mail_server_permissions.xml', description => 'Enables network permissions for the mail server', principal => 'LBROWN_DVOWNER', is_grant => TRUE, privilege => 'connect'); END; /
ACL hozzárendelése a levelezőszerverhez BEGIN DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL ( acl => 'mail_server_permissions.xml', host => 'SMTP_OUT_SERVER_setting', lower_port => port); END; / COMMIT;
Szabályhalmaz létrehozása BEGIN DVSYS.DBMS_MACADM.CREATE_RULE_SET( rule_set_name => 'ALTER TABLE Command Security Policy', description => 'This rule set allows ALTER TABLE only during the maintenance period.', enabled => 'Y', eval_options => 1, audit_options => DBMS_MACUTL.G_RULESET_AUDIT_FAIL, fail_options => DBMS_MACUTL.G_RULESET_FAIL_SILENT, fail_message => '', ail_code => NULL, handler_options => DBMS_MACUTL.G_RULESET_HANDLER_FAIL, handler => 'dbavowner. _alert'); END; /
Szabály létrehozása BEGIN DVSYS.DBMS_MACADM.CREATE_RULE( rule_name => 'Restrict Access to Maintenance Period', rule_expr => 'TO_CHAR(SYSDATE,''HH24'') BETWEEN ''14'' AND ''15'''); END; /
Syabály hozzáadása a szabályhalmazhoz BEGIN DBMS_MACADM.ADD_RULE_TO_RULE_SET( rule_set_name => 'ALTER TABLE Command Security Policy', rule_name => 'Restrict Access to Maintenance Period'); END; /
Parancs szabály létrehozása BEGIN DVSYS.DBMS_MACADM.CREATE_COMMAND_RULE( command => 'ALTER TABLE', rule_set_name => 'ALTER TABLE Command Security Policy', object_owner => 'SCOTT', object_name => '%', enabled => 'Y'); END; / COMMIT;