SlideShare a Scribd company logo
Overview of Red Database 2.5 
Roman Simakov, director of system development department 
RED SOFT CORPORATION
About company 
• Red Soft Corporation was founded in 2006 
• All solutions based on Open Source code 
• The main product is Red Database 
2
Development process (schema) 
3 
Firebird 
repository 
Red Soft 
repository 
merged commits 
conflict commits resolved commits 
Developer 
Firebird Developer 
Developer 
direct commits 
local commits
QA process 
4 
Repository 
server 
Jenkins 
server 
Snapshots 
Release Candidates 
Releases 
Developer 
Test manager 
Commit changes 
Pull changes and run build jobs 
View test result 
Publish builds
Security features 
5 
• Cryptographic plugin 
• Multi-factor 
authentication 
• Cumulative roles 
• DML access control 
• DDL access control 
• Service access control 
• Record filtering 
Functional features 
• Java Stored Procedures 
• Full Text Search 
• OpenLDAP integration 
• StandBy cluster (engine-level 
replication)
Cryptographic plugin 
• It's a key feature used in other features to perform 
cryptographic operations. 
• It allows users to use necessary cryptographic 
methods required in different countries by using related 
plugins. 
• For Russia CryptoPro library and Windows CryptoAPI 
are supported. 
6
Multi-factor authentication 
• It allows user to provide several factors to be 
authenticated: OS context, password, certificate, etc. 
• Access to database is defined by login policy. It says 
what factors user must provide for authentication. 
• While authentication all authentication factors are 
transferred in encoded form. 
• After authentication both client and server have 
session key for exchanging private messages, for 
example new password when user wants to change it. 
7
Login policy properties 
Parameter name Description 
AUTH_FACTORS Example: (WINDOWS_NTLM PASSWORD)|(CERT_X509 PASSWORD) 
PSWD_NEED_CHAR The minimum number of characters in the password 
PSWD_NEED_DIGIT The minimum number of digits in the password 
PSWD_NEED_DIFF_CASE Need to use different case of characters in the password 
PSWD_MIN_LEN The minimum password length 
PSWD_VALID_DAYS The password validation interval in days 
PSWD_UNIQUE_COUNT The minimum number of the last unique passwords 
MAX_FAILED_COUNT The maximum number of failed attempt of authentication 
MAX_SESSIONS The maximum number of user sessions to database server 
MAX_IDLE_TIME The maximum idle time interval to user disconnecting 
8
Login policies 
DDL commands to control policies 
CREATE POLICY <policy_name> AS [param = value [, param = value]]; 
DROP POLICY <policy_name>; 
ALTER POLICY <policy_name> AS [param = value [, param = value]]; 
To grant policy to user use 
GRANT POLICY <policy_name> TO <user_name>; 
To revoke policy from user just grant DEFAULT policy to him 
GRANT POLICY “DEFAULT” TO <user_name>; 
9
Cumulative roles 
You can grant role to role except circle references 
GRANT ROLE1 TO ROLE2; 
REVOKE ROLE1 FROM ROLE2; 
• if user doesn't specify a role he gets permissions of all 
roles granted to him; 
• if user specifies a role he takes privileges of this role only. 
10
DML access control 
Extended permissions for generators/sequences 
GRANT SELECT | ALTER ON GENERATOR <generator> TO {<user> | <role>} [WITH 
GRANT OPTION]; 
REVOKE SELECT | ALTER ON GENERATOR <generator> FROM {<user> | <role>}; 
REVOKE GRANT OPTION FOR SET | GET ON GENERATOR <generator> FROM {<user> | 
<role>}; 
Extended permissions for table columns 
GRANT SELECT | INSERT | UPDATE {( column [, ... ] )} ON [TABLE] <table> TO 
{<user> | <role>} [WITH GRANT OPTION] 
REVOKE SELECT | INSERT | UPDATE {( column [, ... ] )} ON [TABLE] <table> 
FROM {<user> | <role>} 
REVOKE GRANT OPTION FOR SELECT | INSERT | UPDATE {( column [, ... ] )} ON 
[TABLE] <table> FROM {<user> | <role>} 
11
DDL access control (now in Firebird 3 too) 
Extended permissions for creating objects of database 
GRANT CREATE OBJECT TO {<USER>|<ROLE>} [WITH GRANT OPTION]; 
REVOKE CREATE OBJECT FROM {<USER>|<ROLE>}; 
Extended permissions for altering/droping objects of database 
GRANT ALTER|DROP [ANY] OBJECT TO {<USER>|<ROLE>} [WITH GRANT OPTION]; 
REVOKE ALTER|DROP [ANY] OBJECT FROM {<USER>|<ROLE>}; 
Where OBJECT can be: 
TABLE, TRIGGER, PROCEDURE, VIEW, DOMAIN, ROLE, GENERATOR, 
SEQUENCE, EXCEPTION, SHADOW, FUNCTION, INDEX, POLICY 
12
Service access control 
It's able to grant permissions to start some services 
(GBAK, GFIX, GSTAT, GSEC) 
GRANT EXECUTE ON SERVICE <SERVICE_NAME> TO {<USER>|<ROLE>} 
REVOKE EXECUTE ON SERVICE <SERVICE_NAME> FROM {<USER>|<ROLE>} 
• Permissions can be granted to users or global roles stored 
in security2.fdb. 
• Permissions can be granted by SYSDBA or by user with 
SECADMIN global role. 
13
Record filtering 
• Based on special SELECT triggers. 
• It allows user to skip the records if the given condition 
is false. 
• It allows user to clear some fields of records if the 
given condition is false. 
• It's used to filter system catalog to prevent user 
without any permissions on database object even to 
know about its existence. 
14
Record filter syntax 
User can declare filters in CREATE TABLE 
CREATE TABLE <table_name> [EXTERNAL [FILE] "<filespec>"] (<col_def> [, 
<col_def> | <tconstraint> ...], [COLFILTER <col_name> (<condition>), ...]) 
[, RECFILTER (<condition>)] 
To manage filters use ALTER TABLE 
ALTER TABLE table SET RECFILTER (<condition>); 
ALTER TABLE table DROP RECFILTER; 
ALTER TABLE table SET COLFILTER <col_name> (<condition>); 
ALTER TABLE table DROP COLFILTER <col_name>; 
15
Java Stored Procedures 
• It's possible to develop both user defined procedures 
and user defined functions 
• Portable code on widely used programing language 
• It's possible to re-use a lot of libraries 
• Java SP can return result set which allow them to be 
used as data source. 
• Can be used to exchange data with other databases. 
16
Full Text Search 
• Based on high performance cross-platform engine 
lucene (https://lucene.apache.org/) 
• Can perform search by several tables and fields 
• Can search in the most widely used file formats: rtf, 
doc, open office, pdf, etc. 
17
Integration with OpenLDAP 
Administrator 
OpenLDAP Server 
18
Optimization work with Storages 
SAS,SSD,... 
fast 
expensive 
HDD 
slow 
cheap 
Active DB part Archive DB part 
19
StandBy cluster (with sync replication) 
Master 
+pacemaker agent 
Slave 
+pacemaker agent 
20 
Record level changes 
acync sent and wait applying 
before transaction commit 
HA cluster under 
Pacemaker* 
* More about pacemaker at http://clusterlabs.org
Automated Information System 
of Federal Service for 
Officers of Justice of Russia 
• AIS is installed and work in 85 regional departments 
and in the main office of FSOJ of Russia 
• Total amount of Red Database installations are 
about 2720, i.e. every city of Russia has one or several Red Database 
servers 
• AIS handles more than 10^9 documents per year 
• AIS works in 24/7 mode 
• Some databases more than 1TB and a lot of data goes to archived set of 
database files 
• 100x of concurrent connections 
• 100 000x transactions per hour 
21
Regional medical information system 
• Partner is SmartDeltaSystems Ltd. (http://www.sdsys.ru/) 
• Migration from Firebird because of they need to have certified 
solution and support 
• Work on CentOS and Windows 
• ~200 installations 
• Size of databases up to 12 GB 
• Central database size is about 50 GB 
• 1000x concurrent connections 
22
Automated server of radiomonitoring of Russia 
• The main database is ~700 GB 
• Regional - 100x GB 
• Increased by 10x GB per year 
• 600 000 transactions per day 
• 100x concurrent connections 
• OpenLDAP authentication 
23
Awards 
• «The best project of the state sector – 2011» 
(http://www.raspo.ru/content/28.html) 
• AIS FSOJ of Russia was endorsed by Prime Minister 
of Russia in 2014 
(http://government.ru/news/10513) 
24
Some words about Red Database 2.6 
• Direction to “state secret” security level 
• Mandatory access control based on SELinux 
integration 
• Full database encryption 
• Column data encryption by user key 
• Traffic and backup files encryption 
• Still based on Firebird 2.5 
25
SELinux 
libselinux 
Policies SELinux plugin 
packages 
MAC plugins interface 
Database 
objects 
initial contexts file 
Read during 
database creation 
DDL DML 
Red Database 
Users contexts 
security2.fdb 
Database 
Objects 
contexts
user_a (rdb_user_u:rdb_user_r:rdb_user_t:s1) 
DB.fdb (system_u:object_r:rdb_database_t:s0) 
A (system_u:object_r:rdb_table_t:s0) 
select * from A 
0 records filtered 
DATA (system_u:object_r:rdb_column_t:s0) MAC$LABEL 
foo system_u:object_r:rdb_record_t:s0 
bar system_u:object_r:rdb_record_t:s1 
select * from A 
1 record filtered 
user_b (rdb_user_u:rdb_user_r:rdb_user_t:s0)
Database Encryption 
28 
Key management 
CREATE KEY <key name> <algorithm id> 
GRANT KEY <key name> TO <user name> 
REVOKE KEY <key name> FROM <user name> 
DROP KEY <key name> 
Full database encryption 
isql -mf -certificate <cert alias> [-en(crypt) <key name>] 
SQL> CREATE DATABASE <db name>; 
Column database encryption 
isql -mf -certificate <cert alias> 
SQL> CREATE TABLE <table name> (<column def> [, ENCRYPT <column name> USING 
<key name>]); 
SQL> ALTER TABLE <table name> ENCRYPT <column name> USING <key name>; 
SQL> ALTER TABLE <table name> DECRYPT <column name>; 
Create an encrypted backup 
gbak [-en(crypt) <key name>]
Some big goals of Red Database 3.0 
• Merge with Firebird 3.0 
• Load balancing cluster 
• Parallel backup/restore 
• GUI tool which support all Red Database features 
• Support of OpenGIS specification 
• Tools for migration from other DBMSs
Thanks! 
We are pleased to invite you to test Red Database! 
visit: www.red-soft.biz 
ask: rdb.support@red-soft.biz 
roman.simakov@red-soft.biz

More Related Content

What's hot (20)

Database administration commands
Database administration commands Database administration commands
Database administration commands
Varsha Ajith
 
FIXING BLOCK CORRUPTION (RMAN) on 11G
FIXING BLOCK CORRUPTION (RMAN) on 11GFIXING BLOCK CORRUPTION (RMAN) on 11G
FIXING BLOCK CORRUPTION (RMAN) on 11G
N/A
 
Oracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New FeaturesOracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New Features
Alex Zaballa
 
Postgre sql unleashed
Postgre sql unleashedPostgre sql unleashed
Postgre sql unleashed
Marian Marinov
 
Sqlmap
SqlmapSqlmap
Sqlmap
Rushikesh Kulkarni
 
Oracle ORA Errors
Oracle ORA ErrorsOracle ORA Errors
Oracle ORA Errors
Manish Mudhliyar
 
DB2 Basic Commands - UDB
DB2 Basic Commands - UDBDB2 Basic Commands - UDB
DB2 Basic Commands - UDB
Srinimf-Slides
 
SQLMAP Tool Usage - A Heads Up
SQLMAP Tool Usage - A  Heads UpSQLMAP Tool Usage - A  Heads Up
SQLMAP Tool Usage - A Heads Up
Mindfire Solutions
 
Sql injection with sqlmap
Sql injection with sqlmapSql injection with sqlmap
Sql injection with sqlmap
Herman Duarte
 
DOAG - Oracle Database Locking Mechanism Demystified
DOAG - Oracle Database Locking Mechanism Demystified DOAG - Oracle Database Locking Mechanism Demystified
DOAG - Oracle Database Locking Mechanism Demystified
Pini Dibask
 
Sqlmap
SqlmapSqlmap
Sqlmap
Institute of Information Security (IIS)
 
DB2UDB_the_Basics
DB2UDB_the_BasicsDB2UDB_the_Basics
DB2UDB_the_Basics
Pranav Prakash
 
Db health check
Db health checkDb health check
Db health check
Akash Pramanik
 
Percona Live 2017 ­- Sharded cluster tutorial
Percona Live 2017 ­- Sharded cluster tutorialPercona Live 2017 ­- Sharded cluster tutorial
Percona Live 2017 ­- Sharded cluster tutorial
Antonios Giannopoulos
 
Hive commands
Hive commandsHive commands
Hive commands
Ganesh Sanap
 
Oracle 10g Introduction 1
Oracle 10g Introduction 1Oracle 10g Introduction 1
Oracle 10g Introduction 1
Eryk Budi Pratama
 
A DBA’s guide to using TSA
A DBA’s guide to using TSAA DBA’s guide to using TSA
A DBA’s guide to using TSA
Frederik Engelen
 
Sql Injection 0wning Enterprise
Sql Injection 0wning EnterpriseSql Injection 0wning Enterprise
Sql Injection 0wning Enterprise
n|u - The Open Security Community
 
Android Data Persistence
Android Data PersistenceAndroid Data Persistence
Android Data Persistence
Romain Rochegude
 
Oracle-L11 using Oracle flashback technology-Mazenet solution
Oracle-L11 using  Oracle flashback technology-Mazenet solutionOracle-L11 using  Oracle flashback technology-Mazenet solution
Oracle-L11 using Oracle flashback technology-Mazenet solution
Mazenetsolution
 
Database administration commands
Database administration commands Database administration commands
Database administration commands
Varsha Ajith
 
FIXING BLOCK CORRUPTION (RMAN) on 11G
FIXING BLOCK CORRUPTION (RMAN) on 11GFIXING BLOCK CORRUPTION (RMAN) on 11G
FIXING BLOCK CORRUPTION (RMAN) on 11G
N/A
 
Oracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New FeaturesOracle Database 12.1.0.2 New Features
Oracle Database 12.1.0.2 New Features
Alex Zaballa
 
DB2 Basic Commands - UDB
DB2 Basic Commands - UDBDB2 Basic Commands - UDB
DB2 Basic Commands - UDB
Srinimf-Slides
 
SQLMAP Tool Usage - A Heads Up
SQLMAP Tool Usage - A  Heads UpSQLMAP Tool Usage - A  Heads Up
SQLMAP Tool Usage - A Heads Up
Mindfire Solutions
 
Sql injection with sqlmap
Sql injection with sqlmapSql injection with sqlmap
Sql injection with sqlmap
Herman Duarte
 
DOAG - Oracle Database Locking Mechanism Demystified
DOAG - Oracle Database Locking Mechanism Demystified DOAG - Oracle Database Locking Mechanism Demystified
DOAG - Oracle Database Locking Mechanism Demystified
Pini Dibask
 
Percona Live 2017 ­- Sharded cluster tutorial
Percona Live 2017 ­- Sharded cluster tutorialPercona Live 2017 ­- Sharded cluster tutorial
Percona Live 2017 ­- Sharded cluster tutorial
Antonios Giannopoulos
 
A DBA’s guide to using TSA
A DBA’s guide to using TSAA DBA’s guide to using TSA
A DBA’s guide to using TSA
Frederik Engelen
 
Oracle-L11 using Oracle flashback technology-Mazenet solution
Oracle-L11 using  Oracle flashback technology-Mazenet solutionOracle-L11 using  Oracle flashback technology-Mazenet solution
Oracle-L11 using Oracle flashback technology-Mazenet solution
Mazenetsolution
 

Viewers also liked (18)

A year in the life of Firebird .Net provider
A year in the life of Firebird .Net providerA year in the life of Firebird .Net provider
A year in the life of Firebird .Net provider
Mind The Firebird
 
Firebird on Linux
Firebird on LinuxFirebird on Linux
Firebird on Linux
Mind The Firebird
 
Using ТРСС to study Firebird performance
Using ТРСС to study Firebird performanceUsing ТРСС to study Firebird performance
Using ТРСС to study Firebird performance
Mind The Firebird
 
Orphans, Corruption, Careful Write, and Logging
Orphans, Corruption, Careful Write, and LoggingOrphans, Corruption, Careful Write, and Logging
Orphans, Corruption, Careful Write, and Logging
Mind The Firebird
 
Using Azure cloud and Firebird to develop applications easily
Using Azure cloud and Firebird to develop applications easilyUsing Azure cloud and Firebird to develop applications easily
Using Azure cloud and Firebird to develop applications easily
Mind The Firebird
 
Creating logs for data auditing in FirebirdSQL
Creating logs for data auditing in FirebirdSQLCreating logs for data auditing in FirebirdSQL
Creating logs for data auditing in FirebirdSQL
Mind The Firebird
 
Working with Large Firebird databases
Working with Large Firebird databasesWorking with Large Firebird databases
Working with Large Firebird databases
Mind The Firebird
 
How Firebird transactions work
How Firebird transactions workHow Firebird transactions work
How Firebird transactions work
Mind The Firebird
 
Understanding Numbers in Firebird SQL
Understanding Numbers in Firebird SQLUnderstanding Numbers in Firebird SQL
Understanding Numbers in Firebird SQL
Mind The Firebird
 
Copycat presentation
Copycat presentationCopycat presentation
Copycat presentation
Mind The Firebird
 
Tips for using Firebird system tables
Tips for using Firebird system tablesTips for using Firebird system tables
Tips for using Firebird system tables
Mind The Firebird
 
Firebird release strategy and roadmap for 2015/2016
Firebird release strategy and roadmap for 2015/2016Firebird release strategy and roadmap for 2015/2016
Firebird release strategy and roadmap for 2015/2016
Mind The Firebird
 
New SQL Features in Firebird 3, by Vlad Khorsun
New SQL Features in Firebird 3, by Vlad KhorsunNew SQL Features in Firebird 3, by Vlad Khorsun
New SQL Features in Firebird 3, by Vlad Khorsun
Mind The Firebird
 
Threading through InterBase, Firebird, and beyond
Threading through InterBase, Firebird, and beyondThreading through InterBase, Firebird, and beyond
Threading through InterBase, Firebird, and beyond
Mind The Firebird
 
Stored procedures in Firebird
Stored procedures in FirebirdStored procedures in Firebird
Stored procedures in Firebird
Mind The Firebird
 
SuperServer in Firebird 3
SuperServer in Firebird 3SuperServer in Firebird 3
SuperServer in Firebird 3
Mind The Firebird
 
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Mind The Firebird
 
Firebird Performance counters in details
Firebird Performance counters in detailsFirebird Performance counters in details
Firebird Performance counters in details
Mind The Firebird
 
A year in the life of Firebird .Net provider
A year in the life of Firebird .Net providerA year in the life of Firebird .Net provider
A year in the life of Firebird .Net provider
Mind The Firebird
 
Using ТРСС to study Firebird performance
Using ТРСС to study Firebird performanceUsing ТРСС to study Firebird performance
Using ТРСС to study Firebird performance
Mind The Firebird
 
Orphans, Corruption, Careful Write, and Logging
Orphans, Corruption, Careful Write, and LoggingOrphans, Corruption, Careful Write, and Logging
Orphans, Corruption, Careful Write, and Logging
Mind The Firebird
 
Using Azure cloud and Firebird to develop applications easily
Using Azure cloud and Firebird to develop applications easilyUsing Azure cloud and Firebird to develop applications easily
Using Azure cloud and Firebird to develop applications easily
Mind The Firebird
 
Creating logs for data auditing in FirebirdSQL
Creating logs for data auditing in FirebirdSQLCreating logs for data auditing in FirebirdSQL
Creating logs for data auditing in FirebirdSQL
Mind The Firebird
 
Working with Large Firebird databases
Working with Large Firebird databasesWorking with Large Firebird databases
Working with Large Firebird databases
Mind The Firebird
 
How Firebird transactions work
How Firebird transactions workHow Firebird transactions work
How Firebird transactions work
Mind The Firebird
 
Understanding Numbers in Firebird SQL
Understanding Numbers in Firebird SQLUnderstanding Numbers in Firebird SQL
Understanding Numbers in Firebird SQL
Mind The Firebird
 
Tips for using Firebird system tables
Tips for using Firebird system tablesTips for using Firebird system tables
Tips for using Firebird system tables
Mind The Firebird
 
Firebird release strategy and roadmap for 2015/2016
Firebird release strategy and roadmap for 2015/2016Firebird release strategy and roadmap for 2015/2016
Firebird release strategy and roadmap for 2015/2016
Mind The Firebird
 
New SQL Features in Firebird 3, by Vlad Khorsun
New SQL Features in Firebird 3, by Vlad KhorsunNew SQL Features in Firebird 3, by Vlad Khorsun
New SQL Features in Firebird 3, by Vlad Khorsun
Mind The Firebird
 
Threading through InterBase, Firebird, and beyond
Threading through InterBase, Firebird, and beyondThreading through InterBase, Firebird, and beyond
Threading through InterBase, Firebird, and beyond
Mind The Firebird
 
Stored procedures in Firebird
Stored procedures in FirebirdStored procedures in Firebird
Stored procedures in Firebird
Mind The Firebird
 
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Nbackup and Backup: Internals, Usage strategy and Pitfalls, by Dmitry Kuzmenk...
Mind The Firebird
 
Firebird Performance counters in details
Firebird Performance counters in detailsFirebird Performance counters in details
Firebird Performance counters in details
Mind The Firebird
 

Similar to Overview of RedDatabase 2.5 (20)

Introduction to firebidSQL 3.x
Introduction to firebidSQL 3.xIntroduction to firebidSQL 3.x
Introduction to firebidSQL 3.x
Fabio Codebue
 
Neo4j 4.1 overview
Neo4j 4.1 overviewNeo4j 4.1 overview
Neo4j 4.1 overview
Neo4j
 
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
Altinity Ltd
 
Aioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_featuresAioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_features
AiougVizagChapter
 
Take your database source code and data under control
Take your database source code and data under controlTake your database source code and data under control
Take your database source code and data under control
Marcin Przepiórowski
 
Oracle Database Security For Developers
Oracle Database Security For DevelopersOracle Database Security For Developers
Oracle Database Security For Developers
Szymon Skorupinski
 
JoTechies - Azure SQL DB
JoTechies - Azure SQL DBJoTechies - Azure SQL DB
JoTechies - Azure SQL DB
JoTechies
 
Odv oracle customer_demo
Odv oracle customer_demoOdv oracle customer_demo
Odv oracle customer_demo
Viaggio Italia
 
Corporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbaiCorporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbai
Unmesh Baile
 
Corporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbaiCorporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbai
Unmesh Baile
 
Sql server basics
Sql server basicsSql server basics
Sql server basics
Dilfaroz Khan
 
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAsOracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Zohar Elkayam
 
Presentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - WebinarPresentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - Webinar
Orient Technologies
 
Oracle DBA
Oracle DBAOracle DBA
Oracle DBA
shivankuniversity
 
Rails Security
Rails SecurityRails Security
Rails Security
Wen-Tien Chang
 
Fudcon talk.ppt
Fudcon talk.pptFudcon talk.ppt
Fudcon talk.ppt
webhostingguy
 
SQL/MED: Doping for PostgreSQL
SQL/MED: Doping for PostgreSQLSQL/MED: Doping for PostgreSQL
SQL/MED: Doping for PostgreSQL
Peter Eisentraut
 
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeBoost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Marco Gralike
 
GLOC 2014 NEOOUG - Oracle Database 12c New Features
GLOC 2014 NEOOUG - Oracle Database 12c New FeaturesGLOC 2014 NEOOUG - Oracle Database 12c New Features
GLOC 2014 NEOOUG - Oracle Database 12c New Features
Biju Thomas
 
12c Database new features
12c Database new features12c Database new features
12c Database new features
Sandeep Redkar
 
Introduction to firebidSQL 3.x
Introduction to firebidSQL 3.xIntroduction to firebidSQL 3.x
Introduction to firebidSQL 3.x
Fabio Codebue
 
Neo4j 4.1 overview
Neo4j 4.1 overviewNeo4j 4.1 overview
Neo4j 4.1 overview
Neo4j
 
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
ClickHouse Unleashed 2020: Our Favorite New Features for Your Analytical Appl...
Altinity Ltd
 
Aioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_featuresAioug vizag oracle12c_new_features
Aioug vizag oracle12c_new_features
AiougVizagChapter
 
Take your database source code and data under control
Take your database source code and data under controlTake your database source code and data under control
Take your database source code and data under control
Marcin Przepiórowski
 
Oracle Database Security For Developers
Oracle Database Security For DevelopersOracle Database Security For Developers
Oracle Database Security For Developers
Szymon Skorupinski
 
JoTechies - Azure SQL DB
JoTechies - Azure SQL DBJoTechies - Azure SQL DB
JoTechies - Azure SQL DB
JoTechies
 
Odv oracle customer_demo
Odv oracle customer_demoOdv oracle customer_demo
Odv oracle customer_demo
Viaggio Italia
 
Corporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbaiCorporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbai
Unmesh Baile
 
Corporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbaiCorporate-informatica-training-in-mumbai
Corporate-informatica-training-in-mumbai
Unmesh Baile
 
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAsOracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Oracle Database Performance Tuning Advanced Features and Best Practices for DBAs
Zohar Elkayam
 
Presentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - WebinarPresentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - Webinar
Orient Technologies
 
SQL/MED: Doping for PostgreSQL
SQL/MED: Doping for PostgreSQLSQL/MED: Doping for PostgreSQL
SQL/MED: Doping for PostgreSQL
Peter Eisentraut
 
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco GralikeBoost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Boost Your Environment With XMLDB - UKOUG 2008 - Marco Gralike
Marco Gralike
 
GLOC 2014 NEOOUG - Oracle Database 12c New Features
GLOC 2014 NEOOUG - Oracle Database 12c New FeaturesGLOC 2014 NEOOUG - Oracle Database 12c New Features
GLOC 2014 NEOOUG - Oracle Database 12c New Features
Biju Thomas
 
12c Database new features
12c Database new features12c Database new features
12c Database new features
Sandeep Redkar
 

More from Mind The Firebird (12)

Superchaging big production systems on Firebird: transactions, garbage, maint...
Superchaging big production systems on Firebird: transactions, garbage, maint...Superchaging big production systems on Firebird: transactions, garbage, maint...
Superchaging big production systems on Firebird: transactions, garbage, maint...
Mind The Firebird
 
Firebird meets NoSQL
Firebird meets NoSQLFirebird meets NoSQL
Firebird meets NoSQL
Mind The Firebird
 
Continuous Database Monitoring with the Trace API
Continuous Database Monitoring with the Trace APIContinuous Database Monitoring with the Trace API
Continuous Database Monitoring with the Trace API
Mind The Firebird
 
Firebird 3 Windows Functions
Firebird 3 Windows  FunctionsFirebird 3 Windows  Functions
Firebird 3 Windows Functions
Mind The Firebird
 
Firebird Conference 2011 - Introduction
Firebird Conference 2011 - IntroductionFirebird Conference 2011 - Introduction
Firebird Conference 2011 - Introduction
Mind The Firebird
 
Firebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISVFirebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISV
Mind The Firebird
 
Migration from Firebird 1.5 to Firebird 2.5
Migration from Firebird 1.5 to Firebird 2.5Migration from Firebird 1.5 to Firebird 2.5
Migration from Firebird 1.5 to Firebird 2.5
Mind The Firebird
 
A Bird and the Web
A Bird and the WebA Bird and the Web
A Bird and the Web
Mind The Firebird
 
Handling tree structures — recursive SPs, nested sets, recursive CTEs
Handling tree structures — recursive SPs, nested sets, recursive CTEsHandling tree structures — recursive SPs, nested sets, recursive CTEs
Handling tree structures — recursive SPs, nested sets, recursive CTEs
Mind The Firebird
 
Measuring Firebird Disk I/O
Measuring Firebird Disk I/OMeasuring Firebird Disk I/O
Measuring Firebird Disk I/O
Mind The Firebird
 
Firebird and RAID
Firebird and RAIDFirebird and RAID
Firebird and RAID
Mind The Firebird
 
Character Sets and Unicode in Firebird
Character Sets and Unicode in FirebirdCharacter Sets and Unicode in Firebird
Character Sets and Unicode in Firebird
Mind The Firebird
 
Superchaging big production systems on Firebird: transactions, garbage, maint...
Superchaging big production systems on Firebird: transactions, garbage, maint...Superchaging big production systems on Firebird: transactions, garbage, maint...
Superchaging big production systems on Firebird: transactions, garbage, maint...
Mind The Firebird
 
Continuous Database Monitoring with the Trace API
Continuous Database Monitoring with the Trace APIContinuous Database Monitoring with the Trace API
Continuous Database Monitoring with the Trace API
Mind The Firebird
 
Firebird 3 Windows Functions
Firebird 3 Windows  FunctionsFirebird 3 Windows  Functions
Firebird 3 Windows Functions
Mind The Firebird
 
Firebird Conference 2011 - Introduction
Firebird Conference 2011 - IntroductionFirebird Conference 2011 - Introduction
Firebird Conference 2011 - Introduction
Mind The Firebird
 
Firebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISVFirebird database recovery and protection for enterprises and ISV
Firebird database recovery and protection for enterprises and ISV
Mind The Firebird
 
Migration from Firebird 1.5 to Firebird 2.5
Migration from Firebird 1.5 to Firebird 2.5Migration from Firebird 1.5 to Firebird 2.5
Migration from Firebird 1.5 to Firebird 2.5
Mind The Firebird
 
Handling tree structures — recursive SPs, nested sets, recursive CTEs
Handling tree structures — recursive SPs, nested sets, recursive CTEsHandling tree structures — recursive SPs, nested sets, recursive CTEs
Handling tree structures — recursive SPs, nested sets, recursive CTEs
Mind The Firebird
 
Character Sets and Unicode in Firebird
Character Sets and Unicode in FirebirdCharacter Sets and Unicode in Firebird
Character Sets and Unicode in Firebird
Mind The Firebird
 

Recently uploaded (20)

Web Application Development A Comprehensive Guide for 2025.pdf
Web Application Development A Comprehensive Guide for 2025.pdfWeb Application Development A Comprehensive Guide for 2025.pdf
Web Application Development A Comprehensive Guide for 2025.pdf
Secuodsoft
 
POS Testing Strategies and Best Practices
POS Testing Strategies and Best PracticesPOS Testing Strategies and Best Practices
POS Testing Strategies and Best Practices
jamescantor38
 
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from TickingCron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
pmeth1
 
Choose Your Own Adventure to Get Started with Grafana Loki
Choose Your Own Adventure to Get Started with Grafana LokiChoose Your Own Adventure to Get Started with Grafana Loki
Choose Your Own Adventure to Get Started with Grafana Loki
Imma Valls Bernaus
 
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdfIBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
JabbarAbdallah
 
Advanced Cyber Security and Digital Forensics.pptx
Advanced Cyber Security and Digital Forensics.pptxAdvanced Cyber Security and Digital Forensics.pptx
Advanced Cyber Security and Digital Forensics.pptx
Muhammad54342
 
Getting Started with BoxLang - CFCamp 2025.pdf
Getting Started with BoxLang - CFCamp 2025.pdfGetting Started with BoxLang - CFCamp 2025.pdf
Getting Started with BoxLang - CFCamp 2025.pdf
Ortus Solutions, Corp
 
CYB 305 Forensics and Digital Computer Security.pptx
CYB 305  Forensics and Digital Computer Security.pptxCYB 305  Forensics and Digital Computer Security.pptx
CYB 305 Forensics and Digital Computer Security.pptx
Muhammad54342
 
Temas principales de GrafanaCON 2025 Grafana 12 y más
Temas principales de GrafanaCON 2025 Grafana 12 y másTemas principales de GrafanaCON 2025 Grafana 12 y más
Temas principales de GrafanaCON 2025 Grafana 12 y más
Imma Valls Bernaus
 
Kubernetes BateMetal Installation and Practice
Kubernetes BateMetal Installation and PracticeKubernetes BateMetal Installation and Practice
Kubernetes BateMetal Installation and Practice
wonyong hwang
 
Professional Consulting Resume of AL Davis
Professional Consulting Resume of AL DavisProfessional Consulting Resume of AL Davis
Professional Consulting Resume of AL Davis
ald303873
 
Menu in Android (Define,Create,Inflate and Click Handler)
Menu in Android (Define,Create,Inflate and Click Handler)Menu in Android (Define,Create,Inflate and Click Handler)
Menu in Android (Define,Create,Inflate and Click Handler)
Nabin Dhakal
 
Introduction to Programming presentation.pptx
Introduction to Programming presentation.pptxIntroduction to Programming presentation.pptx
Introduction to Programming presentation.pptx
HorusCarlosVilln
 
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdfCFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
Ortus Solutions, Corp
 
Scaling up your Snapshot tests, without the friction
Scaling up your Snapshot tests, without the frictionScaling up your Snapshot tests, without the friction
Scaling up your Snapshot tests, without the friction
arnold844201
 
SamFw Tool v4.9 Samsung Frp Tool Free Download
SamFw Tool v4.9 Samsung Frp Tool Free DownloadSamFw Tool v4.9 Samsung Frp Tool Free Download
SamFw Tool v4.9 Samsung Frp Tool Free Download
Iobit Uninstaller Pro Crack
 
Nasdanika Overview - Mission, Vision, Differentiators & Capabilities
Nasdanika Overview - Mission, Vision, Differentiators & CapabilitiesNasdanika Overview - Mission, Vision, Differentiators & Capabilities
Nasdanika Overview - Mission, Vision, Differentiators & Capabilities
Pavel Vlasov
 
Chapter Five - Packages.ppt JAVA SCRIPT PROGRAMMING AND
Chapter Five - Packages.ppt JAVA  SCRIPT PROGRAMMING ANDChapter Five - Packages.ppt JAVA  SCRIPT PROGRAMMING AND
Chapter Five - Packages.ppt JAVA SCRIPT PROGRAMMING AND
Jifarnecho
 
Custom Rummy Game Development
Custom     Rummy     Game    DevelopmentCustom     Rummy     Game    Development
Custom Rummy Game Development
Nova Carter
 
Albert Pintoy - A Distinguished Software Engineer
Albert Pintoy - A Distinguished Software EngineerAlbert Pintoy - A Distinguished Software Engineer
Albert Pintoy - A Distinguished Software Engineer
Albert Pintoy
 
Web Application Development A Comprehensive Guide for 2025.pdf
Web Application Development A Comprehensive Guide for 2025.pdfWeb Application Development A Comprehensive Guide for 2025.pdf
Web Application Development A Comprehensive Guide for 2025.pdf
Secuodsoft
 
POS Testing Strategies and Best Practices
POS Testing Strategies and Best PracticesPOS Testing Strategies and Best Practices
POS Testing Strategies and Best Practices
jamescantor38
 
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from TickingCron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
Cron Jobs Gone Wrong: The Top Mistakes That Keep Your Tasks from Ticking
pmeth1
 
Choose Your Own Adventure to Get Started with Grafana Loki
Choose Your Own Adventure to Get Started with Grafana LokiChoose Your Own Adventure to Get Started with Grafana Loki
Choose Your Own Adventure to Get Started with Grafana Loki
Imma Valls Bernaus
 
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdfIBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
IBM-App-Connect-Overview-IBM-App-Connect-Overview.pdf
JabbarAbdallah
 
Advanced Cyber Security and Digital Forensics.pptx
Advanced Cyber Security and Digital Forensics.pptxAdvanced Cyber Security and Digital Forensics.pptx
Advanced Cyber Security and Digital Forensics.pptx
Muhammad54342
 
Getting Started with BoxLang - CFCamp 2025.pdf
Getting Started with BoxLang - CFCamp 2025.pdfGetting Started with BoxLang - CFCamp 2025.pdf
Getting Started with BoxLang - CFCamp 2025.pdf
Ortus Solutions, Corp
 
CYB 305 Forensics and Digital Computer Security.pptx
CYB 305  Forensics and Digital Computer Security.pptxCYB 305  Forensics and Digital Computer Security.pptx
CYB 305 Forensics and Digital Computer Security.pptx
Muhammad54342
 
Temas principales de GrafanaCON 2025 Grafana 12 y más
Temas principales de GrafanaCON 2025 Grafana 12 y másTemas principales de GrafanaCON 2025 Grafana 12 y más
Temas principales de GrafanaCON 2025 Grafana 12 y más
Imma Valls Bernaus
 
Kubernetes BateMetal Installation and Practice
Kubernetes BateMetal Installation and PracticeKubernetes BateMetal Installation and Practice
Kubernetes BateMetal Installation and Practice
wonyong hwang
 
Professional Consulting Resume of AL Davis
Professional Consulting Resume of AL DavisProfessional Consulting Resume of AL Davis
Professional Consulting Resume of AL Davis
ald303873
 
Menu in Android (Define,Create,Inflate and Click Handler)
Menu in Android (Define,Create,Inflate and Click Handler)Menu in Android (Define,Create,Inflate and Click Handler)
Menu in Android (Define,Create,Inflate and Click Handler)
Nabin Dhakal
 
Introduction to Programming presentation.pptx
Introduction to Programming presentation.pptxIntroduction to Programming presentation.pptx
Introduction to Programming presentation.pptx
HorusCarlosVilln
 
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdfCFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
CFCamp2025 - Keynote Day 1 led by Luis Majano.pdf
Ortus Solutions, Corp
 
Scaling up your Snapshot tests, without the friction
Scaling up your Snapshot tests, without the frictionScaling up your Snapshot tests, without the friction
Scaling up your Snapshot tests, without the friction
arnold844201
 
Nasdanika Overview - Mission, Vision, Differentiators & Capabilities
Nasdanika Overview - Mission, Vision, Differentiators & CapabilitiesNasdanika Overview - Mission, Vision, Differentiators & Capabilities
Nasdanika Overview - Mission, Vision, Differentiators & Capabilities
Pavel Vlasov
 
Chapter Five - Packages.ppt JAVA SCRIPT PROGRAMMING AND
Chapter Five - Packages.ppt JAVA  SCRIPT PROGRAMMING ANDChapter Five - Packages.ppt JAVA  SCRIPT PROGRAMMING AND
Chapter Five - Packages.ppt JAVA SCRIPT PROGRAMMING AND
Jifarnecho
 
Custom Rummy Game Development
Custom     Rummy     Game    DevelopmentCustom     Rummy     Game    Development
Custom Rummy Game Development
Nova Carter
 
Albert Pintoy - A Distinguished Software Engineer
Albert Pintoy - A Distinguished Software EngineerAlbert Pintoy - A Distinguished Software Engineer
Albert Pintoy - A Distinguished Software Engineer
Albert Pintoy
 

Overview of RedDatabase 2.5

  • 1. Overview of Red Database 2.5 Roman Simakov, director of system development department RED SOFT CORPORATION
  • 2. About company • Red Soft Corporation was founded in 2006 • All solutions based on Open Source code • The main product is Red Database 2
  • 3. Development process (schema) 3 Firebird repository Red Soft repository merged commits conflict commits resolved commits Developer Firebird Developer Developer direct commits local commits
  • 4. QA process 4 Repository server Jenkins server Snapshots Release Candidates Releases Developer Test manager Commit changes Pull changes and run build jobs View test result Publish builds
  • 5. Security features 5 • Cryptographic plugin • Multi-factor authentication • Cumulative roles • DML access control • DDL access control • Service access control • Record filtering Functional features • Java Stored Procedures • Full Text Search • OpenLDAP integration • StandBy cluster (engine-level replication)
  • 6. Cryptographic plugin • It's a key feature used in other features to perform cryptographic operations. • It allows users to use necessary cryptographic methods required in different countries by using related plugins. • For Russia CryptoPro library and Windows CryptoAPI are supported. 6
  • 7. Multi-factor authentication • It allows user to provide several factors to be authenticated: OS context, password, certificate, etc. • Access to database is defined by login policy. It says what factors user must provide for authentication. • While authentication all authentication factors are transferred in encoded form. • After authentication both client and server have session key for exchanging private messages, for example new password when user wants to change it. 7
  • 8. Login policy properties Parameter name Description AUTH_FACTORS Example: (WINDOWS_NTLM PASSWORD)|(CERT_X509 PASSWORD) PSWD_NEED_CHAR The minimum number of characters in the password PSWD_NEED_DIGIT The minimum number of digits in the password PSWD_NEED_DIFF_CASE Need to use different case of characters in the password PSWD_MIN_LEN The minimum password length PSWD_VALID_DAYS The password validation interval in days PSWD_UNIQUE_COUNT The minimum number of the last unique passwords MAX_FAILED_COUNT The maximum number of failed attempt of authentication MAX_SESSIONS The maximum number of user sessions to database server MAX_IDLE_TIME The maximum idle time interval to user disconnecting 8
  • 9. Login policies DDL commands to control policies CREATE POLICY <policy_name> AS [param = value [, param = value]]; DROP POLICY <policy_name>; ALTER POLICY <policy_name> AS [param = value [, param = value]]; To grant policy to user use GRANT POLICY <policy_name> TO <user_name>; To revoke policy from user just grant DEFAULT policy to him GRANT POLICY “DEFAULT” TO <user_name>; 9
  • 10. Cumulative roles You can grant role to role except circle references GRANT ROLE1 TO ROLE2; REVOKE ROLE1 FROM ROLE2; • if user doesn't specify a role he gets permissions of all roles granted to him; • if user specifies a role he takes privileges of this role only. 10
  • 11. DML access control Extended permissions for generators/sequences GRANT SELECT | ALTER ON GENERATOR <generator> TO {<user> | <role>} [WITH GRANT OPTION]; REVOKE SELECT | ALTER ON GENERATOR <generator> FROM {<user> | <role>}; REVOKE GRANT OPTION FOR SET | GET ON GENERATOR <generator> FROM {<user> | <role>}; Extended permissions for table columns GRANT SELECT | INSERT | UPDATE {( column [, ... ] )} ON [TABLE] <table> TO {<user> | <role>} [WITH GRANT OPTION] REVOKE SELECT | INSERT | UPDATE {( column [, ... ] )} ON [TABLE] <table> FROM {<user> | <role>} REVOKE GRANT OPTION FOR SELECT | INSERT | UPDATE {( column [, ... ] )} ON [TABLE] <table> FROM {<user> | <role>} 11
  • 12. DDL access control (now in Firebird 3 too) Extended permissions for creating objects of database GRANT CREATE OBJECT TO {<USER>|<ROLE>} [WITH GRANT OPTION]; REVOKE CREATE OBJECT FROM {<USER>|<ROLE>}; Extended permissions for altering/droping objects of database GRANT ALTER|DROP [ANY] OBJECT TO {<USER>|<ROLE>} [WITH GRANT OPTION]; REVOKE ALTER|DROP [ANY] OBJECT FROM {<USER>|<ROLE>}; Where OBJECT can be: TABLE, TRIGGER, PROCEDURE, VIEW, DOMAIN, ROLE, GENERATOR, SEQUENCE, EXCEPTION, SHADOW, FUNCTION, INDEX, POLICY 12
  • 13. Service access control It's able to grant permissions to start some services (GBAK, GFIX, GSTAT, GSEC) GRANT EXECUTE ON SERVICE <SERVICE_NAME> TO {<USER>|<ROLE>} REVOKE EXECUTE ON SERVICE <SERVICE_NAME> FROM {<USER>|<ROLE>} • Permissions can be granted to users or global roles stored in security2.fdb. • Permissions can be granted by SYSDBA or by user with SECADMIN global role. 13
  • 14. Record filtering • Based on special SELECT triggers. • It allows user to skip the records if the given condition is false. • It allows user to clear some fields of records if the given condition is false. • It's used to filter system catalog to prevent user without any permissions on database object even to know about its existence. 14
  • 15. Record filter syntax User can declare filters in CREATE TABLE CREATE TABLE <table_name> [EXTERNAL [FILE] "<filespec>"] (<col_def> [, <col_def> | <tconstraint> ...], [COLFILTER <col_name> (<condition>), ...]) [, RECFILTER (<condition>)] To manage filters use ALTER TABLE ALTER TABLE table SET RECFILTER (<condition>); ALTER TABLE table DROP RECFILTER; ALTER TABLE table SET COLFILTER <col_name> (<condition>); ALTER TABLE table DROP COLFILTER <col_name>; 15
  • 16. Java Stored Procedures • It's possible to develop both user defined procedures and user defined functions • Portable code on widely used programing language • It's possible to re-use a lot of libraries • Java SP can return result set which allow them to be used as data source. • Can be used to exchange data with other databases. 16
  • 17. Full Text Search • Based on high performance cross-platform engine lucene (https://lucene.apache.org/) • Can perform search by several tables and fields • Can search in the most widely used file formats: rtf, doc, open office, pdf, etc. 17
  • 18. Integration with OpenLDAP Administrator OpenLDAP Server 18
  • 19. Optimization work with Storages SAS,SSD,... fast expensive HDD slow cheap Active DB part Archive DB part 19
  • 20. StandBy cluster (with sync replication) Master +pacemaker agent Slave +pacemaker agent 20 Record level changes acync sent and wait applying before transaction commit HA cluster under Pacemaker* * More about pacemaker at http://clusterlabs.org
  • 21. Automated Information System of Federal Service for Officers of Justice of Russia • AIS is installed and work in 85 regional departments and in the main office of FSOJ of Russia • Total amount of Red Database installations are about 2720, i.e. every city of Russia has one or several Red Database servers • AIS handles more than 10^9 documents per year • AIS works in 24/7 mode • Some databases more than 1TB and a lot of data goes to archived set of database files • 100x of concurrent connections • 100 000x transactions per hour 21
  • 22. Regional medical information system • Partner is SmartDeltaSystems Ltd. (http://www.sdsys.ru/) • Migration from Firebird because of they need to have certified solution and support • Work on CentOS and Windows • ~200 installations • Size of databases up to 12 GB • Central database size is about 50 GB • 1000x concurrent connections 22
  • 23. Automated server of radiomonitoring of Russia • The main database is ~700 GB • Regional - 100x GB • Increased by 10x GB per year • 600 000 transactions per day • 100x concurrent connections • OpenLDAP authentication 23
  • 24. Awards • «The best project of the state sector – 2011» (http://www.raspo.ru/content/28.html) • AIS FSOJ of Russia was endorsed by Prime Minister of Russia in 2014 (http://government.ru/news/10513) 24
  • 25. Some words about Red Database 2.6 • Direction to “state secret” security level • Mandatory access control based on SELinux integration • Full database encryption • Column data encryption by user key • Traffic and backup files encryption • Still based on Firebird 2.5 25
  • 26. SELinux libselinux Policies SELinux plugin packages MAC plugins interface Database objects initial contexts file Read during database creation DDL DML Red Database Users contexts security2.fdb Database Objects contexts
  • 27. user_a (rdb_user_u:rdb_user_r:rdb_user_t:s1) DB.fdb (system_u:object_r:rdb_database_t:s0) A (system_u:object_r:rdb_table_t:s0) select * from A 0 records filtered DATA (system_u:object_r:rdb_column_t:s0) MAC$LABEL foo system_u:object_r:rdb_record_t:s0 bar system_u:object_r:rdb_record_t:s1 select * from A 1 record filtered user_b (rdb_user_u:rdb_user_r:rdb_user_t:s0)
  • 28. Database Encryption 28 Key management CREATE KEY <key name> <algorithm id> GRANT KEY <key name> TO <user name> REVOKE KEY <key name> FROM <user name> DROP KEY <key name> Full database encryption isql -mf -certificate <cert alias> [-en(crypt) <key name>] SQL> CREATE DATABASE <db name>; Column database encryption isql -mf -certificate <cert alias> SQL> CREATE TABLE <table name> (<column def> [, ENCRYPT <column name> USING <key name>]); SQL> ALTER TABLE <table name> ENCRYPT <column name> USING <key name>; SQL> ALTER TABLE <table name> DECRYPT <column name>; Create an encrypted backup gbak [-en(crypt) <key name>]
  • 29. Some big goals of Red Database 3.0 • Merge with Firebird 3.0 • Load balancing cluster • Parallel backup/restore • GUI tool which support all Red Database features • Support of OpenGIS specification • Tools for migration from other DBMSs
  • 30. Thanks! We are pleased to invite you to test Red Database! visit: www.red-soft.biz ask: [email protected] [email protected]

Editor's Notes

  • #2: Добрый день, Меня зовут Вадим Щепинов, я представляю здесь компанию РЕДСОФТ, работающую на рынке в концепции ПО с открытым кодом. Тема мой презентации как ПО с открытым кодом может помочь решить задачи защиты информационных систем, которые определены Европейской программой по защите критической инфраструктуры как один из ее важнейших элементов.
  • #6: СУБД один из ключевых элементов безопасности (защиты) информационной системы потому что База данных содержит всю информацию в информационной системе. Недекларированные возможности в СУБД сводят на нет работу последующих слоев защиты Присутствие в Базе данных как всех самих данных, так и связей между ними, дает возможность средствам защиты информации (СЗИ) СУБД классифицировать структуры данных для их защиты