Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
如何在 EC2 Windows 執行個體上設定 AD FS,以與 Cognito 使用者集區聯合搭配使用?
我想要為 Amazon Cognito 使用者集區使用 Active Directory Federation Services (AD FS) 作為安全性聲明標記語言 2.0 (SAML 2.0) 身分提供者 (IdP)。我想在 Amazon Elastic Compute Cloud (Amazon EC2) Windows 執行個體上設定 AD FS。
解決方法
使用 Server Manager 在 EC2 Windows 執行個體上設定 AD FS 伺服器和網域控制站。若要完成設定,您必須擁有一個包含應用程式用戶端的 Cognito 使用者集區,以及一個您擁有的網域名稱。如果您沒有網域,則可以使用 Amazon Route 53 或其他 DNS 服務註冊新網域。
如需詳細資訊,請參閱如何使用 Amazon Cognito 使用者集區,將 AD FS 設定為 SAML 身分提供者?
設定並啟動 Windows 執行個體
請完成下列步驟:
- 開啟 EC2 console (EC2 主控台)。
- 選擇 Launch Instance (啟動執行個體)。
- 在 Choose an Amazon Machine Image (AMI) (選擇 Amazon Machine Image (AMI)) 頁面上,選擇適用於 Windows Server 的 AMI,例如 Microsoft Windows Server 2025 Base AMI。
- 選取您的執行個體類型。
- 在 Keypairs (金鑰對),從下拉式清單中選取一個現有金鑰對,或建立新的金鑰對。
**重要:**儲存金鑰對的私有金鑰 .pem 檔案,以連線到您的 Windows 執行個體。 - 在導覽窗格中,選擇 Create security group (建立安全群組),然後選取 Allow RDP traffic (允許 RDP 流量)。
**注意:**若要將遠端桌面通訊協定 (RDP) 對您執行個體的存取權限制為僅允許特定 IP 位址,請將來源 IP 位址從 Anywhere (任意位置) 變更為 My IP (我的 IP) 或 Custom (自訂)。 - 選擇 Launch (啟動)。
將彈性 IP 位址與您的 Windows 執行個體建立關聯
為您的 AWS 帳戶分配一個彈性 IP 位址。然後,將您的彈性 IP 位址與 Windows 執行個體建立關聯。
使用您的彈性 IP 位址為網域建立記錄
您的 Active Directory Domain Services (AD DS) 網域必須具有以彈性 IP 位址作為值的 A IPv4 位址記錄。若要建立記錄,請使用與您 Windows 執行個體關聯的彈性 IP 位址。
在您的 Windows 執行個體上安裝 AD DS、IIS 和 AD FS
在 Windows 中開啟 Server Manager,然後使用「新增角色」和「功能精靈」安裝下列角色:
- Active Directory Domain Services
- Active Directory Federation Services
- Internet Information Services (IIS)
如需詳細資訊,請參閱 Microsoft 網站上的安裝或卸載角色、角色服務或功能。
在 Windows 執行個體上設定 AD DS
若要設定 AD DS,請使用 Server Manager 中的 Active Directory Domain Services 組態精靈。在 Deployment Configuration (部署組態) 頁面上,輸入您的網域,例如 example.com。組態安裝完成後,Windows 會通知您即將登出。當伺服器重新啟動時,使用您的 RDP 用戶端連線到您的 Windows 執行個體。
如需詳細資訊,請參閱 Microsoft 網站上的安裝 Active Directory Domain Services。
在 IIS 中設定 HTTP 網站繫結
在 Server Manager 中,使用 IIS 編輯您網站的 HTTP 網站繫結。如需詳細資訊,請參閱 Microsoft 網站上的如何向網站新增繫結資訊。
重要:在 IIS 中編輯 HTTP 繫結時,請在主機名稱輸入您的網域名稱,例如 example.com。請勿變更 IP 位址 (全部未指派) 或連接埠 (80)。
設定您的 Windows 執行個體以允許檔案下載
請參閱如何設定 EC2 Windows 執行個體,以允許透過 Internet Explorer 下載檔案?
為您的網域申請數位憑證
HTTPS 繫結需要 SSL/TLS 伺服器憑證。若要為您的網域申請第三方憑證,請使用受信任的第三方憑證建立工具。
如需詳細資訊,請參閱 Microsoft 網站上的選擇憑證。
(選用) 在 IIS 中設定 HTTPS 網站繫結
如果您使用的憑證建立工具不會在 IIS 中自動新增 HTTPs 網站繫結,請手動新增網站繫結。
如需詳細資訊,請參閱 Microsoft 網站上的建立 SSL 繫結。
在 Windows 執行個體上設定 AD FS
若要將 Windows 執行個體設定為聯合伺服器,請使用 Server Manager 中的 AD FS 聯合伺服器組態精靈。
如需詳細資訊,請參閱 Microsoft 網站上的準備和部署 Active Directory Federation Services - 內部部署憑證信任。
在 Specify Service Account (指定服務帳戶) 頁面的 Select User or Service Account (選取使用者或服務帳戶) 中,選擇名為 Administrator (管理員) 的使用者。然後,輸入您用來透過 RDP 連線到 Windows 執行個體的密碼。
在 Active Directory 中建立使用者
若要在 Active Directory 中建立新使用者,請使用「Active Directory 使用者和電腦」工具。將新使用者新增至「管理員」群組。
如需詳細資訊,請參閱 Microsoft 網站上的建立使用者並新增至群組。
為您的 Active Directory 使用者新增電子郵件地址
請完成下列步驟:
- 在「Active Directory 使用者和電腦」工具中,開啟 (按兩下) Users (使用者) 以查看使用者清單。
- 在使用者清單中,找到您建立的使用者。開啟 (按一下滑鼠右鍵) 使用者以查看內容功能表,然後選擇 Properties (屬性)。
- 在 Properties (屬性) 視窗的 user name (使用者名稱) 中,輸入使用者的有效電子郵件地址。電子郵件地址包含在 SAML 判斷提示中。
如需詳細資訊,請參閱 Microsoft 網站上的一般屬性頁面。
在 AD FS 中加入具聲明感知的信賴方信任
在 Server Manager 中,導覽至工具 AD FS 管理。若要新增具聲明感知的信賴方信任,請使用「新增信賴方信任精靈」。
在精靈的 Configure URL page (設定網址頁面) 上,選取 Enable support for the SAML 2.0 WebSSO protocol (啟用對 SAML 2.0 WebSSO 協定的支援)。在 Relying party SAML 2.0 SSO service URL (信賴方 SAML 2.0 SSO 服務網址) 中,輸入判斷提示用戶端點網址,例如 https://yourDomainPrefix.auth.region.amazoncognito.com/saml2/idpresponse。將 yourDomainPrefix 替換為您 Cognito 使用者集區的網域首碼。將 Region 替換為使用者集區的 AWS 區域。
在精靈的 Configure Identifiers (設定識別碼) 頁面上,於 Relying party trust identifier (信賴方信任識別碼),輸入 URN urn:amazon:cognito:sp:yourUserPoolID。將 yourUserPoolID 替換為您 Cognito 使用者集區的 ID。
如需詳細資訊,請參閱 Microsoft 網站上的將 SAML 身分提供者與使用者集區結合使用和手動建立具聲明感知的信賴方信任。
在 AD FS 中編輯應用程式的聲明發行政策
使用「新增信賴方信任精靈」將規則新增至信任,以將 LDAP 屬性作為聲明傳送。
在 Configure Rule (設定規則) 頁面上,完成以下步驟:
- 在 Claim rule name (聲明規則名稱),輸入電子郵件。
- 在 Attribute store (屬性儲存),選擇 Active Directory。
- 在 LDAP Attribute (LDAP 屬性),選擇 E-Mail-Addresses (電子郵件地址)。
- 在 Outgoing Claim Type (傳出聲明類型),選擇 E-Mail Address (電子郵件地址)。
如需詳細資訊,請參閱 Microsoft 網站上的建立規則,以將 LDAP 屬性作為 Windows Server 2016 中的信賴方信任聲明傳送。
**注意:**將 Active Directory 中的傳入電子郵件地址對應到傳出名稱 ID 聲明。然後,電子郵件 ID 和名稱 ID 聲明將作為使用者的電子郵件地址,出現在 SAML 回應的 SAML 判斷提示中。然後,建立一個規則,將 LDAP 屬性作為聲明傳送。
如需詳細資訊,請參閱 Microsoft 網站上的建立規則,以將 LDAP 屬性作為 Windows Server 2012 R2 的聲明傳送。
測試伺服器的 SAML IdP 中繼資料 URL
在您的網頁瀏覽器中,使用您的網域輸入中繼資料文件端點網址 https://example.com/federationmetadata/2007-06/federationmetadata.xml。
如果提示您下載 federationmetadata.xml 檔案,則表示您已正確設定所有內容。記下您使用的網址,或下載 .xml 檔案。您必須使用網址或檔案,在 Cognito 主控台中設定 SAML。
如需詳細資訊,請參閱設定第三方 SAML 身分提供者。
在 Cognito 中將 AD FS 設定為 SAML IdP
有關如何在 Cognito 中將 AD FS 設定為 SAML IdP 的說明,請參閱步驟 4: 完成 Amazon Cognito 組態,該步驟位於簡化 Web 應用程式驗證: AD FS 與 Amazon Cognito 使用者集區聯合指南中。
相關資訊
Amazon EC2 金鑰對和 Amazon EC2 執行個體
- 語言
- 中文 (繁體)

相關內容
- 已提問 2 年前
- 已提問 2 年前