搭配 Aurora PostgreSQL 使用 Kerberos 身分驗證 - Amazon Aurora

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

搭配 Aurora PostgreSQL 使用 Kerberos 身分驗證

在使用者連線至執行 PostgreSQL 的資料庫叢集時,您可以使用 Kerberos 驗證用戶身分。若要這樣做,請將資料庫叢集設定為 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 網域和其他資訊提供給 PostgreSQL 資料庫叢集。當使用者向 PostgreSQL 資料庫叢集進行驗證時,身分驗證請求會轉送到 AWS Managed Microsoft AD 目錄。

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

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

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

區域和版本可用性

功能可用性和支援會因每個資料庫引擎的特定版本以及 AWS 區域而有所不同。如需可與 Kerberos 身分驗證搭配使用之 Aurora PostgreSQL 版本和區域的詳細資訊,請參閱 使用 Aurora PostgreSQL 進行 Kerberos 身分驗證

對 PostgreSQL 資料庫叢集進行 Kerberos 身分驗證的概觀

若要為 PostgreSQL 資料庫叢集設定 Kerberos 身分驗證,請遵循下列步驟,稍後會提供更詳細的說明:

  1. 使用 AWS Managed Microsoft AD 建立 AWS Managed Microsoft AD 目錄。您可以使用 AWS Management Console、 AWS CLI或 AWS Directory Service API 來建立目錄。請務必開啟目錄安全性群組上的相關輸出連接埠,以便目錄可以與 叢集 通訊。

  2. 建立提供 Amazon Aurora 存取權的角色,以呼叫您的 AWS Managed Microsoft AD 目錄。若要這樣做,請建立使用 受管 IAM 政策 的 AWS Identity and Access Management (IAM) 角色AmazonRDSDirectoryServiceAccess

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

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

  4. 如果您打算在不同 AWS 帳戶或 Virtual Private Cloud (VPC) 中尋找目錄和資料庫執行個體,請設定 VPC 互連。如需詳細資訊,請參閱《Amazon VPC Peering Guide》中的什麼是 VPC 互連?

  5. 使用下列其中一種方法,從主控台、CLI 或 RDS API 建立或修改 PostgreSQL 資料庫叢集

    您可以在與目錄相同的 Amazon Virtual Private Cloud (VPC) 或不同的 AWS 帳戶或 VPC 中找到叢集。當您建立或修改 PostgreSQL 資料庫叢集時,請執行下列動作:

    • 請提供您建立目錄時產生的網域識別符 (d-* 識別符)。

    • 請提供所建立的 IAM 角色名稱。

    • 確保資料庫執行個體安全群組可以從目錄的安全群組接收傳入流量。

  6. 使用 RDS 主要使用者登入資料來連接至 PostgreSQL 資料庫叢集。然後,在 PostgreSQL 中建立要在外部識別的使用者。外部識別的使用者可以使用 Kerberos 身分驗證來登入 PostgreSQL 資料庫叢集