SEC_CASE_SENSITIVE_LOGON--密碼大小寫引數--動態
今天在做了一個change,就是修改一個Oracle 資料庫上的這個引數,
SQL> show parameter sec_case_sensitive_logon;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon boolean TRUE
SQL> alter system set sec_case_sensitive_logon=FALSE; //預設scope=both,故重啟DB之後仍然有效
System altered.
SQL> show parameter sec_case_sensitive_logon;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon boolean FALSE
參考文獻: http://blog.itpub.net/519536/viewspace-621998
在Oracle的11g之前的版本中密碼是不區分大小寫的(使用雙引號強制除外)。在Oracle的11g版本中對此有所增強。從此密碼有了大小寫的區分,這個大小寫敏感特性是透過SEC_CASE_SENSITIVE_LOGON引數來控制的。簡單探索一下。
1.建立Secooler使用者,注意它的密碼同時包含大寫字母和小寫字母。
sys@ora11gR2> create user Secooler identified by Secooler;
User created.
sys@ora11gR2> grant connect to secooler;
Grant succeeded.
從這個授權成功上可見,使用者名稱仍然不區分大小寫。
2.嘗試使用全小寫的密碼登陸
sys@ora11gR2> conn secooler/secooler
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
報錯,顯然不行,此時大小寫敏感性檢查已經啟用。
3.使用“正確”的密碼“Secooler”進行登陸,成功。
sys@ora11gR2> conn secooler/Secooler
Connected.
secooler@ora11gR2> show user;
USER is "SECOOLER"
4.看一下“幕後黑手”SEC_CASE_SENSITIVE_LOGON引數的描述
sys@secooler> show parameter sec_case_sensitive_logon
NAME TYPE VALUE
-------------------------- ---------- -----------
sec_case_sensitive_logon boolean TRUE
sys@ora11gR2> select a.ksppinm name,b.ksppstvl value,a.ksppdesc description
2 from x$ksppi a,x$ksppcv b
3 where a.indx = b.indx
4 and a.ksppinm = 'sec_case_sensitive_logon'
5 /
NAME VALUE DESCRIPTION
------------------------- ------ -----------------------------------------
sec_case_sensitive_logon TRUE case sensitive password enabled for logon
該引數預設值是“TRUE”,因此,預設情況下密碼大小寫是敏感的。
5.將SEC_CASE_SENSITIVE_LOGON引數修改為“FALSE”
sys@ora11gR2> alter system set sec_case_sensitive_logon = FALSE;
System altered.
6.此時系統將不對密碼做大小寫敏感驗證
sys@ora11gR2> conn secooler/secooler
Connected.
7.即使修改SEC_CASE_SENSITIVE_LOGON引數為“FALSE”,在系統中記錄的也是區分大小寫的形式,只是不進行驗證而已。
1)建立另外一個使用者sec,並授權
sys@ora11gR2> create user sec identified by SeC;
User created.
sys@ora11gR2> grant connect to sec;
Grant succeeded.
2)在SEC_CASE_SENSITIVE_LOGON引數為“FALSE”時嘗試連線,成功,因為此時不進行校驗。
sys@ora11gR2> conn sec/sec
Connected.
3)恢復SEC_CASE_SENSITIVE_LOGON引數為“TRUE”,再次嘗試連線將會失敗。
sec@ora11gR2> conn / as sysdba
Connected.
sys@ora11gR2> alter system set sec_case_sensitive_logon = TRUE;
System altered.
sys@ora11gR2> conn sec/sec
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
4)使用“正確”的密碼進行嘗試,成功。
sys@ora11gR2> conn sec/SeC
Connected.
5)結論
11g環境中密碼是以區分大小寫的形式進行儲存的。
8.Oracle 11g文件參考(11gR1和11gR2內容相同)
9.小結
11g的這個密碼大小寫敏感的新特性對於提升資料庫的安全性有很大的幫助,同時也增加了密碼的排列組合數目,從此“Secooler”和“secooler”可以作為兩個不同使用者的密碼了。從這個小小的改動上可以看出Oracle諸多人性化改變無處不在。
SQL> show parameter sec_case_sensitive_logon;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon boolean TRUE
SQL> alter system set sec_case_sensitive_logon=FALSE; //預設scope=both,故重啟DB之後仍然有效
System altered.
SQL> show parameter sec_case_sensitive_logon;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon boolean FALSE
參考文獻: http://blog.itpub.net/519536/viewspace-621998
在Oracle的11g之前的版本中密碼是不區分大小寫的(使用雙引號強制除外)。在Oracle的11g版本中對此有所增強。從此密碼有了大小寫的區分,這個大小寫敏感特性是透過SEC_CASE_SENSITIVE_LOGON引數來控制的。簡單探索一下。
1.建立Secooler使用者,注意它的密碼同時包含大寫字母和小寫字母。
sys@ora11gR2> create user Secooler identified by Secooler;
User created.
sys@ora11gR2> grant connect to secooler;
Grant succeeded.
從這個授權成功上可見,使用者名稱仍然不區分大小寫。
2.嘗試使用全小寫的密碼登陸
sys@ora11gR2> conn secooler/secooler
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
報錯,顯然不行,此時大小寫敏感性檢查已經啟用。
3.使用“正確”的密碼“Secooler”進行登陸,成功。
sys@ora11gR2> conn secooler/Secooler
Connected.
secooler@ora11gR2> show user;
USER is "SECOOLER"
4.看一下“幕後黑手”SEC_CASE_SENSITIVE_LOGON引數的描述
sys@secooler> show parameter sec_case_sensitive_logon
NAME TYPE VALUE
-------------------------- ---------- -----------
sec_case_sensitive_logon boolean TRUE
sys@ora11gR2> select a.ksppinm name,b.ksppstvl value,a.ksppdesc description
2 from x$ksppi a,x$ksppcv b
3 where a.indx = b.indx
4 and a.ksppinm = 'sec_case_sensitive_logon'
5 /
NAME VALUE DESCRIPTION
------------------------- ------ -----------------------------------------
sec_case_sensitive_logon TRUE case sensitive password enabled for logon
該引數預設值是“TRUE”,因此,預設情況下密碼大小寫是敏感的。
5.將SEC_CASE_SENSITIVE_LOGON引數修改為“FALSE”
sys@ora11gR2> alter system set sec_case_sensitive_logon = FALSE;
System altered.
6.此時系統將不對密碼做大小寫敏感驗證
sys@ora11gR2> conn secooler/secooler
Connected.
7.即使修改SEC_CASE_SENSITIVE_LOGON引數為“FALSE”,在系統中記錄的也是區分大小寫的形式,只是不進行驗證而已。
1)建立另外一個使用者sec,並授權
sys@ora11gR2> create user sec identified by SeC;
User created.
sys@ora11gR2> grant connect to sec;
Grant succeeded.
2)在SEC_CASE_SENSITIVE_LOGON引數為“FALSE”時嘗試連線,成功,因為此時不進行校驗。
sys@ora11gR2> conn sec/sec
Connected.
3)恢復SEC_CASE_SENSITIVE_LOGON引數為“TRUE”,再次嘗試連線將會失敗。
sec@ora11gR2> conn / as sysdba
Connected.
sys@ora11gR2> alter system set sec_case_sensitive_logon = TRUE;
System altered.
sys@ora11gR2> conn sec/sec
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
4)使用“正確”的密碼進行嘗試,成功。
sys@ora11gR2> conn sec/SeC
Connected.
5)結論
11g環境中密碼是以區分大小寫的形式進行儲存的。
8.Oracle 11g文件參考(11gR1和11gR2內容相同)
SEC_CASE_SENSITIVE_LOGON
Property | Description |
---|---|
Parameter type | Boolean |
Default value | true |
Modifiable | ALTER SYSTEM |
Range of values | true | false |
Basic | No |
SEC_CASE_SENSITIVE_LOGON enables or disables password case sensitivity in the database.
Values:
-
true
Database logon passwords are case sensitive.
-
false
Database logon passwords are not case sensitive.
9.小結
11g的這個密碼大小寫敏感的新特性對於提升資料庫的安全性有很大的幫助,同時也增加了密碼的排列組合數目,從此“Secooler”和“secooler”可以作為兩個不同使用者的密碼了。從這個小小的改動上可以看出Oracle諸多人性化改變無處不在。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29674916/viewspace-2125334/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 密碼區分大小寫密碼
- 動態引數,靜態引數
- 【11g】使用SEC_CASE_SENSITIVE_LOGON引數控制密碼大小寫敏感性Go密碼
- 關於靜態引數和動態引數
- MySQL 關於表名大小寫的引數MySql
- Oracle動態、靜態引數引數修改規則Oracle
- 11G 新特性:密碼大小寫策略密碼
- 動態引數與靜態引數的判斷、修改
- Oracle 11gR2密碼區分大小寫Oracle密碼
- Oracle11g 特性——密碼區分大小寫Oracle密碼
- 11G開始 密碼區分大小寫密碼
- 動態路由(URL引數)路由
- Oracle 靜態引數與動態引數型別介紹Oracle型別
- 密碼和引數的恢復密碼
- 【11gR2新特性】密碼區分大小寫密碼
- oracle 11g新特性之密碼大小寫敏感Oracle密碼
- 11G使用者密碼大小寫處理密碼
- Oracle11g新特性——密碼區分大小寫Oracle密碼
- EBS密碼安全的幾個引數密碼
- Python函式/動態引數/關鍵字引數Python函式
- Retrofit 動態引數(非固定引數、非必須引數)(Get、Post請求)
- 修改RAC引數指定節點名跟大小寫有關係
- Oracle 12c 業務使用者密碼大小寫不敏感Oracle密碼
- 設定Oracle的使用者密碼不區分大小寫Oracle密碼
- oralce密碼檔案要注意SID的大小寫問題密碼
- 10g、11g口令檔案密碼大小寫敏感密碼
- hust 密碼學課設 rsa引數d密碼學
- 密碼相關的引數或事項密碼
- mysql 動態引數(Dynamic System Variable Summary)MySql
- 檢視引數是否可以動態修改
- ROS 動態引數伺服器教程ROS伺服器
- Oracle 11g使用者名稱密碼區分大小寫Oracle密碼
- 修改Oracle11g使用者密碼不區分大小寫Oracle密碼
- ImageView 動態設定大小View
- 介面自動化之引數動態生成替換
- 日期轉換函式的格式引數大小寫規則 (自yangtingkun)函式
- leaflet動態更改wms瓦片請求引數
- javascript動態設定字型的大小程式碼例項JavaScript