使用 Aurora My 的 Kerberos 身分驗證SQL - Amazon Aurora

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

使用 Aurora My 的 Kerberos 身分驗證SQL

您可以使用 Kerberos 身分驗證,在使用者連線到 Aurora MySQL 資料庫叢集時驗證使用者。若要這樣做,請將資料庫叢集設定為 AWS Directory Service for Microsoft Active Directory 用於 Kerberos 身分驗證。 AWS Directory Service for Microsoft Active Directory 也稱為 AWS Managed Microsoft AD。這是 提供的功能 AWS Directory Service。若要進一步了解,請參閱 AWS Directory Service 管理指南中的什麼是 AWS Directory Service?

若要開始,請建立 AWS Managed Microsoft AD 目錄來存放使用者登入資料。然後,將 Active Directory 的網域和其他資訊提供給 Aurora MySQL 資料庫叢集。當使用者使用 Aurora MySQL 資料庫叢集進行身分驗證時,身分驗證請求會轉送至 AWS Managed Microsoft AD 目錄。

將您的所有登入資料保留在相同目錄可以節省您的時間和精力。透過這種方式,這樣您就有一個集中的位置來存放及管理多個資料庫叢集的登入資料。使用目錄也可以改善您的整體安全性描述檔。

除此之外,您也可以從自己的內部部署 Microsoft Active Directory 存取登入資料。若要執行這項操作,請建立信任網域關聯,讓 AWS Managed Microsoft AD 目錄信任您的內部部署 Microsoft Active Directory。如此一來,您的使用者可以使用與存取內部部署網路中的工作負載時相同的 Windows 單一登入 (SSO) 體驗來存取 Aurora MySQL 資料庫叢集。

資料庫可以使用 Kerberos、 AWS Identity and Access Management (IAM) 或 Kerberos 和IAM身分驗證。不過,由於 Kerberos 和IAM身分驗證提供不同的身分驗證方法,特定使用者可以僅使用一種或其他身分驗證方法登入資料庫,但不能同時使用這兩種方法。如需有關 IAM 身分驗證的詳細資訊,請參閱 IAM 資料庫身分驗證

Aurora MySQL 資料庫叢集的 Kerberos 身分驗證概觀

若要設定 Aurora MySQL 資料庫叢集的 Kerberos 身分驗證,請完成下列一般步驟。稍後會提供這些步驟的詳細說明。

  1. 使用 AWS Managed Microsoft AD 建立 AWS Managed Microsoft AD 目錄。您可以使用 AWS Management Console、 AWS CLI或 AWS Directory Service 來建立目錄。如需詳細說明,請參閱 AWS Directory Service 管理指南中的建立 AWS Managed Microsoft AD 目錄

  2. 建立使用 受管IAM政策 的 AWS Identity and Access Management (IAM) 角色AmazonRDSDirectoryServiceAccess。該角色允許 Amazon Aurora 對您的目錄進行呼叫。

    若要讓 角色允許存取,必須在 AWS 區域 AWS 您帳戶的 中啟用 AWS Security Token Service (AWS STS) 端點。端點預設會在所有 中處於作用中狀態 AWS 區域,而且您可以使用這些 AWS STS 端點而無需採取任何進一步動作。如需詳細資訊,請參閱IAM《 使用者指南AWS STS 》中的啟用和停用 AWS 區域

  3. 使用 Microsoft Active Directory 工具在 AWS Managed Microsoft AD 目錄中建立和設定使用者。如需在 Active Directory 中建立使用者的詳細資訊,請參閱 AWS Directory Service 管理指南中的管理 AWS 受管 Microsoft AD 中的使用者和群組

  4. 建立或修改 Aurora MySQL 資料庫叢集。如果您在建立請求RDSAPI中使用 CLI或 ,請使用 Domain 參數指定網域識別符。使用您建立目錄時產生的d-*識別符,以及您IAM建立的角色名稱。

    如果您修改現有的 Aurora MySQL 資料庫叢集以使用 Kerberos 身分驗證,請設定資料庫叢集的網域和IAM角色參數。在與VPC網域目錄相同的 中尋找資料庫叢集。

  5. 使用 Amazon RDS主要使用者登入資料連線至 Aurora MySQL 資料庫叢集。使用 中的指示,在 Aurora MySQL 中建立資料庫使用者步驟 6:建立使用 Kerberos 身分驗證的 Aurora MySQL 使用者

    您以此方式建立的使用者可以使用 Kerberos 身分驗證登入 Aurora MySQL 資料庫叢集。如需詳細資訊,請參閱使用 Kerberos 身分驗證連線至 Aurora MySQL

若要使用內部部署或自行託管的 Microsoft Active Directory 來使用 Kerberos 身分驗證,請建立樹系信任。樹系信任是兩個網域群組之間的信任關係。信任可以是單向或雙向。如需使用 設定樹系信任的詳細資訊 AWS Directory Service,請參閱 AWS Directory Service 管理指南中的何時建立信任關係

Aurora My 的 Kerberos 身分驗證限制SQL

下列限制適用於 Aurora My 的 Kerberos 身分驗證SQL:

  • Aurora MySQL 3.03 版及更新版本支援 Kerberos 身分驗證。

    如需 AWS 區域 支援的相關資訊,請參閱 使用 Aurora MySQL 進行 Kerberos 身分驗證

  • 若要搭配 Aurora My 使用 Kerberos 身分驗證SQL,您的 SQL用戶端或連接器必須在 Unix 平台上使用 8.0.26 或更新版本,在 Windows 上使用 8.0.27 或更新版本。否則,用戶端 authentication_kerberos_client 外掛程式將不可用,您便無法進行身分驗證。

  • 只有 Aurora My AWS Managed Microsoft AD 支援 SQL。不過,您可以將 Aurora MySQL 資料庫叢集加入相同 中不同帳戶所擁有的共用 Managed Microsoft AD 網域 AWS 區域。

    您也可以使用您自己的內部部署 Active Directory。如需詳細資訊,請參閱步驟 2:(選擇性) 為內部部署 Active Directory 建立信任

  • 當使用 Kerberos 從我的SQL用戶端或 Windows 作業系統上的驅動程式驗證連線至 Aurora MySQL 叢集的使用者時,預設情況下,資料庫使用者名稱的字元大小寫必須符合 Active Directory 中的使用者大小寫。例如,若 Active Directory 中的使用者顯示為 Admin,則資料庫使用者名稱必須為 Admin

    不過,您現在可以搭配 authentication_kerberos 外掛程式使用不區分大小寫的使用者名稱比較。如需詳細資訊,請參閱步驟 8:(選用) 設定不區分大小寫的使用者名稱比較

  • 開啟此功能後,您必須重新啟動讀取器資料庫執行個體才能安裝 authentication_kerberos 外掛程式。

  • 不支援 authentication_kerberos 外掛程式的資料庫執行個體複寫可能會導致複寫失敗。

  • 若要讓 Aurora 全域資料庫使用 Kerberos 身分驗證,您必須為全域資料庫中的每個資料庫叢集進行設定。

  • 網域名稱必須少於 62 個字元。

  • 開啟 Kerberos 身分驗證後,請勿修改資料庫叢集連接埠。若您修改連接埠,Kerberos 身分驗證會無法運作。