Download DAtabase security for ICT profesional and more Lecture notes Computer Science in PDF only on Docsity!
Database Security:
An Introduction
Introduction
(^) Database security involves protecting the database from unauthorized access, Modification, or destruction (^) The database design should reflect the organization’s commitment to the protection of individual privacy rights by including only those items that the organization has a right to know and keeping them secure.
Three Basic Concepts
(^) Authentication: a mechanism that determines whether a user is who he or she claims to be (^) Authorization: the granting of a right or privilege, which enables a subject to legitimately have access to a system or a system’s objects (^) Access Control: a security mechanism (of a DBMS) for restricting access to a system’s objects (the database) as a whole 4
Introduction to Database Security Issue(2)
(^) Threats
- (^) Any situation or event, whether intentional or unintentional, that will adversely affect a system and consequently an organization
- (^) Threats to: →Computer systems →Databases
Scope of Data Security Needs
- Must protect databases & the servers on which they reside
- Must administer & protect the rights of internal database users
- Must guarantee the confidentiality of ecommerce customers as they access the database
- With the Internet continually growing, the threat to data traveling over the network increases exponentially
Introduction to Database Security Issues (3)
(^) Threats to databases (CIA)
- (^) Loss of confidentiality
- (^) Loss of Integrity
- (^) Loss of Availability (^) To protect databases against these types of threats four kinds of countermeasures can be implemented:
- (^) Access control
- (^) Inference control
- (^) Flow control
- (^) Encryption
Introduction to Database Security Issues 5)
(^) The security mechanism of a DBMS must include provisions for restricting access to the database as a whole
- (^) This function is called access control and is handled by creating user accounts and passwords to control login process by the DBMS.
Introduction to Database Security Issues (6)
(^) Another security is that of flow control , which prevents information from flowing in such a way that it reaches unauthorized users. (^) Channels that are pathways for information to flow implicitly in ways that violate the security policy of an organization are called covert channels.
Database Security and the DBA
(^) The database administrator ( DBA ) is the central authority for managing a database system.
- (^) The DBA’s responsibilities include →granting privileges to users who need to use the system →classifying users and data in accordance with the policy of the organization (^) The DBA is responsible for the overall security of the database system.
Database Security and the DBA (2)
(^) The DBA has a DBA account in the DBMS
- (^) Sometimes these are called a system or superuser account
- (^) These accounts provide powerful capabilities such as: →1. Account creation →2. Privilege granting →3. Privilege revocation →4. Security level assignment
- (^) Action 1 is access control, whereas 2 and 3 are discretionarym and 4 is used to control mandatory authorization
Discretionary Access Control
(^) The typical method of enforcing discretionary access control in a database system is based on the granting and revoking privileges.
Types of Discretionary Privileges
(^) The account level :
- (^) At this level, the DBA specifies the particular privileges that each account holds independently of the relations in the database. (^) The relation level (or table level ):
- (^) At this level, the DBA can control the privilege to access each individual relation or view in the database.
Types of Discretionary Privileges(3)
(^) The second level of privileges applies to the relation level
- (^) This includes base relations and virtual ( view ) relations. (^) The granting and revoking of privileges generally follow an authorization model for discretionary privileges known as the access matrix model where
- (^) The rows of a matrix M represents subjects (users, accounts, programs)
- (^) The columns represent objects (relations, records, columns, views, operations).
- (^) Each position M(i,j) in the matrix represents the types of privileges (read, write, update) that subject i holds on object j.
Types of Discretionary Privileges(4)
(^) To control the granting and revoking of relation privileges, each relation R in a database is assigned and owner account , which is typically the account that was used when the relation was created in the first place.
- The owner of a relation is given all privileges on that relation.
- (^) In SQL2, the DBA can assign and owner to a whole schema by creating the schema and associating the appropriate authorization identifier with that schema, using the CREATE SCHEMA command.
- (^) The owner account holder can pass privileges on any of the owned relation to other users by granting privileges to their accounts.