Can you please explain to me the RDBMS security concepts of client/server architectures?
I can certainly give you an overview – but security is, of course, a complex area, so this is just scraping the surface. Essentially, one of the “jobs” of the database engine is to look after the data. So any client application that tries to connect to a relational database management system (RDBMS) – i.e., the database server – has to supply some form of authorization to the engine. This is verified (or not) against a list of the users “known” to the engine.
Assuming that a match is found, the application is allowed to access the data appropriate for that user. Of course, it’s possible to create a user called “App” or something similar specifically for a given application and give that user the correct access rights for that one application. It’s also possible to put the security functions in the application itself. But as a database person, I would always work on the default assumption that the database engine should be controlling security.
Dig Deeper on Enterprise data architecture best practices
Related Q&A from Mark Whitehorn
Here's a guide to primary, super, foreign and candidate keys, what they're used for in relational database management systems and the differences ... Continue Reading
The unstructured data types common in big data systems are often better managed by a NoSQL database than relational software, Mark Whitehorn says. Continue Reading
IT managers should ask cloud providers some pointed questions about the security of data stored in cloud databases, says expert Mark Whitehorn. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.