管理網域中的資料庫執行個體 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

管理網域中的資料庫執行個體

您可以使用主控台、CLI 或 RDS API,來管理資料庫執行個體,以及其與 Microsoft Active Directory 的關係。例如,您可以使 Microsoft Active Directory 產生關聯,以啟用 Kerberos 身份驗證。您也可以將 Microsoft Active Directory 解除關聯,以停用 Kerberos 身份驗證。您可以將要由某個 Microsoft Active Directory 外部識別的資料庫執行個體移至另一個 Microsoft Active Directory。

例如,使用 CLI,您可以執行下列動作:

  • 若要對失敗的成員資格重新嘗試啟用 Kerberos 身份驗證,請使用 modify-db-instance CLI 命令,並為 --domain 選項指定目前成員資格的目錄 ID。

  • 若要在資料庫執行個體上停用 Kerberos 身份驗證,請使用 modify-db-instance CLI 命令,並為 none 選項指定 --domain

  • 若要將資料庫執行個體從某個網域移至另一個網域,請使用 modify-db-instance CLI 命令,並為 --domain 選項指定新網域的網域識別符。

檢視網域成員資格的狀態

在您建立或修改資料庫執行個體之後,此資料庫執行個體會成為網域的成員。您可以在主控台中或執行 describe-db-instances CLI 命令,來檢視資料庫執行個體的網域成員資格狀態。資料庫執行個體的狀態可以是下列其中一個:

  • kerberos-enabled – 資料庫執行個體已啟用 Kerberos 身分驗證。

  • enabling-kerberos – AWS 正在此資料庫執行個體上啟用 Kerberos 身分驗證。

  • pending-enable-kerberos – 在此資料庫執行個體上擱置 Kerberos 身分驗證的啟用。

  • pending-maintenance-enable-kerberos – AWS 將在下次排定的維護時段嘗試在資料庫執行個體上啟用 Kerberos 身分驗證。

  • pending-disable-kerberos – 在此資料庫執行個體上擱置 Kerberos 身分驗證的停用。

  • pending-maintenance-disable-kerberos – AWS 將在下次排定的維護時段嘗試在資料庫執行個體上停用 Kerberos 身份驗證。

  • enable-kerberos-failed – 有一個組態問題已禁止 AWS 在資料庫執行個體上啟用 Kerberos 身份驗證。請更正問題,然後重新發出命令來修改資料庫執行個體。

  • disabling-kerberos – AWS 正在此資料庫執行個體上停用 Kerberos 身分驗證。

由於網路連線問題或 IAM 角色不正確,請求啟用 Kerberos 身份驗證可能失敗。當您建立或修改資料庫執行個體時,如果嘗試啟用 Kerberos 身分驗證失敗,請確定您使用的是正確的 IAM 角色。然後,修改資料庫執行個體來加入網域。

注意

僅在 Kerberos 身份驗證搭配 Amazon RDS for Oracle 時,才會將流量傳送至網域的 DNS 伺服器。所有其他 DNS 都被視為執行 Oracle 之資料庫執行個體上的傳出網路存取。如需傳出網路存取搭配 Amazon RDS for Oracle 的詳細資訊,請參閱設定自訂 DNS 伺服器

強制輪換 Kerberos 金鑰

私密金鑰在 AWS Managed Microsoft AD 和 Amazon RDS for Oracle 資料庫執行個體之間共享。此金鑰每 45 天自動輪換。您可以使用以下 Amazon RDS 程序以強制輪換此金鑰:

SELECT rdsadmin.rdsadmin_kerberos_auth_tasks.rotate_kerberos_keytab AS TASK_ID FROM DUAL;
注意

在僅供讀取複本組態中,此程序只能在來源資料庫執行個體上使用,無法在僅供讀取複本上使用。

SELECT 陳述式以 VARCHAR2 資料類型傳回任務 ID。您可在 bdump 檔案之中,檢視進行中作業的狀態。bdump 檔案位在 /rdsdbdata/log/trace 目錄:每個 bdump 檔案的名稱格式如下。

dbtask-task-id.log

您可以透過顯示任務的輸出檔案來檢視結果。

SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','dbtask-task-id.log'));

以程序傳回的任務 ID 取代 task-id

注意

任務是以非同步方式執行。