search
HomeDatabaseMysql Tutorial账户方案系统角色多管齐下保障Oracle的安全

账户是定义在数据库系统中的一个名称,它是数据库的基本访问控制机制。当连接到Oracle数据库时,跟其他数据库一样,需要用户

  一、账户与系统角色结合,提高了账户的安全性。

  账户是定义在数据库系统中的一个名称,它是数据库的基本访问控制机制。当连接到Oracle数据库时,跟其他数据库一样,需要用户输入用户名与密码。数据库系统就是凭借这个用户名来授予其相应的数据库访问权限。不过,这跟其他数据库又有所不同。因为Oracle数据库有有一类很特殊的账户-特权账户。这些特权账户具有某些比较特殊的权限。为了数据库的安全,他们除了在数据库中要拥有某些特定的权限之外,还必须拥有操作系统对应的权限。数据库与操作系统一起,来保障数据库的安全。

  如在Oracle数据库中,主要有两类特权用户,分别为SYSDBA与SYSOPER。这两类用户主要用用来执行一些特殊的作业。如启动关闭数据库、建立数据库、备份与恢复操作等等。这些作业明显会直接影响到数据库的正常作业;而且备份恢复操作还直接跟数据库数据安全息息相关。为了保障这些特权账户的安全,Oracle数据库还采用了一些特殊机制。如Oracle要求,除了在数据库中要拥有对应的权限之外,还必须在操作系统中也是某些特定角色的成员。例如,Oracle数据库若是部署在微软的操作系统下,则安全成功后,在操作系统的角色中,会多SYSDBA与OSOPER两个组。特权账户必须要属于这两个组,才能够进行如上所述的一些数据库维护作业。同理,在Linux等其他操作系统平台下,也需要具有类似的权限。通过这种策略,特权账户的安全就又多了一个保障。如数据库管理员只想使用特权账户SYSDBA来管理维护数据库,而不需要SYSOPER账户。此时,数据库管理员就有两个选择。要么在数据库中禁用这个账户;要么在操作系统中把这个账户从Oracle建立的组中剔除出去。

  虽然SYSOPER与SYSDBA账户都是属于特权账户,但是他们的权限还是由差异的。如特权账户SYSDBA具备了特权账户SYSOPER的所有权限之外,还具有建立数据库、执行不完全恢复等权限。同时,前者还自动具备了DBA角色的所有权限;而后者则不具备DBA角色的权限。为了数据库库的安全,通常情况下不能够把这些特权账户的权限赋予给其他用户。虽然可以通过更改初始化参数来突破这个限制,但是出于数据库的安全考虑,,我们都不建议这么处理。

  可见,特权账户与操作系统固定权限结合,双管齐下,来保障数据库的安全,这是Oracle数据库的一个突破。其在很大程度上,提高了特权账户的安全性。若是普通账户,则没有这方面的限制。

  二、账户与方案一一对应保障Oracle安全。

  除了账户与系统角色结合,来提高账户安全性之外,Oracle数据库另外一个值得称颂的地方就是把账户与方案联系起来,进一步提高了账户的安全性。

  在Oracle数据库中,方案是用户所拥有数据库对象的集合。这是因为在Oracle数据库中对象是以用户来组织的,用户与方案是一一对应的,并且两者所使用的名称相同。利用Oralce数据库与实例安装完成后,其默认情况下有两个用户,分别为SYSTEM与SCOTT。他们分别对应了两个方案SYSTEM与SCOTT。Oracle数据库就是账户与方案一起,来提高数据库访问的安全性。

  如用户可以直接访问其自己的方案对象,但是如果需要访问其他用户的方案对象时,则需要具有相关的权限。如用户SCOTT,其方案SCOTT下所有的数据库对象都可以进行访问。但是,如果SCOTT用户想访问方案SYSTEM下面的数据库对象,则需要先经过用户SYSTEM进行授权。如果他没有把这个访问的权限授权给SCOTT的话,则用户SCOTT就无法访问方案SYSTE下面的任何一个数据库对象。所以,方案就好像一个个保护罩,又把数据库逻辑的分割成几个独立的区域。这个区域的主人可以任意访问内部的任何数据库对象。若其他用户想要访问这个区域的话,则必须要先经过这个区域主人的授权。这一个个区域(方案)是用户的私人领地,未经允许他人不得进入。通过这种方式,用户就可以保护自己所建立数据对象的安全。

  在使用方案是,需要注意一些细节方面的问题。如在同一个方案中,不能够存在同名的对象;但是在不同的方案中,不同用户可以建立同名的对象。还有当某个用户要访问其他方案的对象时,必须加入方案名最为前缀。也就说,要在数据库对象名之前加入主人的名字。这些是硬性规则,不能够打折扣。

linux

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Explain the ACID properties (Atomicity, Consistency, Isolation, Durability).Explain the ACID properties (Atomicity, Consistency, Isolation, Durability).Apr 16, 2025 am 12:20 AM

ACID attributes include atomicity, consistency, isolation and durability, and are the cornerstone of database design. 1. Atomicity ensures that the transaction is either completely successful or completely failed. 2. Consistency ensures that the database remains consistent before and after a transaction. 3. Isolation ensures that transactions do not interfere with each other. 4. Persistence ensures that data is permanently saved after transaction submission.

MySQL: Database Management System vs. Programming LanguageMySQL: Database Management System vs. Programming LanguageApr 16, 2025 am 12:19 AM

MySQL is not only a database management system (DBMS) but also closely related to programming languages. 1) As a DBMS, MySQL is used to store, organize and retrieve data, and optimizing indexes can improve query performance. 2) Combining SQL with programming languages, embedded in Python, using ORM tools such as SQLAlchemy can simplify operations. 3) Performance optimization includes indexing, querying, caching, library and table division and transaction management.

MySQL: Managing Data with SQL CommandsMySQL: Managing Data with SQL CommandsApr 16, 2025 am 12:19 AM

MySQL uses SQL commands to manage data. 1. Basic commands include SELECT, INSERT, UPDATE and DELETE. 2. Advanced usage involves JOIN, subquery and aggregate functions. 3. Common errors include syntax, logic and performance issues. 4. Optimization tips include using indexes, avoiding SELECT* and using LIMIT.

MySQL's Purpose: Storing and Managing Data EffectivelyMySQL's Purpose: Storing and Managing Data EffectivelyApr 16, 2025 am 12:16 AM

MySQL is an efficient relational database management system suitable for storing and managing data. Its advantages include high-performance queries, flexible transaction processing and rich data types. In practical applications, MySQL is often used in e-commerce platforms, social networks and content management systems, but attention should be paid to performance optimization, data security and scalability.

SQL and MySQL: Understanding the RelationshipSQL and MySQL: Understanding the RelationshipApr 16, 2025 am 12:14 AM

The relationship between SQL and MySQL is the relationship between standard languages ​​and specific implementations. 1.SQL is a standard language used to manage and operate relational databases, allowing data addition, deletion, modification and query. 2.MySQL is a specific database management system that uses SQL as its operating language and provides efficient data storage and management.

Explain the role of InnoDB redo logs and undo logs.Explain the role of InnoDB redo logs and undo logs.Apr 15, 2025 am 12:16 AM

InnoDB uses redologs and undologs to ensure data consistency and reliability. 1.redologs record data page modification to ensure crash recovery and transaction persistence. 2.undologs records the original data value and supports transaction rollback and MVCC.

What are the key metrics to look for in an EXPLAIN output (type, key, rows, Extra)?What are the key metrics to look for in an EXPLAIN output (type, key, rows, Extra)?Apr 15, 2025 am 12:15 AM

Key metrics for EXPLAIN commands include type, key, rows, and Extra. 1) The type reflects the access type of the query. The higher the value, the higher the efficiency, such as const is better than ALL. 2) The key displays the index used, and NULL indicates no index. 3) rows estimates the number of scanned rows, affecting query performance. 4) Extra provides additional information, such as Usingfilesort prompts that it needs to be optimized.

What is the Using temporary status in EXPLAIN and how to avoid it?What is the Using temporary status in EXPLAIN and how to avoid it?Apr 15, 2025 am 12:14 AM

Usingtemporary indicates that the need to create temporary tables in MySQL queries, which are commonly found in ORDERBY using DISTINCT, GROUPBY, or non-indexed columns. You can avoid the occurrence of indexes and rewrite queries and improve query performance. Specifically, when Usingtemporary appears in EXPLAIN output, it means that MySQL needs to create temporary tables to handle queries. This usually occurs when: 1) deduplication or grouping when using DISTINCT or GROUPBY; 2) sort when ORDERBY contains non-index columns; 3) use complex subquery or join operations. Optimization methods include: 1) ORDERBY and GROUPB

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat Commands and How to Use Them
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft