Oracle登錄認證方式詳解

文章目錄

      • 一、簡介
      • 二、OS認證
      • 三、口令認證
      • 四、remote_login_passwordfile 詳解

一、簡介

在數據庫管理中,登錄認證是確保數據庫安全性的重要環節。Oracle數據庫提供 了兩種認證方式,一種是“操作系統認證”,一種是“口令文件認證,以滿足不同場景下的安全需求。

二、OS認證

OS認證(Operating System Authentication)是Oracle數據庫中的一種登錄認證方式,也稱為操作系統認證。
該認證方式依賴于操作系統級別的身份驗證機制,用戶通過操作系統的身份驗證后,可以直接登錄到Oracle數據庫,無需提供額外的數據庫用戶名和密碼。

使用OS認證,用戶可以使用其本地操作系統賬戶名和密碼登陸Oracle數據庫。
OS認證的優點是,用戶不需要再記憶額外的用戶名和密碼,能夠快速登陸數據庫,
且管理員可通過將用戶添加到系統組來控制其數據庫訪問權限。

驗證命令:
1.sqlplus/as sysdba
除系統用戶外,其他用戶依舊需要使用口令進行認證:
sqlplus hr/hr(前面的hr是用戶名,后面的hr是密碼)

2.sqlnet.ora文件中加入,文件位置在 $ORACLE_HOME/network/admin目錄下
SQLNET.AUTHENTICATION_SERVICES=(NTS)
這一種模式只支持WINDOWS NT系統
LINUX下默認是支持OS認證和口令(密碼)認證的所以不需要修改sqlnet.ora

案列:
在安裝Oracle數據庫時創建了一個新的Oracle用戶(通常是名為"oracle"的用戶),在安裝過程中可以選擇將該用戶添加到dba組中。
該組是Oracle數據庫的特權組,擁有sysdba角色的權限。因此,當通過該用戶登錄數據庫時,系統會自動識別該用戶屬于dba組,并授予其sysdba角色的特權,所以啟用OS認證的時候oracle用戶可以直接利用 sqlplus / as sysdba登錄數據庫
在這里插入圖片描述
在這里插入圖片描述

取消OS認證
1.修改sqlnet.ora(如果沒有新創建即可)
路徑:
$ORACLE_HOME/network/admin

添加以下內容:
vim sqlnet.ora

SQLNET.AUTHENTICATION_SERVICES=(NONE)

2.重新使用sqlplus / as sysdba登錄 這時需要輸入用戶名和密碼并且以sysdba的身份登錄
在這里插入圖片描述

三、口令認證

Oracle的口令文件的作用是存放所有以sysdba或者sysoper權限連接數據庫的用戶的口令,如果想以sysdba權限遠程連接數據庫,必須使用口令文件,否則不能連上。

1、使用口令文件驗證
如果當前沒有使用口令文件驗證。可以采用如下方法開啟口令文件驗證。
修改salnet.ora里的參數,取消OS認證,打開口令認證方式
SQLNET. AUTHENTICATION_SERVICES = (NONE)

2.建立口令文件(口令文件丟失或者口令文件損壞,無法使用口令登錄時重建)

默認格式

$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapworcl password=oracle force=y format=12 (實例名orcl為例)
force=y 為覆蓋老密碼文件  format=12(使用12C以前的版本生成,可以避免因為輸入的密碼過短報錯的問題)
$ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapworcl password=oracle force=y format=12

實驗一,使用口令文件驗證方式,登錄sys用戶
1.確保口令密碼文件存在
在這里插入圖片描述
2.使用 sqlplus sys/oracle as sysdba 登錄數據庫
結果:登錄成功
在這里插入圖片描述

實驗二、刪除口令密碼文件,使用口令文件驗證方式,登錄sys用戶

1.刪除口令密碼文件

rm -rf  $ORACLE_HOME/dbs/orapworcl

2.使用 sqlplus sys/oracle as sysdba 登錄數據庫
結果:登錄失敗
在這里插入圖片描述
結論:使用口令認證方式,必須要有口令密碼文件

四、remote_login_passwordfile 詳解

在某種情況下使用remote_login_passwordfile參數可以增強系統的安全性,所謂提高安全性就是指禁止以SYSDBA或者SYSOPER特權用戶從客戶端登錄到數據庫系統中。

查看當前參數的值
show parameter remote_login_passwordfile
在這里插入圖片描述
參數解釋:
當取值為 EXCLUSIVE 時,允許客戶端以SYSDBA或者SYSOPER特權用戶從客戶端登錄到數據庫系統中,完成對數據庫的管理操作。允許授權和回收SYSDBA和SYSOPER權限,允許你在sys用戶下修改sys用戶的密碼。
當取值為 NONE時, 禁止客戶端以SYSDBA或者SYSOPER特權用戶從客戶端登錄到數據庫系統中,完成對數據庫的管理操作。禁止授權和回收SYSDBA和SYSOPER權限。
當取值為 SHARED 時,允許客戶端以SYSDBA或者SYSOPER特權用戶從客戶端登錄到數據庫系統中,完成對數據庫的管理操作,禁止授權和回收SYSDBA和SYSOPER權限。

remote_login_passwordfile參數的修改

alter system set remote_login_passwordfile =shared scope=spfile;

由于修改spfile文件修改,需要重啟數據庫才能生效

shutdown immediate
startup

查看是remote_login_passwordfile參數否修改成功
show parameter remote_login_passwordfile
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/168044.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/168044.shtml
英文地址,請注明出處:http://en.pswp.cn/news/168044.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

智安網絡|如何最大限度地提高企業網絡安全水平

在當今數字化時代,企業面臨著日益復雜和智能化的網絡威脅。為了保護企業的機密信息和客戶數據,漏洞掃描成為了一個至關重要的安全措施。然而,對于企業來說,他們最關心的是什么問題呢? 一、漏洞的發現和修復 在網絡安全…

路徑規劃之Best-First Search算法

系列文章目錄 路徑規劃之Dijkstra算法 路徑規劃之Best-First Search算法 路徑規劃之Best-First Search算法 系列文章目錄前言一、Best-First Search算法1.1 起源1.2 過程 三、簡單使用 前言 Best-First Search算法和Dijkstra算法類似,都屬于BFS的擴展或改進 一、…

Nginx 服務器 SSL 證書安裝部署

操作場景 本文檔以證書名稱 menglinfeng.top 為例。 Nginx 版本以 nginx/1.18.0 為例。 當前服務器的操作系統為 CentOS 7,由于操作系統的版本不同,詳細操作步驟略有區別。 安裝 SSL 證書前,請您在 Nginx 服務器上開啟 “443” 端口&#xf…

基于官方YOLOv4開發構建目標檢測模型超詳細實戰教程【以自建缺陷檢測數據集為例】

本文是關于基于YOLOv4開發構建目標檢測模型的超詳細實戰教程,超詳細實戰教程相關的博文在前文有相應的系列,感興趣的話可以自行移步閱讀即可:《基于yolov7開發實踐實例分割模型超詳細教程》 《YOLOv7基于自己的數據集從零構建模型完整訓練、…

springboot(ssm超市貨品信息管理系統 超市購物系統Java(codeLW)

springboot(ssm超市貨品信息管理系統 超市購物系統Java(code&LW) 開發語言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服務器:tomcat 數據庫:mysql 5.7(或8.0&am…

Linux技能篇-非交互式修改密碼

今天的文章沒有格式,簡單分享一個小技能,就是標題所說–非交互式修改密碼。 一、普通方式修改用戶密碼 最普通的修改密碼的命令就是passwd命令 [rootlocalhost ~]# passwd root Changing password for user root. New password: Retype new password:…

一文徹底看懂Python切片,Python切片理解與操作

1.什么是切片 切片是Python中一種用于操作序列類型(如列表、字符串和元組)的方法。它通過指定起始索引和結束索引來截取出序列的一部分,形成一個新的序列。切片是訪問特定范圍內的元素,就是一個Area。 說個笑話:切片不是切片,而是切片,但是又是切片。大家理解下呢(末…

高防cdn防護原理是什么,是否可以防護服務器嗎

隨著互聯網業務的迅速發展,網絡安全問題日益凸顯。在這樣的背景下,高防CDN作為一種有效的網絡安全解決方案,受到了越來越多的關注。那么高防CDN的防護原理是什么呢?接下來就跟小德一起深入了解下吧! 1. 高防CDN的基本概念 我們要明確什么是…

【云原生 Prometheus篇】Prometheus的動態服務發現機制

自動發現 一、Prometheus服務發現 理論部分1.1 Prometheus數據采集配置1.2 基于文件的服務發現1.3 基于consul的服務發現1.4 基于 Kubernetes API 的服務發現1.4.1 概念1.4.2 部分配置參數1.4.3 配置模板 二、實例一:部署基于文件的服務發現2.1 創建用于服務發現的文…

Spring事務底層原理(待完善)

EnableTransactionManagement 我們經常使用EnableTransactionManagement開啟事務, 這個注解導入一個類,Import(TransactionManagementConfigurationSelector.class), 會在spring容器增加兩個bean, AutoProxyRegistrar和ProxyTransactionManagementConfiguration. AutoProxyRe…

IDEA中常用快捷鍵

整理了一些IDEA開發常用的快捷鍵: 快捷鍵組合實現效果psvm Tab鍵 / main Tab鍵public static void main(String[] args)sout Tab鍵System.out.println()Ctrl X刪除當前行Ctrl D復制當前行AltInsert(或右鍵Generate)生成代碼(如get,set方法,構造函數等)CtrlAltT…

存儲區域

將應用程序加載到內存空間執行時,操作系統負責代碼段、數據段和BSS段的加載,并在內存中為這些段分配空間。 棧段亦由操作系統分配和管理,而不需要程序員顯示地管理;堆段由程序員自己管理,即顯示地申請和釋放空間。 進…

uniapp 輪播圖(含組件封裝,自動注冊全局組件)

效果預覽 組件封裝 src\components\SUI_Swiper.vue 可參考官網配置更多屬性 swipernavigator <script setup lang"ts"> import { ref } from vue defineProps({config: Object, })const activeIndex ref(0) const change: UniHelper.SwiperOnChange (e) &…

WPF面試題入門篇

入門篇[2] 1. 談談什么是WPF&#xff1f; WPF&#xff08;Windows Presentation Foundation&#xff09;是微軟公司開發的一種用于創建Windows應用程序的用戶界面框架。它是.NET Framework的一部分&#xff0c;提供了一種基于XAML&#xff08;可擴展應用程序標記語言&#xf…

【算法技巧】位運算

目錄 1.概述2.位運算技巧2.1.與運算 (&)2.1.1.判斷奇偶性2.1.2.判斷一個數是否是 2 的冪2.1.3.將英文字母轉換為大寫2.1.4.代替取模運算 2.2.或運算 (|)2.2.1.將英文字母轉換為小寫 2.3.異或運算 (^)2.3.1.消除成對相同的數2.3.2.不使用臨時變量來交換兩個數2.3.3.進行英文…

一起學docker系列之八使用 Docker 安裝配置 MySQL

目錄 前言步驟 1&#xff1a;拉取 MySQL 鏡像步驟 2&#xff1a;運行 MySQL 容器步驟 3&#xff1a;檢查容器狀態步驟 4&#xff1a;進入 MySQL 容器步驟 5&#xff1a;配置 MySQL 字符編碼步驟 6&#xff1a;重啟 MySQL 容器步驟 7&#xff1a;測試字符編碼步驟 8&#xff1a;…

防止應用程序截屏(容器式,防止極域電子教室和錄屏軟件錄制)

核心原理、實現目的 1、使用Panel容器將外部窗口嵌入自己寫的程序 2、使用防止截屏的函數來對窗口透明&#xff0c;這可以使本窗口內所有窗口在錄屏軟件上消失 3、解放&#xff0c;抓取&#xff0c;存儲句柄&#xff0c;實現擺脫錄屏&#xff08;極域監控&#xff09; 程序…

用 Addon 增強 Node.js 和 Electron 應用的原生能力

前言 Node.js Addon 是 Node.js 中為 JavaScript 環境提供 C/C 交互能力的機制。其形態十分類似 Java 的 JNI&#xff0c;都是通過提供一套 C/C SDK&#xff0c;用于在 C/C 中創建函數方法、進行數據轉換&#xff0c;以便 JavaScript / Java 等語言進行調用。這樣編寫的代碼通常…

Spring - Mybatis-設計模式總結

Mybatis-設計模式總結 1、Builder模式 2、工廠模式 3、單例模式 4、代理模式 5、組合模式 6、模板方法模式 7、適配器模式 8、裝飾者模式 9、迭代器模式 雖然我們都知道有26個設計模式&#xff0c;但是大多停留在概念層面&#xff0c;真實開發中很少遇到&#xff0c;…

【數據結構】時間和空間復雜度

馬上就要進入到數據結構的學習了 &#xff0c;我們先來了解一下時間和空間復雜度&#xff0c;這也可以判斷我們的算法是否好壞&#xff1b; 如何衡量一個算法的好壞&#xff1f; 就是看它的算法效率 算法效率 算法效率分析分為兩種&#xff1a;第一種是時間效率&#xff0c;第…