ITS570 Topic 5 - Database Control and Security (C12)
ITS570 Topic 5 - Database Control and Security (C12)
Databases, Control
& Security
ITS570
Object-Oriented Design &
Implementation
Designing RDBMS
Content
Designing Security Control
DA Classes
Distributed DB Architecture
Transform
Domain Model Class Diagram
into
Detailed Database Model
and implement
the model
using
Database Management System
3
DATABASES &
DATABASE
MANAGEMENT
SYSTEM
Database
Database (DB) management
system (DBMS)
contains descriptive
stores the raw bits information about the data
and bytes of data stored in the physical data
store
Relational Database
Management System (RDBMS)
is a DBMS that
organizes stored data
into structures called
tables or relations
DESIGNING RDBMS
12
Steps
1 2 3 4 5 6 7 8 9
Create a table Choose a Add foreign Create new Represent Define Evaluate Choose Incorporate
for each class primary key for keys to tables to classification referential schema quality appropriate integrity and
each table represent one- represent hierarchies integrity and make data types security
(invent one, if to-many many-to-many constraints necessary controls
necessary) associations associations improvements
1 Create A Table For Each Class
CartItem
InventoryItem
OnLineCart
ProductComment
Sale
SaleItem
SaleTransaction
3 Add Foreign Keys To Represent One-to-many
Associations (cont.)
CartItem
InventoryItem
OnLineCart
ProductComment
Sale
SaleItem
SaleTransaction
4 Create New Tables To Represent Many-to-many
Associations
PromoOffering
AccessoryPackageContents
4 Create New Tables To Represent Many-to-many
Associations (cont.)
PromoOffering
AccessoryPackageContents
4 Create New Tables To Represent Many-to-many
Associations (cont.)
ProductComment, SaleItem
and CartItem is similar to
PromoOffering.
4 Create New Tables To Represent Many-to-many
Associations (cont.)
However, ProductCommentId
cannot be discarded.
Combination of foreign keys
are not unique as there is a
possibility of a single customer
making multiple comments
regarding the same product.
5 Represent Classification Hierarchies
Method 2:
6 Define Referential Integrity Constraints
Key Concepts:
1NF, Functional Dependency, 2NF, 3NF
7 Evaluate Schema Quality – (cont.)
Check
7 Evaluate Schema Quality – (cont.)r
Violation of
3NF
• defines the storage format and allowable content of a program variable, class
Data type
attribute, or relational database attribute or column
Security
Integrity control
controls
46
• Input Control
Types of •
•
Access Control
Transactional Logging
Integrity •
•
Complex Update Control
Redundancy, Backup & Recovery
Controls •
•
Output Controls
Integrity Controls to Prevent Fraud
• Prevents invalid or erroneous data from
(cont.)
• Ensures that numeric fields that contain
codes or identifiers are correct
o Field combination control
• Reviews combinations of data inputs to
ensure that the correct data are entered
• Control that ensures that output arrives at the proper
destination and is accurate, current, and complete
• Common types of output control:
o Physical access controls to printers
o Discarded output control
• Access Control
• Data Encryption
• Digital Signatures and Certificates
• Secure Transactions
Access Control
Limits the ability of specific users OS, networking software and Access control systems rely on
to access specific resources such as DBMS all provide access control several principles which are
servers, files, Web pages, systems and can be configured to authentication, access control list,
application programs, and database share a common access control authorization
tables. system
Access Control Principles
1 2 3
Authentication – the process Access control list – a list Authorization – the process
of identifying users who attached or link to a specific of allowing or restricting a
request access to sensitive resource that describes users specific authenticated user’s
resources or user groups and the nature access to a specific resource
• Multifactor authentication – using of permitted access based on an access control list
multiple authentication methods for
increased reliability
Unauthorized user – a person
who isn’t allowed access to
any part or functions of the
system
Vulnerability to server
failure, possible
Simple
overload of network or
server
Designing RDBMS
Designing Integrity
Control
Database, Control &
Security
Designing Security
Control
Distributed DB
Architecture
End of Topic 5