創(chuàng)建新配置文件
使用CREATE PROFILE命令可創(chuàng)建新配置文件。
語(yǔ)法如下:
CREATE PROFILE profile_name
[LIMIT {parameter value} ... ];
包括 LIMIT 子句以及一個(gè)或多個(gè)空格分隔的parameter/value 對(duì),以指定PolarDB O引擎強(qiáng)制實(shí)施的規(guī)則。
參數(shù)
參數(shù) | 說(shuō)明 |
profile_name | 指定配置文件的名稱。 |
parameter | 指定配置文件限制的屬性。 |
value | 指定參數(shù)限制。 |
對(duì)于每個(gè) parameter,PolarDB O引擎支持以下顯示的 value:
FAILED_LOGIN_ATTEMPTS 指定在服務(wù)器將用戶賬戶鎖定 PASSWORD_LOCK_TIME 所指定的時(shí)間長(zhǎng)度之前,用戶可能進(jìn)行的登錄嘗試失敗次數(shù)。支持的值為:
大于 0 的 INTEGER 值。
DEFAULT - DEFAULT 配置文件中指定的 FAILED_LOGIN_ATTEMPTS 的值。
UNLIMITED – 正在連接的用戶可以進(jìn)行無(wú)限次數(shù)的失敗登錄嘗試。
PASSWORD_LOCK_TIME 指定在服務(wù)器解鎖因 FAILED_LOGIN_ATTEMPTS 而被鎖定的賬戶之前必須經(jīng)過(guò)的時(shí)間長(zhǎng)度。支持的值為:
大于等于 0 的 NUMERIC 值。要指定一天的小數(shù)部分,請(qǐng)指定一個(gè)小數(shù)值。例如,使用值 4.5 可指定 4 天 12 小時(shí)。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_LOCK_TIME 的值。
UNLIMITED – 賬戶被鎖定,直到由數(shù)據(jù)庫(kù)超級(jí)用戶手動(dòng)解鎖。
PASSWORD_LIFE_TIME 指定在提示用戶提供新密碼之前,可以使用當(dāng)前密碼的天數(shù)。在使用 PASSWORD_LIFE_TIME 子句時(shí)包含 PASSWORD_GRACE_TIME 子句可指定在角色的連接被拒絕之前,密碼過(guò)期后將經(jīng)過(guò)的天數(shù)。如果未指定 PASSWORD_GRACE_TIME,則密碼將在 PASSWORD_GRACE_TIME 的默認(rèn)值指定的那天過(guò)期,并且在提供新密碼之前,不允許用戶執(zhí)行任何命令。支持的值為:
大于等于 0 的 NUMERIC 值。要指定一天的小數(shù)部分,請(qǐng)指定一個(gè)小數(shù)值。例如,使用值 4.5 可指定 4 天 12 小時(shí)。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_LIFE_TIME 的值。
UNLIMITED – 密碼沒有過(guò)期日期。
PASSWORD_GRACE_TIME 指定密碼過(guò)期后的寬限期的長(zhǎng)度,直到用戶被迫更改密碼為止。在寬限期過(guò)期后,將允許用戶進(jìn)行連接,但在用戶更新其過(guò)期密碼之前,不允許用戶執(zhí)行任何命令。支持的值為:
大于等于 0 的 NUMERIC 值。要指定一天的小數(shù)部分,請(qǐng)指定一個(gè)小數(shù)值。例如,使用值 4.5 可指定 4 天 12 小時(shí)。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_GRACE_TIME 的值。
UNLIMITED – 寬限期是無(wú)限的。
PASSWORD_REUSE_TIME 指定用戶在重新使用密碼前必須等待的天數(shù)。
PASSWORD_REUSE_TIME 和 PASSWORD_REUSE_MAX 參數(shù)旨在一起使用。如果為其中一個(gè)參數(shù)指定有限值,而另一個(gè)參數(shù)為 UNLIMITED,則永遠(yuǎn)無(wú)法重新使用舊密碼。如果這兩個(gè)參數(shù)都設(shè)置為 UNLIMITED,則密碼重新使用沒有限制。支持的值為:
大于等于 0 的 NUMERIC 值。要指定一天的小數(shù)部分,請(qǐng)指定一個(gè)小數(shù)值。例如,使用值 4.5 可指定 4 天 12 小時(shí)。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_REUSE_TIME 的值。
UNLIMITED – 可以不受限制地重新使用密碼。
PASSWORD_REUSE_MAX 指定在密碼可重新使用前必須發(fā)生的密碼更改次數(shù)。
PASSWORD_REUSE_TIME 和 PASSWORD_REUSE_MAX 參數(shù)旨在一起使用。如果為其中一個(gè)參數(shù)指定有限值,而另一個(gè)參數(shù)為 UNLIMITED,則永遠(yuǎn)無(wú)法重新使用舊密碼。如果這兩個(gè)參數(shù)都設(shè)置為 UNLIMITED,則密碼重新使用沒有限制。支持的值為:
大于等于 0 的 INTEGER 值。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_REUSE_MAX 的值。
UNLIMITED – 可以不受限制地重新使用密碼。
PASSWORD_VERIFY_FUNCTION 指定密碼復(fù)雜性。支持的值為:
PL/SQL 函數(shù)的名稱。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_VERIFY_FUNCTION 的值。
NULL
PASSWORD_ALLOW_HASHED 指定是否允許使用加密的密碼。如果將值指定為 TRUE,系統(tǒng)將允許用戶通過(guò)在客戶端指定哈希計(jì)算加密密碼來(lái)更改密碼。不過(guò),如果您將值指定為 FALSE,則必須以純文本形式指定密碼,以便有效地進(jìn)行驗(yàn)證,否則,在服務(wù)器收到加密的密碼時(shí)將引發(fā)錯(cuò)誤。支持的值為:
BOOLEAN 值 TRUE/ON/YES/1 或 FALSE/OFF/NO/0。
DEFAULT - DEFAULT 配置文件中指定的 PASSWORD_ALLOW_HASHED 的值。
PASSWORD_ALLOW_HASHED 參數(shù)與 Oracle 不兼容。
注釋
可使用 DROP PROFILE 命令刪除配置文件。
示例
以下命令創(chuàng)建名為 acctg 的配置文件。該配置文件指定,如果用戶在五次嘗試內(nèi)未采用正確的密碼通過(guò)身份驗(yàn)證,則賬戶將鎖定一天:
CREATE PROFILE acctg LIMIT
FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LOCK_TIME 1;
以下命令創(chuàng)建名為 sales 的配置文件。該配置文件指定,用戶必須每隔 90 天更改一次密碼:
CREATE PROFILE sales LIMIT
PASSWORD_LIFE_TIME 90
PASSWORD_GRACE_TIME 3;
如果用戶在配置文件指定的 90 天過(guò)去之前未更改其密碼,則登錄時(shí)會(huì)收到警告。3 天寬限期過(guò)后,將不允許其賬戶調(diào)用任何命令,直到用戶更改其密碼。
以下命令創(chuàng)建名為 accts 的配置文件。該配置文件指定,用戶在上次使用密碼后 180 天內(nèi)不能重新使用密碼,且至少必須更改密碼 5 次,之后才能重新使用密碼:
CREATE PROFILE accts LIMIT
PASSWORD_REUSE_TIME 180
PASSWORD_REUSE_MAX 5;
以下命令創(chuàng)建名為 resources 的配置文件。該配置文件調(diào)用名為 password_rules 的用戶定義函數(shù),以驗(yàn)證所提供的密碼是否滿足其復(fù)雜性標(biāo)準(zhǔn):
CREATE PROFILE resources LIMIT
PASSWORD_VERIFY_FUNCTION password_rules;