Understand Database Security Concepts

Slides:



Advertisements
Similar presentations
Module XIV SQL Injection
Advertisements

1 Chapter 13 Securing an Access Application. 13 Chapter Objectives Learn about the elements of security Explore application-level security Use user-level.
Module 12: Auditing SQL Server Environments
With Microsoft Access 2010© 2011 Pearson Education, Inc. Publishing as Prentice Hall1 PowerPoint Presentation to Accompany GO! with Microsoft ® Access.
Data and Applications Security Dr. Bhavani Thuraisingham The University of Texas at Dallas Attacks to Databases October 2014.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 10 Managing a Database.
Living in a Digital World Discovering Computers 2010.
Discovering Computers Fundamentals, 2011 Edition Living in a Digital World.
Lesson 9-Securing a Network. Overview Identifying threats to the network security. Planning a secure network.
Chapter 10 Overview  Implement Microsoft Windows Authentication Mode and Mixed Mode  Assign login accounts to database user accounts and roles  Assign.
7-Access Control Fundamentals Dr. John P. Abraham Professor UTPA.
Presented By: Matthew Garrison. Basics of Role Based Access Control  Roles are determined based on job functions within a given organization  Users.
1 Chapter Overview Creating User and Computer Objects Maintaining User Accounts Creating User Profiles.
MS Access Advanced Instructor: Vicki Weidler Assistant:
Yvan Cartwright, Web Security Introduction Correct encryption use Guide to passwords Dictionary hacking Brute-force hacking.
Chapter-4 Windows 2000 Professional Win2K Professional provides a very usable interface and was designed for use in the desktop PC. Microsoft server system.
ISOM MIS3150 Data and Info Mgmt Database Security Arijit Sengupta.
Chapter 6: Integrity and Security Thomas Nikl 19 October, 2004 CS157B.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Discovering Computers Fundamentals, 2012 Edition Your Interactive Guide to the Digital World.
1 Group Account Administration Introduction to Groups Planning a Group Strategy Creating Groups Understanding Default Groups Groups for Administrators.
Objectives Overview Define the term, database, and explain how a database interacts with data and information Define the term, data integrity, and describe.
Lecture slides prepared for “Computer Security: Principles and Practice”, 3/e, by William Stallings and Lawrie Brown, Chapter 5 “Database and Cloud Security”.
Discovering Computers Fundamentals Fifth Edition Chapter 9 Database Management.
Objectives Overview Define the term, database, and explain how a database interacts with data and information Describe the qualities of valuable information.
G061 - Network Security. Learning Objective: explain methods for combating ICT crime and protecting ICT systems.
Controlling User Access. Objectives After completing this lesson, you should be able to do the following: Create users Create roles to ease setup and.
1 IT420: Database Management and Organization Database Security 5 April 2006 Adina Crăiniceanu
Copyright © 2013 Curt Hill Database Security An Overview with some SQL.
By Sean Rose and Erik Hazzard.  SQL Injection is a technique that exploits security weaknesses of the database layer of an application in order to gain.
File System Security Robert “Bobby” Roy And Chris “Sparky” Arnold.
Database Role Activity. DB Role and Privileges Worksheet.
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:
Module 11 Authorizing Users to Access Resources. Module Overview Authorizing User Access to Objects Authorizing Users to Execute Code Configuring Permissions.
Database Security Lesson Introduction ●Understand the importance of securing data stored in databases ●Learn how the structured nature of data in databases.
Database Security Cmpe 226 Fall 2015 By Akanksha Jain Jerry Mengyuan Zheng.
1 Chapter 9 Database Management. Objectives Overview Define the term, database, and explain how a database interacts with data and information Describe.
SQL.. AN OVERVIEW lecture3 1. Overview of SQL 2  Query: allow questions to be asked of the data and display only the information required. It can include.
Module 10: Implementing Administrative Templates and Audit Policy.
Understand Permissions LESSON Security Fundamentals.
CHAPTER 5 MANAGING USER ACCOUNTS & GROUPS. User Accounts Windows 95, 98 & Me do not need a user account like Windows XP Professional to access computer.
Secure Authentication. SQL Injection Many web developers are unaware of how SQL queries can be tampered with SQL queries are able to circumvent access.
Oracle 11g: SQL Chapter 7 User Creation and Management.
SQL Triggers, Functions & Stored Procedures Programming Operations.
Database Security Database System Implementation CSE 507 Some slides adapted from Navathe et. Al.
Computer Security Sample security policy Dr Alexei Vernitski.
SQL Server Security The Low Hanging Fruit. Lindsay Clark Database Administrator at American Credit Acceptance
SAP R/3 User Administration1. 2 User administration in a productive environment is an ongoing process of creating, deleting, changing, and monitoring.
By the end of this lesson you will be able to: 1. Determine the preventive support measures that are in place at your school.
Lecture 19 Page 1 CS 236 Online 6. Application Software Security Why it’s important: –Security flaws in applications are increasingly the attacker’s entry.
19 Copyright © 2008, Oracle. All rights reserved. Security.
Database and Cloud Security
Database System Implementation CSE 507
Administrating a Database
Controlling User Access
SQL Injection.
Information Security Analytics
Microsoft SQL Server 2014 for Oracle DBAs Module 8
Introduction to Operating Systems
SQL Server Security For Everyone
Chapter Ten Managing a Database.
Database Management Systems
SQL Server Security from the ground up
Figure 6-9: Managing Users and Groups
SQL .. An overview lecture3.
Managing Privileges.
Administrating a Database
6. Application Software Security
SQL Server Security from the ground up
Presentation transcript:

Understand Database Security Concepts LESSON 5.1 98-364 Database Administration Fundamentals Understand Database Security Concepts

Lesson Overview Security plans Security is a major concern for database administrators. There are hackers and external attacks, but security must include problems with local access. Without security measures in place, valuable data can be damaged or stolen. In this lesson, you will learn about: Security plans Physical security Access control Common attacks User accounts Roles

Security Plans A security plan must identify which users can perform which action(s) to which data in the database. The plan involves external and internal methods. Physical security A secure location with documentation of who has access Backups and operational continuity Run backups regularly and periodically store offsite. Test the restore capability periodically.

Security Plans (continued) Internal security Access control ensures and restricts who can connect and what they can do to the database. Users should be limited to only the data they need. All users should have strong passwords. Use the administrator or root account only when absolutely necessary. Disable or delete old or unused accounts that belong to people who no longer need access.

Types of Attacks Brute—the forced cracking of weak or default user names/passwords  Privilege escalation—a user is granted more access and privileges than needed. Exploiting unused and unnecessary database services and functionality Targeting unpatched database vulnerabilities (software security holes) Stolen backup (unencrypted) tapes Inference SQL injection   

Inference Attack  A data mining technique in which, by analyzing data, the user illegitimately gains knowledge about a subject or database. Inference occurs when users are able to piece together information at a low security level that should be available only to a higher security level. Protocols, such as cryptography, can prevent users from inferring data. Careful database design and user access control are also used.

SQL Injection Allows a user to execute arbitrary Structured Query Language (SQL) code to access the database. Occurs when user input is not filtered for escape characters or executes unexpectedly. For example, at the login screen for user name and password, a hacker provides a SQL statement or database command (instead of the login name) that goes directly to the database. To protect against SQL injection attacks: Check parameters. When asking for a customer number, check that input is the proper data type, length, etc., before executing the query. Limit the permissions of the account that executes SQL queries. Use stored procedures (or similar techniques) to prevent users from directly interacting with SQL code.

User Accounts Database administrators protect their data from unauthorized outsiders and insiders attempting to exceed their authority by locking access to the database with required user names and passwords. This feature is built into SQL. Server-based databases all have user accounts similar to computer operating systems (such as Windows Vista or Windows 7). Create individual database user accounts for each person who will be accessing your database. Use strong passwords with eight or more characters and combine letters, numbers, and symbols. With a small number of users, creating user accounts and assigning permissions directly to them will be sufficient for your needs in most cases.

User Accounts (continued) The SQL GRANT statement grants appropriate database permissions to users and roles. Example: GRANT permissions  ON table TO user/role WITH GRANT OPTION GRANT—table permissions (SELECT, INSERT, UPDATE, DELETE)or database permissions (CREATE TABLE, ALTER DATABASE,GRANT) More than one can be granted in a single GRANT statement. Table-level and database-level permissions cannot be used in a single statement.  ON—is the affected table for table-level permissions. TO—is the user or role that is being granted permissions.  WITH GRANT OPTION—the user (not roles) is permitted to grant the same permissions to other users.

Database Roles With a large number of users, the task of maintaining accounts and proper permissions can be overwhelming. A group user account or single account can be assigned to a role or roles. Permissions are then assigned to the role rather than the individual user. We could create a SuperUser role and then add the user accounts of our teachers to this role We can then assign a specific permission to all present (and future) users by simply assigning the permission to the role, such as the right to use a special color printer. CREATE ROLE SuperUser AUTHORIZATION Administrator

Using Roles in a GRANT Statement First, create user accounts for each operator and then add them all to a new role called DataEntry. A group of teachers will be adding grades to the student records. They need to be able to access the Class Info table to modify or add new records to the table. They are not able to delete a record from the database. Using the role (DataEntry) for this group of teachers lets the teacher accomplish the tasks of adding grades. GRANT SELECT, INSERT, UPDATE ON Class Info TO DataEntry

Lesson Review What is a security plan? What types of security must be considered? What types of attacks can occur? What are inference attacks? What is SQL injection? Distinguish between user accounts and database roles. 1. What is a security plan? A security plan must identify which users can do what action to which data in the database. It involves external and internal methods. What are inference and SQL injection? They are two common database security risks. SQL injection allows a malicious individual to execute arbitrary SQL code on your server. Inference attacks occur when users are able to piece together information at a low security level that should be only be available to higher security level. How are user accounts and roles different? User accounts should be used by one user to access the database. Roles grant rights and permissions to groups of users.