Oracle Database Security Policy Checklist

Objectives
To develop a security policy to outline and map the enforcement of the use of security plan.

Scope
ORACLE database security related

How
In order to set the right policy, we need to perform a risk assessment in order to understand exactly which sort of security policy is needed to put in place.

General Checklist& Assessment
Item
Y/N
Current Solution
Proposed Solution
1.       Standards of username for OS Account
[a. Combination of person’s first and last name?]



2.       Standards of username for Database Account



3.       Passwords guidelines for aOS Account
[a. Password aging and expiration]
[b. Password reuse? DBA indicates that the user cannot reuse her password for 60 days?]
[c. Failed login attempts]
[d. Account locking and unlocking. A security manager will have to intervene to unlock a locked account?]
[e. Password complexity
·         The password has a minimum length of 4.
·         The password is not the same as the USERID.
·         The password has at least one alpha, one numeric, and one punctuation mark.
·         The password does not match simple words like welcome, account, database, or user.
·         The password differs from the previous password by at least 3 letters.]



4.       Passwords guidelines for aDatabase Account



5.       How many different types of user account are there?
       [Admin/ Security admin/application developer/support user/end user?]



6.       Privilege Management
       [a. Roles, user group and access grant]  



7.       Revoking access to an Application for those who tasked to a different role.



8.       Revoking access to an application for people who leaves the Company



9.       Removing access to a USERID for a Database Account



10.   Revoking access for abruptly termination of an employee



11.   REINSTATING USERID



12.   Restriction access to database?



13.   Data backup?
[What, when and method used?]



14.   Data retention and destruction?



15.   System maintenance




Oracle Database Vault
This is to prevent highly privilege and powerful DBAs from accessing sensitive applications or information outside their responsibility.

Objective
-          To prevent DBA to have full access control
-          To prevent insiders threat

Define threat
Solution
PL/SQL Packages: UTL_FILE, DBMS_FILE_TRANSFER, LogMiner Packages

Privileges: CREATE ANY JOB, CREATE JOB, CREATE EXTERNAL JOB, ALTER SYSTEM and ALTER SESSION

The Recycle Bin

Java Stored Procedures and External C Callouts

Trusted accounts: Oracle software owner OS account and SYSDBA users.


Two things needs to be define
1.       Who and what to limit
2.       How to protect super user
Roles and responsibility
Items
Input
Who are the  key players?

Required IT governance to oversee implement

Identified the specific types of accounts required for each system--both operating system and database?

Determined who will have authority to approve accounts?

Determined who will create/delete/manage accounts?

Determined a user tracking method and implementation?

Decided how account approval will be performed: email, web site, hard-copy form, etc.?

Identified all affected applications on each system?

Identified a username and password structure?

Determined what constitutes a security breach and the appropriate penalty for each breach?

Identified all sensitive data on the system and created methods to protect that data?

Determined what forms of monitoring will be used?

Determined what forms of backup will be used?

Created recovery procedures to be followed?

Determined the required availability for the database?

Established standards for views and roles?



Security Plan Spreadsheet
Component
Database A
Database B
Database C
Platform/Division



Database/SID Name



Database Function



Application(s)



Application Owner



Username



Password



Access Type



Authorization Mode



Person to Create Account



Auditing Type



Form(s) of Backup



Recovery Procedure



Database Availability



Auditor



Roles Required



Grants Required