OFFICE OF THE ACCOUNTANT GENERAL (A&E), KERALA Management of Security in VLC Software.

Slides:



Advertisements
Similar presentations
Chapter 23 Database Security and Authorization Copyright © 2004 Pearson Education, Inc.
Advertisements

Understand Database Security Concepts
Oracle9i Database Administrator: Implementation and Administration 1 Chapter 12 System and Object Privileges.
Database Management System
System Administration Accounts privileges, users and roles
Oracle8 - The Complete Reference. Koch a& Loney1 By What Authority? Presented by Victor Matos.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 4 Profiles, Password Policies, Privileges, and Roles.
Administering User Security
A Guide to MySQL 3. 2 Objectives Start MySQL and learn how to use the MySQL Reference Manual Create a database Change (activate) a database Create tables.
Database Management Systems (DBMS)
Database Security Managing Users and Security Models.
10/5/1999Database Management -- R. Larson Data Administration and Database Administration University of California, Berkeley School of Information Management.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 3 Administration of Users.
Chapter 6: Integrity and Security Thomas Nikl 19 October, 2004 CS157B.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 3 Administration of Users.
SMART Agency Tipsheet Staff List This document focuses on setting up and maintaining program staff. Total Pages: 14 Staff Profile Staff Address Staff Assignment.
Chapter Oracle Server An Oracle Server consists of an Oracle database (stored data, control and log files.) The Server will support SQL to define.
By Lecturer / Aisha Dawood 1.  Administering Users  Create and manage database user accounts.  Create and manage roles.  Grant and revoke privileges.
14 Copyright © Oracle Corporation, All rights reserved. Managing Password Security and Resources.
CHAPTER 6 Users and Basic Security. Progression of Steps for Creating a Database Environment 1. Install Oracle database binaries (Chapter 1) 2. Create.
ORACLE LABEL SECURITY Evgeniya Kotzeva VEREO Technologies.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 6 Virtual Private Databases.
CSIS 4310 – Advanced Databases Virtual Private Databases.
Switch off your Mobiles Phones or Change Profile to Silent Mode.
9 Copyright © 2005, Oracle. All rights reserved. Administering User Security.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 4 Profiles, Password Policies, Privileges, and Roles.
Profiles, Password Policies, Privileges, and Roles
To Presentation on SECURITY By Office of the A.G. (A&E) Punjab, Chandigarh.
Chapter 13 Users, Groups Profiles and Policies. Learning Objectives Understand Windows XP Professional user accounts Understand the different types of.
Week 7 Lecture 1 Database Roles. Learning Objectives  Discover when and why to use roles  Learn how to create, modify, and remove roles  Learn how.
IS 221: DATABASE ADMINISTRATION Lecture 6:Create Users & Manage Users. Information Systems Department 1.
Moodle (Course Management Systems). Managing Your class In this Lecture, we’ll cover course management, including understanding and using roles, arranging.
I NTRODUCTION OF W EEK 7  Assignment Discussion  Graded: (Creation of Database) (All submitted!)  Naming standard, Logical to physical design.
The protection of the DB against intentional or unintentional threats using computer-based or non- computer-based controls. Database Security – Part 2.
7 Copyright © 2004, Oracle. All rights reserved. Administering Users.
Controlling User Access. Objectives After completing this lesson, you should be able to do the following: Create users Create roles to ease setup and.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
Managing users and security Akhtar Ali. Aims Understand and manage profiles Understand and manage users Understand and manage privileges Understand and.
Roles & privileges privilege A user privilege is a right to execute a particular type of SQL statement, or a right to access another user's object. The.
Dale Roberts 1 Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Computer Science, IUPUI
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
Controlling User Access Fresher Learning Program January, 2012.
What is a Package? A package is an Oracle object, which holds other objects within it. Objects commonly held within a package are procedures, functions,
Controlling User Access. 2 home back first prev next last What Will I Learn? Compare the difference between object privileges and system privileges Construct.
Permissions Lesson 13. Skills Matrix Security Modes Maintaining data integrity involves creating users, controlling their access and limiting their ability.
Database Security. Multi-user database systems like Oracle include security to control how the database is accessed and used for example security Mechanisms:
Academic Year 2014 Spring Academic Year 2014 Spring.
Chapter 5 : Integrity And Security  Domain Constraints  Referential Integrity  Security  Triggers  Authorization  Authorization in SQL  Views 
IST 318 Database Administration Lecture 9 Database Security.
Chapter 13Introduction to Oracle9i: SQL1 Chapter 13 User Creation and Management.
Oracle 11g: SQL Chapter 7 User Creation and Management.
Chapter 6 Virtual Private Databases
Database Security. Multi-user database systems like Oracle include security to control how the database is accessed and used for example security Mechanisms:
18 Managing Profiles Objectives Creating and assigning profiles to users Controlling use of resources with profiles Altering and dropping profiles.
7 Copyright © 2007, Oracle. All rights reserved. Administering User Security.
Intro To Oracle :part 1 1.Save your Memory Usage & Performance. 2.Oracle Login ways. 3.Adding Database to DB Trees. 4.How to Create your own user(schema).
Dr. Chen, Oracle Database System (Oracle) 1 Chapter 7 User Creation and Management Jason C. H. Chen, Ph.D. Professor of MIS School of Business Gonzaga.
SQL Triggers, Functions & Stored Procedures Programming Operations.
Database Systems Slide 1 Database Systems Lecture 4 Database Security - Concept Manual : Chapter 20 - Database Security Manual : Chapters 5,10 - SQL Reference.
Views / Session 3/ 1 of 40 Session 3 Module 5: Implementing Views Module 6: Managing Views.
6 Copyright © 2005, Oracle. All rights reserved. Administering User Security.
Controlling User Access
Controlling User Access
Oracle structures on database applications development
Controlling User Access
Controlling User Access
Database Security.
Database Security.
Managing Privileges.
INTRODUCTION A Database system is basically a computer based record keeping system. The collection of data, usually referred to as the database, contains.
Presentation transcript:

OFFICE OF THE ACCOUNTANT GENERAL (A&E), KERALA Management of Security in VLC Software

Security in VLC Software is administered by a user with DBA privileges, VLCADMIN, and is managed through the Administration Module. The Security and Administration module provides extensive security features to safeguard the data from both unauthorised viewing and intentional tampering. In addition, it maintains the users and defines users by creating roles and functions, audits all deleted records and checks SQL facilities. Security is provided by granting specific privileges to roles and then assigning roles to users. Roles are created by the administrator for every module by granting the type of access, full or read only, on related database objects depending on the module requirement and the status and responsibilities of the user. It is invoked from the Modules drop down Menu.

The first screen of the Administration Module offers the Menu for all Administration activities. The Main Menu item are >Module other Administration >Roles >Users >Report >Exit

Before going into the finer details of the sub menus a detour for a brief look at the security features in Oracle

Database Security Concepts Confidentiality, integrity, and availability are the hallmarks of database security. Securing your database involves not only establishing strong password policy, but also adequate access controls. Security is also about the weakest link. Databases should not provide a point of weakness.

Database Security Concepts (Contd…) Security in Oracle has several layers. The first layer of security is, of course, the RAW assignment and management of users. The second layer is the high-level system grants that give the user permission to create, alter, and use database objects such as tables, indexes, and clusters. The third layer of security is the object-level grants that allow users to interact with database objects. The fourth layer is the column grant layer that grants or restricts access to the specific columns inside a database object. The fifth layer involves the use of policies and contexts to control row level access. The final level of security deals with controlling access to system resources such as CPUs and is accomplished through the use of profiles and resource plans and groups.

In VLC Software the VLCADMIN user creates users using the ‘User Creation and Role Allocation’ sub menu under the ‘Users’ menu item

–Data is protected by  Defining the types/levels of users  Defining area of work for each user  Providing various tiers of security for each user  Types of Users : -Data Entry Operators -Supervisors -Management

VLC Software incorporates an added security feature. All sub menu actions are protected from unauthorised users. Each action calls for a separate log on thus preventing unauthorised users from adding/deleting or modifying Users, Roles or Modules.

The Administration module is so designed that first a module master is created. It is followed by the creation of Roles. A user can be created only after creation of Modules and Roles. This ensures effective implementation of the Oracle Security feature of user grants and privileges.

User Grants and Privileges >Privileges specify the type of Data Manipulation Language (DML) operations, which the user can perform upon data. >Two distinct categories of privileges within a database are : System Privileges Schema Object Privileges

System Privileges System privileges allow users to perform a particular systemwide action or a particular action on a particular type of schema object. For example, the privileges to create a tablespace, table or to insert or delete the rows of any table in the database are system privileges. Many system privileges are available only to administrators and application developers because the privileges are very powerful. User Grants and Privileges(Contd…)

Schema Object Privileges Schema object privileges for tables allow table security at the level of data manipulation language (DML) and data dictionary language (DDL) operations. Object privileges allow a user to perform a particular action on a specific object including tables, views, sequences, procedures, functions, and packages. For example, the privilege to insert rows into a particular table is an object privilege. Object privilege grants always include the name of the object for which the privilege is granted. User Grants and Privileges(Contd…)

Managing System and Object Privileges The user’s ability to supply a valid username and password can be used as a first level of authorization for a user to access a database or specific database tables. Additional techniques that can be used to further manage system and object privileges are: >Roles >Stored Procedures >Network Facilities >Views

Using Roles to Manage Privileges A Role mechanism can be used to provide authorisation. A single person or a group of people can be granted a role or a group of roles. One role can be granted in turn to other roles. By defining different types of roles, administrators can manage access privileges much more easily.

Use of Roles Roles are collections of system, object, and row grants. This allows the DBA to collect all related grants for a specific application function under one object that can then be easily granted to your users with a single command. Using roles has several benefits:

>Reduces the number of grants and thereby makes it easier to manage security >Dynamically changes the privileges for many users with a single grant/revoke >Can be selectively enabled/disabled depending upon the application >Reduces the number of grants and thereby makes it easier to manage security >Dynamically changes the privileges for many users with a single grant/revoke >Can be selectively enabled/disabled depending upon the application Use of Roles (Contd…)

>Roles can be used for most system and object privileges. Privileges granted through a role cannot be used for creating a stored object (views, packages, triggers, java, procedures, and function). You need to grant privileges directly to the user for this Use of Roles (Contd…)

At user level the privileges are assigned in VLC software as given below: The privileges for. –Data Entry operator (Select + Insert + Update + Delete), –Supervisors (select + Update Check Flag), -Management (Select)  Area of work for each user Each user would be working on a particular module or a part within a module. This is determined by providing privileges to roles

Overall security is managed in VLC Software in 3 security tiers +Tier I: Log on Level- Through Password protection +Tier II: Menu level. The user can operate that Module which is assigned to him - Through Roles. +Tier III: Form/Report Level. Only those tasks that the role permits -Through Modules. +Tier I: Log on Level- Through Password protection +Tier II: Menu level. The user can operate that Module which is assigned to him - Through Roles. +Tier III: Form/Report Level. Only those tasks that the role permits -Through Modules.

User Administration - Passwords Oracle supports a number of passwords features. You need to consider all of the following when you set password standards: >Passwords aging and expiration: To help ensure that a password will not be compromised, passwords should be changed on a system at least every three months. The decision of whether to enforce password aging and expiration should be identified in the security plan. The longer a password remains in effect for an account, the greater the possibility that the password can be compromised.

User Administration - Passwords (Contd….) >Password reuse : If a password will be permitted to be reused, restrict its use to no more frequently than every seventh password cycle. A better approach would be to completely exclude a password that has been used from being used by that person again. >Failed login attempts : The number of failed login attempts that will be tolerated on a system should be defined in the security plan. You must also determine the actions that should be taken when the number of failed login attempts has been exceeded.

User Administration - Passwords (Contd….) >Account locking and unlocking : If account locking is going to be enabled, you can define the personnel who will be in charge of performing the account unlocking. >Passwords in Oracle can now be aged and expired.

In Oracle one can manage passwords through profiles. Some of the parameters one can control are: FAILED_LOGIN_ATTEMPTS - failed login attempts before the account is locked PASSWORD_LIFE_TIME - limits the number of days the same password can be used for authentication PASSWORD_REUSE_TIME - number of days before a password can be reused PASSWORD_REUSE_MAX - number of password changes required before the current password can be reused

One can manage passwords through profiles. Some of the parameters one can control are: (Contd…) PASSWORD_LOCK_TIME - number of days an account will be locked after maximum failed login attempts PASSWORD_GRACE_TIME - number of days after the grace period begins during which a warning is issued and login is allowed PASSWORD_VERIFY_FUNCTION - password complexity verification script VLC Software incorporates the Oracle Security features through its menus. A detailed look at the software will clarify how it is implemented in the VLC Software

A Detailed look at Security and Administration Module of VLC Software The first step in the implementation of the Security features is the creation of the Module Master

VLCADMIN user has the privilege to create this Master table. Login as VLCADMIN user to use this menu item. Each module in the Software is given a Module Code. The relevant Forms and Reports are attached to the module through this form. The Form/Report Status flag is set to valid for the Forms/Reports to be available to users. If a Form/Report is to be made inaccessible to all users this flag is set to invalid.

The next step is the creation of Roles Roles are module dependent As users are of 3 types, Roles too have 3 types of classification.

The 3 types are: Data Entry Operators identified by D. Supervisors identified by S and Managers identified by M. +Again, depending on the type of access to objects, a further classification is made –ALL –Select –Insert etc. –The Role name is thus a combination of Module and the two classifications like AC_D_ALL1

Login as the owner of objects to create Roles After creation of the role, objects necessary to run the functions for that role are attached to the role. Depending on the groups of users, who will be assigned this role the privileges are checked in the check box. It could be All or a combination of Select, Update, Insert and Delete. If All is checked, checking any of the other items will throw an error message. And if one of the rest is checked, checking All will throw an error message.

In the VLC Software, VLC is the owner of all objects. Therefore, even after attaching the objects to the respective roles ORA error will be thrown up when a user tries to work with Forms/Reports in this module. This is overcome by creation of Public Synonyms for all objects. Clicking ‘Create Synonyms’ button creates synonyms for all objects in one go.

Once the appropriate Roles are created we are ready for creation of users Login as VLCADMIN to create users

You can choose the user type from the List, type the user name, userID Password, Section, Default tablespace, Temporary tablespace and Profile. The user account status is set as ‘valid’ by default. If you want to temporarily block a user this flag can be set to invalid. The Role/Roles allocated to the user is attached in the lower block.

SQL*PLUS Facilities #By default all SQL*PLUS privileges are disabled for all users. #Login as System to grant SQL*PLUS facilities. #The SQL*PLUS attributes can be selectively granted to a user by the System user.

A user’s password usage and resources can be controlled through profiles. The Administrative module has a form to create/modify profiles. We can limit the numbers of sessions for a user, and set values for idle time, failed login attempts, password reuse time, password lock time, connect time, password life time, password reuse maximum and password grace time. Use of profiles is an easy and efficient method of enforcing password control. Among other things, it will ensure that users will change passwords regularly.

After a user is created, the DBA communicates the userid and password (same as the userid, to begin with) to the user with instructions to change the password immediately. Passwords are changed using the following form:- The user logs in using the original password to this form. The new password is typed in the two text boxes. The program rejects passwords that are shorter than 6 characters. This, in fact, overcomes one of the vulnerabilities of Oracle in respect of length of password. Press the “Change Password” button and exit by pressing the “Exit” button.

Restriction on Forms and Reports The ‘Forms and Reports for users’ sub menu under Users menu item is used to restrict use of Forms and Reports. Only those Forms and Reports attached through this menu will be accessible to the user.

Restriction on Forms and Reports (Contd…) Even from among those Forms and Reports attached to a user, the DBA can restrict usage through the ‘User Form Status’ Flag. Only those Form/Reports whose status is ‘Valid’ is accessible to the user. By setting status to ‘Invalid’, access can be denied to any Form/Report, notwithstanding the fact that those Forms/Reports are attached to the user.

Audit of Deleted Records The Security and Administration Module provides auditing of deleted records. It keeps track of all deleted records. You can view the list of deleted records on screen. This is accessed through the ‘List of deleted records’ submenu under ‘Module Other Administration’ menu.

You can also generate hard copies of the list of deleted records. That was the preview of the report. The Report is generated using the ‘List of deleted records’ submenu under the ‘Reports’ Menu. Details are shown user-wise with date in the descending order.

Relation between Supervisors and DEOs VLC Software includes a feature whereby a supervisory user, with whom the software has established a supervisor-DEO relationship, is given the privilege to update, or delete records entered by DEOs. These relationships are created through the ‘Supervisor DEO Master’ sub menu under the ‘Module Other Administration’ Menu.

Relation between Supervisors and DEOs (Contd…) Userids and usernames of all DEOs under a Supervisor are attached through this form. Once the relationship is established the supervisor gets the privilege to update or delete records entered by DEOs supervised by him/her. This is helpful in making corrections when the Supervisory user checks data entered by the DEOs.

Need for enhancement through Backend Privilege Management Oracle has a few more facilities for privilege management like –Stored procedures –Views and –Virtual Private Database (VPD)

Stored Procedures Through stored procedures you can restrict the database operations that users can perform. You can allow them to access data only through procedures and functions that execute with the definers privileges. For example you can grant users access to a procedure that updates a table, but not grant them access to the table itself. Users who have only privilege to execute the procedure can invoke the procedure but they cannot manipulate table data in any other way.

Views A view can limit access to only selected columns of the base table. A view can provide view based security for the information in a table. A where clause in the definition of a view restricts the display to only selected rows of the base table. To use a view requires privileges only for the view itself and not on the base table/object underlying the view.

Row Level Security *Row level Access to data is a granular form of data access. *Access to particular rows is based on such considerations as the department to which the user belongs, his job responsibility and other significant factors. *Views are used to implement row level security. *There are two more effective approaches to row level security. >They are : Virtual Private Database (VPD) and Label Based Access Control.

Virtual Private Database (VPD) VPD is the ability to perform query modification based on security policy you have defined in a package. It is associated with a table, view or a synonym. VPD provides Fine Grained Access Control. FGAC is data driven, context-dependent and row-based. VPD enables one to store data belonging to other sections/offices in the same schema, without their knowing about it.

Label Security (Label Based Access Control) Label Security uses the VPD feature of Oracle8i to implement row level security. Access to rows are restricted according to a user’s security sensitivity tag or label to data rows. Data is also marked with appropriate sensitivity label. Label security is configured, controlled and managed by the Policy Manager utility.

Label Security (Label Based Access Control) (Contd…) Implementation of such fine grained control of privileges enhances security and prevents unauthorised access to a very large extent. The modular structure of VLC software segregates data and imposes access restriction. However, enhancement of privilege management through backend further fine tunes security.

Thank you