如何將 IAM Identity Center 設定為 QuickSight 的身分提供者?
上次更新日期:2022 年 12 月 19 日
我想要將 AWS IAM Identity Center (AWS Single Sign-On 的後繼者) 用於 IAM Identity Center 和 Amazon QuickSight。如何將 IAM Identity Center 新增為身分提供者?
簡短說明
若要使用 IAM Identity Center 做為您的身分提供者,請依照下列步驟執行:
- 將 QuickSight 新增為 IAM Identity Center 中的應用程式。
- 建立 SAML 身分提供者。
- 建立 SAML 2.0 聯合的 AWS Identity and Access Management (IAM) 角色。
- 在 IAM Identity Center 設定屬性。
- 將使用者指派至 IAM Identity Center。
- 設定您的 QuickSight 帳戶。
解決方案
將 QuickSight 新增為 IAM Identity Center 中的應用程式
- 開啟 IAM Identity Center 主控台。
- 在左側導覽窗格中,選擇應用程式,然後選擇新增應用程式。
- 在預先整合的應用程式區段中,選擇 Amazon QuickSight。然後,選擇下一步。
- 在設定應用程式頁面上,輸入應用程式的顯示名稱。例如 Amazon QuickSight Authors。
- 在 IAM Identity Center 中繼資料區段,IAM Identity Center SAML 中繼資料檔案下,選擇下載圖示。
- 在應用程式屬性中,將轉送狀態的值設定為 https://quicksight.aws.amazon.com。
注意: 請確保應用程式啟動 URL為空白。 - 選擇提交。
注意:您也可以使用其他身分提供者,如 Okta、Azure Active Directory (Azure AD)、Google Workspace、PingFederate 或 PingOne。
建立 SAML 身份提供者
- 開啟 IAM 主控台。
- 在左側導覽窗格中,選擇 Identity providers (身份提供者),然後選擇 Add provider (新增提供者)。
- 在 Provider type (提供者類型) 中,選擇 SAML。
- 在 Provider name(提供者名稱) 中,輸入身份提供者的名稱。
- 在 Metadata document (中繼資料文件) 中,選取 Choose file (選擇檔案),然後選擇您下載的 SAML 中繼資料文件。
- 選項: 在 Add tags (新增標籤) 中新增鍵值對,可以協助您識別和組織身份提供者。
- 請記下身分提供者的 ARN。您必須使用它來設定 IAM Identity Center 應用程式中的屬性。
- 選擇新增提供者。
建立 SAML 2.0 聯合的 IAM 角色
- 開啟 IAM 主控台。
- 在左側導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)。
- 在信任的實體類型中,選取 SAML 2.0 聯合。
- 在以 SAML 2.0 為基礎的提供者中,請選取您建立的 SAML 提供者。然後,選擇允許程式設計和 AWS 管理主控台存取選項。
- 選擇下一步。
- 在 Name, review, and create (名稱、檢閱和建立) 頁面的 Role details (角色詳情) 中,輸入角色的名稱。
- 選項: 在 Add tags (新增標籤) 中新增鍵值對,可以協助您識別和組織角色。
- 請記下角色的 ARN。您必須使用它來設定您的 IAM Identity Center 應用程式中的屬性。
- 選擇建立角色。
- 建立角色後,存取新增許可頁面。將內嵌政策附加到角色,以限制 IAM Identity Center 使用者可以在 QuickSight 中執行的動作。
注意:QuickSight 支援 Just In Time (JIT) 使用者佈建。當使用者第一次聯合到 QuickSight 時,QuickSight 會自動建立新使用者。使用者角色取決於附加至 SAML 2.0 聯合 IAM 角色的許可。如需詳細資訊,請參閱「在 AWS 中為聯合身分使用者設定許可」。
注意: 每個 QuickSight 帳戶只能對映一個 IAM 角色,而每個 IAM Identity Center 執行個體只能對應一個 IAM 角色屬性。因此,您必須為每個角色建立 IAM Identity Center 應用程式。
在 IAM Identity Center 設定屬性
- 開啟 IAM Identity Center 主控台。
- 在左側導覽窗格中,選擇應用程式。然後,選取您在本文章中的將 QuickSight 新增為 IAM Identity Center 中的應用程式區段中建立的應用程式。
- 選擇動作,然後從下拉式清單中選擇編輯屬性對映。
- 在應用程式的使用者屬性中,輸入 https://aws.amazon.com/SAML/Attributes/Role。
- 於在 IAM Identity Center 中對映此字串值或使用者屬性中,按照下列格式輸入身分提供者和角色的 ARN:
arn:aws:iam::ACCOUNTID:role/ROLENAME,arn:aws:iam::ACCOUNTID:saml-provider/SAMLPROVIDERNAME - 選擇儲存變更。
將使用者指派至 IAM Identity Center
- 在 IAM Identity Center 主控台中,選擇已指派使用者標籤,然後選擇指派使用者。
- 選擇使用者標籤,然後新增所需的使用者。
- 選擇 Assign users (指派使用者)。
- 選擇 Groups (群組) 標籤,然後新增所需的群組。
- 選擇 Assign users (指派使用者)。
設定您的 QuickSight 帳戶
設定 QuickSight 以將身分驗證請求傳送到 IAM Identity Center
- 在 IAM Identity Center 主控台的左側導覽窗格中,選擇儀表板。
- 在 AWS 存取入口網站中,使用 IAM Identity Center 使用者名稱和密碼登入。
- 選擇 Amazon QuickSight 圖示,再於新的瀏覽器標籤中將其開啟。然後複製 URL。
- 在另一個瀏覽器標籤中,以管理員身分 登入 QuickSight。
- 選擇 Manage QuickSight (管理 QuickSight)。
- 在左側導覽窗格中,選擇 Single sign-on (SSO) (單一登入)。
- 在 IdP URL configuration (IdP URL 設定) 中,新增步驟 3 中的 URL。
- 在 IdP redirect URL parameter (IdP 重新導向 URL 參數) 中,輸入 RelayState。
- 選擇儲存。
- 關閉 Service Provider Initiated SSO。確保選項維持關閉狀態。
設定電子郵件屬性,以便聯合身分使用者同步處理電子郵件
1. 在 IAM 主控台中,透過 AssumeRoleWithSAML 或 AssumeRoleWithWebIdentity 更新 IAM 角色的信任關係:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::account-id:saml-provider/SAMLPROVIDERNAME"
},
"Action": "sts:AssumeRoleWithSAML",
"Condition": {
"StringEquals": {
"SAML:aud": "https://signin.aws.amazon.com/saml"
}
}
},
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::account-id:saml-provider/SAMLPROVIDERNAME"
},
"Action": "sts:TagSession",
"Condition": {
"StringLike": {
"aws:RequestTag/Email": "*"
}
}
}
]
}
2. 若要設定電子郵件屬性,請按照上述在 IAM Identity Center 中設定屬性區段的步驟操作。
在應用程式的使用者屬性中,輸入 https://aws.amazon.com/SAML/Attributes/PrincipalTag:Email。
於在 IAM Identity Center 中對映此字串值或使用者屬性中,輸入 ${user:email}。
3. 在 QuickSight 中為聯合身分使用者開啟電子郵件同步功能:
以系統管理員身分 登入 QuickSight。
選擇 Manage QuickSight (管理 QuickSight),然後選擇 Single sign-on (SSO) (單一登入)。
於服務提供者啟動的 SSO 頁面中,對聯合身分使用者的電子郵件同步選擇開啟。
設定完成後,您將可以從 IAM Identity Center 入口網站登入您的 QuickSight 帳戶。