Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 7

JORDAN UNIVERSITY COLLEGE (JUCO)

A CONSTITUENT COLLEGE OF ST. AUGUSTINE UNIVERSITY IN TANZANIA

FACULTY OF ARTS AND SOCIAL SCIENCE.

DEPARTMENT OF INFORMATION SCIENCE.

BACHELOR OF SCIENCE IN COMPUTER SCIENCE

COURSE CODE : BSC 301.

COURSE NAME : DATABASE ADMINISTRATION.

LECTURE NAME : MR. M KAJUBILI.

SUBMISSION DATE : 5TH JANUARY 2024.

GROUP MEMBERS:

SN STUDENT NAME REGISTRATION NUMBER SIGNATURE


1. ADAMU CHENGULA BSCCS/0065/2021
2. FLORA ELIAS NGANGA BSCCS/0040/2021
3. MABULA IBRAHIMU ZENGO BSCCS/0054/2021
4. MPAJI NGUA BSCCS/0025/2021
5. ZABRONI AMINI BSCCS/0050/2021

QUESTION:

To explain the concepts of database security.


Database security. It is the protection of a database against accidental or intentional loss,
destruction or misuse. The database environment has grown more complex, and access to data
has become more open through the internet as a result managing database security effectively has
become more difficult and time-consuming.

Database security can be further explained as measures taken to ensure the confidentiality,
integrity, and availability of a database. It involves protecting the database management system
(DBMS), the database itself, and the data stored within it from unauthorized access, data
breaches, as well as the whole infrastructure that the database runs and other security threats.

The database administrator is often responsible for developing overall policies and procedures to
protect databases and administering database security daily. Also, all persons in an organization
must be responsible for security and take measures to protect the data within their domains.

Most database management systems typically support either or both of two broad approaches to
data security, discretionary control and mandatory control. In both cases, the unit of data that
might need to be protected can range from an entire database, on the one hand, to a specific
component of a specific tuple on the other. How the two approaches differ is indicated by the
following brief explanations.

Discretionary security mechanisms. These are used to grant privileges to users including the
capability to access specific data files, records or fields in a specified mode such as read, insert,
delete, or update.

Mandatory security mechanism. These are used to enforce security multilevel security by
classifying the data and users into various security classes (or levels and then implementing the
appropriate security policy of the organization.

Database security is crucial for all databases both large and small because sometimes some of the
information that is stored in the database is not meant to be shared by any part that is not directly
involved or requires such data to complete their task. Here are the reasons why we need database
security.
Confidentiality. This is a critical aspect of information security, especially when it comes to
databases that store sensitive and confidential information, this information can include personal
data (such as names, addresses, and contact details), financial records (like bank account
information and transaction details), and proprietary business information (such as trade secrets,
intellectual property, and strategic plans).

Unauthorized access to this data can have severe consequences, including breaches of privacy,
identity theft, financial fraud, and damage to the reputation of individuals and organizations.

Availability. Ensuring the availability of data is a crucial aspect of database security.


Availability means that the data stored in a database should be accessible and usable whenever it
is needed. Various measures are implemented to safeguard against disruptions, both intentional
and unintentional, to prevent data loss and minimize downtime. Measures used to ensure
database security and availability are Data Backups, Disaster Recovery Planning, Intrusion
Detection and Prevention Systems (IDPS), Geographical Distribution.

Integrity. In the context of database refers to the accuracy, consistency, and reliability of
information throughout its lifecycle. Ensuring data integrity is crucial in various fields, including
business, healthcare, finance, and more, as it directly impacts decision-making processes and the
overall trustworthiness of the database. Unauthorized modifications, deletions, or insertions can
compromise data integrity, leading to potential inaccuracies and misinformation.

Authentication is the process of verifying the identity of a user, system, or application


attempting to access the database. It ensures that the entity claiming a particular identity is who it
is supposed to be. Authentication prevents unauthorized individuals or entities from gaining
access to the database. Without proper authentication, malicious actors could impersonate
legitimate users and potentially compromise sensitive data.

Common authentication methods include Username and Password, Users provide a unique
username and a secret password, and Multi-factor authentication (MFA) which requires users to
provide additional verification, such as a temporary code sent to their mobile device.
Authorization. Is the process of granting or denying access to specific resources or actions
within the database based on the authenticated user's identity and privileges, authorization
ensures that even authenticated users can only perform actions they are explicitly allowed to
perform. This helps to prevent unauthorized modifications, deletions, or retrievals of data.

i. Privileges and Roles. Users are assigned specific privileges that determine the
actions they can perform (e.g., read, write, delete) on particular database objects (e.g.,
tables, views). Roles group privileges together, simplifying permission management.
ii. Access Control Lists (ACLs). Fine-grained control is achieved by specifying which
users or groups have permissions for specific operations on specific database objects.

Focusing on database security alone, however, will not ensure a secure database. All parts of the
system must be secure, including the database itself, the network it operates in, the operating
system used in serves and client machine, and the building(s) in which the database resides
physically and all personnel who have the opportunity to access the database. The following are
the potential threats to database security.

Accidental loss. This includes all incidents that occur and is completely out of the control of
human being i.e. normal human error, software and hardware–caused breaches. As in any efforts
that involve human beings, some losses are inevitable but well-organized policies and procedures
should reduce the amount of losses in the database.

Theft and fraud. These activities are going to be conducted by people, quite possibly through
electronic means and may or may not alter data. Physical security should also be provided for
employees' offices and any other locations where the database resides of easily accessed. Also,
the firewall should be used to protect against unauthorized access to inappropriate parts of the
database. Through outside communication links.

Loss of privacy and confidentiality. Loss of privacy is usually taken to mean loss of protection
of data about individuals whereas loss of confidentiality is usually taken to mean loss of
protection of critical organizational data that may have strategic value to the organization.
Failure to control the privacy of information may lead to blackmail, public embarrassment or
stealing of user passwords. Failure to control confidentiality may lead to loss of competitiveness
security mechanisms must enforce the implementation of existing national and company privacy
policies.

Loss of data integrity. When data integrity is compromised, data will be invalid or corrupted
unless data integrity can be restored through established backup and recovery procedures and the
organization may suffer serious losses or make incorrect and expensive decisions based on the
invalid data.

Loss of availability. Sabotage of hardware, networks or applications may cause the data to
become unavailable to users which again may lead to severe database operational difficulties.
This category of threat includes the introduction of viruses intended to corrupt data or software
or to render the system unusable. It is important to counter this threat by always installing the
most current antivirus software, as well as educating employees on the source of viruses.

Badly written application code. There are many ways in which the security of an application
can be compromised, even if the database is itself secure, due to badly written application code.
This provides security loopholes that can permit hackers to carry out actions that bypass the
authentication and authorization checks carried out by the application with the use of badly
written application code. Attackers can do either of the following actions to the database.

i. SQL injection attack. The attacker manages to get an application to execute an SQL
query created by the attacker. An example of an SQL injection vulnerability is if user
inputs are concatenated directly with an SQL query submitted to the database.
Example. String query = “SELECT * FROM student WHERE name like
‘%” + name +” %’”;
ii. Cross-site scripting and request forgery. In such an attack, hackers enter code
written in a client-side scripting language, such as JavaScript or Flash. Instead of
entering valid data. And when another user views the data in the browser the browser
executes the script, which can carry out actions such as sending private cookie
information back to the hacker.
Control measures to encounter database security threats.

The following are the major three countermeasures used to provide the security of data in the
database.

Employee Training and Awareness. Train employees on security best practices and make them
aware of potential threats. Enforce strong password policies and ensure employees follow secure
practices.

Access control. Is a security mechanism that must include provisions for restricting access to the
database system as a whole, it is handled by creating user accounts and roles to control the access
of database data, and ensuring that the user can only access the data that he/she is permitted to
access.

Flow control. It prevents the information from flowing in such a way that it reaches
unauthorized users.

Implement and use a firewalls and Network Security. Use firewalls to restrict access to the
database server from unauthorized networks. Implement network segmentation to isolate
databases from other parts of the network.

Data encryption. Used to protect sensitive data that is in the database (such as credit card
numbers). Also, it provides additional protection for sensitive portions of a database. The data is
encoded using some encryption algorithm. Unauthorized users who access the encoded data will
have difficulty deciphering it, but authorized users are given a decoding or decryption algorithm
(or decryption key) to decipher the data. An example of encryption techniques is public key
encryption which is heavily used to support security and encryption in web-based applications.

Database regular Audits and Monitoring. Conduct regular security audits to identify
vulnerabilities and weaknesses. Implement monitoring tools to track database activity and detect
unusual patterns or suspicious behaviour.
REFERENCES.

Campbell, L., & Majors, C. (2017). Database Reliability Engineering. O’Reilly Media.

Edition, S. (2017). Database Design Using Entity Relationship Diagrams.

Gehrke, J., Derstadt, J., Selikoff, S., & Zhu, L. (n.d.). Database Management Systems Solutions
Manual Contents Introduction to Database Design the Relational Model Relational Algebra and
Calculus Database Application Development Internet Applications Overview of Storage and
Indexing. Security.

Silberschatz, A., Korth, H. F., & Sudarshan, S. (n.d.). Database system concepts.

You might also like