Dear readers of our blog, we'd like to recommend you to visit the main page of our website, where you can learn about our product SQLS*Plus and its advantages.
 
SQLS*Plus - best SQL Server command line reporting and automation tool! SQLS*Plus is several orders of magnitude better than SQL Server sqlcmd and osql command line tools.
 

REQUEST COMPLIMENTARY SQLS*PLUS LICENCE

Enteros UpBeat offers a patented database performance management SaaS platform. It proactively identifies root causes of complex revenue-impacting database performance issues across a growing number of RDBMS, NoSQL, and deep/machine learning database platforms. We support Oracle, SQL Server, IBM DB2, MongoDB, Casandra, MySQL, Amazon Aurora, and other database systems.

Oracle database security and PL/SQL programming

3 September 2020

Oracle database security

Many PL/SQL developers believe that only database administrators and security specialists should take care of security. Indeed, some security aspects (e.g. user and privilege management) should be taken care of by administrators.

But it would be a serious mistake to believe that PL/SQL developers do not care about this topic at all. First of all, security is not a problem that can be solved once; it is a means of achieving a goal that must be constantly remembered. Secondly, many administrators focus their efforts on protecting the database as a whole, rather than programming the security features of a particular application.

You have probably heard that the reliability of a system is determined by the reliability of its weakest link. This principle is equally applicable to application security.

Every element of the infrastructure – application, architecture, middleware, database, operating system – contributes to the overall security of the infrastructure, and security failure of one component poses a threat to the entire system.

Understanding the structural security elements and integrating them into the application architecture is not only desirable but absolutely necessary.

The security aspects of Oracle are divided into three general categories:

  • Database, system, and network administrators only. These issues (such as user and privilege management) are outside the scope of my blog.
  • Aspects of importance to architecture developers and designers that are not under the responsibility of administrators. One example is the choice of a call rights model when creating stored code; usually, the decision is made by the developer, not the administrator, during the design process.
  • Aspects that are usually considered to be administrative, but that should be well known to developers and designers. This category includes encryption, line-level security, and application contexts. These are the aspects that my next articles will focus on.

How will the features and tools describe in my blog help PL/SQL developers and application architecture designers in their work? To answer this question, you should consider each topic separately:

  • Encryption plays a vital role in data protection and is actively used in many situations when designing applications. You must have practical knowledge of Oracle’s encryption-related functionality, including the Transparent Data Encryption (TDE) mechanism presented in Oracle Database 10g Release 2 and the Transparent Table Encryption (TTE) mechanism presented in Oracle Database 11g.
  • String level security (RLS, Row Level Security). When designing an application, you need to have a good understanding of the architecture of access and authorization checks to work with data. RLS allows you to limit the lines available to the user. In many cases, RLS simplifies understanding and implementation of applications, and sometimes even automatically ensures that ready-made applications comply with security rules adopted in your organization.
  • Application contexts are name/value pairs that are defined in a session by performing specific stored procedures. Application contexts are typically used to manage access to database resources according to rules that vary depending on the current user.
  • Detailed FGA (Fine-Grained Auditing) provides a mechanism for registering the fact that users issue certain commands and fulfill certain conditions. The FGA provides the developer with a lot of useful functions. For example, the FGA actually allows implementing SELECT triggers – user procedures that should be automatically performed at each data sampling from the table.

The topic of security in Oracle is truly immense; in my subsequent blogs, we will only look at its aspects of greatest interest to PL/SQL developers in the most general way. For more information on these and other Oracle security operations, see the Oracle PL/SQL for DBAs (Arup Nanda, Steven Feuerstein, O’Reilly) book.

Many other books have also been published to help you understand the intricacies of security.

 
Tags: , , , ,

MORE NEWS

 

Preamble​​NoSql is not a replacement for SQL databases but is a valid alternative for many situations where standard SQL is not the best approach for...

Preamble​​MongoDB Conditional operators specify a condition to which the value of the document field shall correspond.Comparison Query Operators $eq...

5 Database management trends impacting database administrationIn the realm of database management systems, moreover half (52%) of your competitors feel...

The data type is defined as the type of data that any column or variable can store in MS SQL Server. What is the data type? When you create any table or...

Preamble​​MS SQL Server is a client-server architecture. MS SQL Server process starts with the client application sending a query.SQL Server accepts,...

First the basics: what is the master/slave?One database server (“master”) responds and can do anything. A lot of other database servers store copies of all...

Preamble​​Atom Hopper (based on Apache Abdera) for those who may not know is an open-source project sponsored by Rackspace. Today we will figure out how to...

Preamble​​MongoDB recently introduced its new aggregation structure. This structure provides a simpler solution for calculating aggregated values rather...

FlexibilityOne of the most advertised features of MongoDB is its flexibility.  Flexibility, however, is a double-edged sword. More flexibility means more...

Preamble​​SQLShell is a cross-platform command-line tool for SQL, similar to psql for PostgreSQL or MySQL command-line tool for MySQL.Why use it?If you...

Preamble​​Writing an application on top of the framework on top of the driver on top of the database is a bit like a game on the phone: you say “insert...

Preamble​​Oracle Coherence is a distributed cache that is functionally comparable with Memcached. In addition to the basic function of the API cache, it...

Preamble​​IBM pureXML, a proprietary XML database built on a relational mechanism (designed for puns) that offers both relational ( SQL / XML ) and...

  What is PostgreSQL array? In PostgreSQL we can define a column as an array of valid data types. The data type can be built-in, custom or enumerated....

Preamble​​If you are a Linux sysadmin or developer, there comes a time when you need to manage an Oracle database that can work in your environment.In this...

Preamble​​Starting with Microsoft SQL Server 2008, by default, the group of local administrators is no longer added to SQL Server administrators during the...