使用專用 Exadata 基礎架構上的 Autonomous Database 管理使用者設定檔

您可以在 Autonomous Database 中建立及更改使用者設定檔。建立或更改設定檔之後,您可以使用 CREATE USERALTER USER 指定設定檔子句。您也可以使用「Oracle Data Pump 匯入」,從另一個環境匯入現有的使用者設定檔。

附註:

Autonomous Database 對設定檔子句具有限制。請參閱使用 SQL 命令的限制,瞭解 CREATE PROFILEALTER PROFILE 限制的相關資訊。

若要新增、修改或移除設定檔中的密碼參數 (包括 DEFAULT 設定檔),您必須具有 ALTER PROFILE 系統權限。

  1. ADMIN 使用者執行 CREATE PROFILEALTER PROFILE 時,若要新增或更改設定檔。例如:
    CREATE PROFILE new_profile
      LIMIT PASSWORD_REUSE_MAX 10
      PASSWORD_LOCK_TIME 5;

    如果您不是 ADMIN 使用者,則必須具備 CREATE PROFILE 權限才能執行 CREATE PROFILE。如果您執行 ALTER PROFILE,則必須要有 ALTER PROFILE 權限。

  2. 使用新的或更改的設定檔搭配 CREATE USERALTER USER 命令。例如:
    CREATE USER new_user IDENTIFIED BY password PROFILE new_profile;
    GRANT CREATE SESSION TO new_user;

這會使用設定檔 new_profile 和連線權限建立 new_usernew_user 現在可以連線至資料庫並執行查詢。若要將其他權限授予使用者,請參閱 Manage Database User Privileges

如需有關使用 CREATE PROFILE 的資訊,請參閱 Oracle Database 19c SQL Language Reference 中的 CREATE PROFILEOracle Database 23ai SQL Language Reference

您可以使用 Oracle Data Pump 匯入 (impdp) 匯入在其他環境中建立的現有設定檔。匯入至 Autonomous Database 後,會保留與資料庫使用者關聯的所有現有設定檔。從 Oracle Data Pump 匯入建立的新使用者,第一次登入時,登入的處理方式如下:

  • 密碼複雜性限制與 Autonomous Database 上任何使用者的限制相同。
  • 如果使用者的密碼違反密碼複雜性要求,帳戶就會過期 30 天寬限期。在此情況下,使用者必須在寬限期結束之前變更其密碼。

附註:

無法修改設定檔為 ORA_PROTECTED_PROFILE 之使用者的設定檔指派。

建立或更改設定檔時,您可以指定「密碼驗證函數 (PVF)」來管理密碼複雜性。如需詳細資訊,請參閱 Manage Password Complexity on Autonomous Database

管理 Autonomous Database 上的密碼複雜性

您可以建立密碼驗證函數 (PVF) 並將 PVF 與設定檔建立關聯,以管理使用者密碼的複雜性。

附註:

使用者指定 PVF 的密碼長度下限為 8 個字元,而且必須包含至少 1 個大寫字母、1 個小寫字母以及 1 個數字字元。DEFAULT 設定檔的密碼長度下限為 12 個字元 (DEFAULT 設定檔使用 CLOUD_VERIFY_FUNCTION PVF)。密碼不能包含使用者名稱。

Oracle 建議使用 12 個字元的密碼長度下限。如果您定義設定檔的 PVF,並將密碼長度下限設為少於 12 個字元,則 Oracle Database Security Assessment Tool (DBSAT) 和 Qualys 等工具會將此報告為資料庫安全風險。

例如,若要為設定檔指定 PVF,請使用下列指令:

CREATE PROFILE example_profile LIMIT PASSWORD_VERIFY_FUNCTION ADMIN.EXAMPLE_PVF

如果設定檔是由 ADMIN 使用者以外的任何使用者建立或更改,則您必須授與 PVF 的 EXECUTE 權限。如果您建立 PVF 且密碼檢查失敗,則資料庫會報告 ORA-28219 錯誤。

您可以從下列其中一項指定 Oracle 提供的 PVF:

  • CLOUD_VERIFY_FUNCTION (這是 Autonomous Database 的預設密碼驗證功能):

    此功能會在使用者建立或修改密碼時檢查下列需求:

    • 密碼的長度必須介於 12 到 30 個字元之間,且至少必須包含一個大寫字母、一個小寫字母及一個數字字元。

    • 密碼不能包含使用者名稱。

    • 相同使用者名稱的密碼不能是最後 4 次使用過的密碼之一。

    • 密碼不可包含雙引號 (") 字元.

    • 密碼不得與 24 小時前設定的密碼相同。

  • ORA12C_STIG_VERIFY_FUNCTION

    此功能會在使用者建立或修改密碼時檢查下列需求:

    • 密碼至少要有 15 個字元。

    • 密碼至少要有 1 個小寫字元和 1 個大寫字元。

    • 密碼至少要有 1 位數。

    • 密碼至少包含 1 個特殊字元。

    • 密碼與前一個密碼至少要有 8 個字元不同。

    如需詳細資訊,請參閱 Oracle Database 19c Security Guide 中的 ora12c_stig_verify_function Password RequirementsOracle Database 23ai Security Guide

請注意下列您建立並指派給設定檔之「密碼驗證函數 (PVF)」的限制:

  • 如果您指定使用者設定檔,密碼長度下限取決於您定義關聯 PVF 的方式,如下所示:

    • 如果已定義 PVF,則所強制的密碼長度下限為 8 個字元,其中至少包含一個大寫字母、一個小寫字母以及一個數字字元。密碼不能包含使用者名稱。

    • 如果 PVF 定義為 NULL,則強制的密碼長度下限為 8 個字元,且至少包含一個大寫字母、一個小寫字母及一個數字字元。密碼不能包含使用者名稱。

    • 如果設定檔未定義 PVF,則會指派 DEFAULT 設定檔的 PVF (CLOUD_VERIFY_FUNCTION),且強制的密碼長度下限為 12 個字元。

  • 如果您指定的「密碼驗證函數 (PVF)」比預設 CLOUD_VERIFY_FUNCTION 更為嚴格,則會使用新的驗證函數。
  • 您建立的 PVF 必須建立為 DEFINER RIGHTS PL/SQL 函數。如果提供 INVOKER 權限 PVF 作為 CREATEALTER PROFILE 的輸入,則會發生 ORA-28220 錯誤。

  • 您建立的任何 PVF 都必須建立在 ADMIN 使用者架構中。如果提供非 ADMIN 使用者擁有的 PVF 作為 CREATEALTER PROFILE 的輸入,則會發生 ORA-28220 錯誤。

  • ADMIN 使用者無法更改或刪除 PVF。也就是說,任何具有 CREATEDROP ANY PROCEDURE 權限的使用者都不能更改或刪除 PVF。

  • 如果刪除與設定檔相關聯的 PVF,則在其設定檔中使用 PVF 之使用者的任何嘗試變更密碼都會發出錯誤 ORA-7443。使用者仍然可以在刪除與其設定檔相關聯的 PVF 時登入。但是,如果使用者的密碼已過期,且 PVF 已被刪除,則使用者無法登入。

    若要從 ORA-7443 錯誤復原, ADMIN 使用者必須重新建立刪除的 PVF 並將其指派給設定檔,或將現有的 PVF 指派給設定檔。這可讓使用者變更其密碼與登入。

  • CREATE ANY PROCEDURE 系統權限和 DROP ANY PROCEDURE 系統權限會受到 PVF 安全性的稽核。如需詳細資訊,請參閱 Oracle Database 19c SQL Language ReferenceOracle Database 23ai SQL Language ReferenceListings of System and Object PrivilegesPROCEDURES 清單。

如需詳細資訊,請參閱 Oracle Database 19c Security Guide 中的 Managing the Complexity of PasswordsOracle Database 23ai Security Guide

應用程式的漸層資料庫密碼變換

應用程式不需要管理員排定停止工作時間,即可變更其資料庫密碼。

若要達成此目的,您可以將 PASSWORD_ROLLOVER_TIME 密碼設定檔參數的設定檔與應用程式綱要建立非零限制。這樣可以更改應用程式使用者的資料庫密碼,同時允許較舊的密碼在 PASSWORD_ROLLOVER_TIME 限制指定的時間內保持有效。在變換期間,應用程式執行處理可以使用舊密碼或新密碼來連線至資料庫伺服器。輪換時間到期時,只允許新的密碼。

請參閱管理應用程式的漸層資料庫密碼變換以瞭解詳細資訊。