將進階安全性新增到使用者集區 - Amazon Cognito

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

將進階安全性新增到使用者集區

在您建立您的使用者集區之後,您可以在 Amazon Cognito 主控台導覽列上,存取 Advanced security (進階安全性)。您可以啟用這些使用者集區進階安全性功能,並自訂因應不同風險而執行的動作。或者,您可以使用稽核模式來收集偵測到風險的指標,而不需要使用任何安全性緩解措施。在稽核模式中,進階安全功能會將指標發佈到 Amazon CloudWatch。Amazon Cognito 產生第一個進階安全性事件後,您可以看到進階安全性指標。請參閱檢視進階安全指標

進階安全性功能包括憑證洩漏偵測和自適應身分驗證。

憑證洩漏

使用者重複使用多個使用者帳戶的密碼。Amazon Cognito 的憑證洩漏功能,會編譯公開洩漏的使用者名稱和密碼,然後將您的使用者憑證與洩漏憑證清單進行比較。憑證洩漏偵測也會檢查容易猜測的密碼。

您可以選擇提示檢查洩漏憑證的使用者動作,以及您希望 Amazon Cognito 採取的動作。對於登入、註冊和密碼變更事件,Amazon Cognito 可以 封鎖登入允許登入。這兩種情況下,Amazon Cognito 都會產生使用者活動日誌,您可以在其中找到有關事件的詳細資訊。

自適應身分驗證

Amazon Cognito 可以檢閱使用者登入請求中的位置和裝置資訊,並套用自動回應來保護使用者集區中的使用者帳戶不受可疑活動影響。

當您啟用進階安全性時,Amazon Cognito 會為使用者活動指派風險評分。您可以為可疑活動指派自動回應:需要 MFA封鎖登入,或僅記錄活動詳細資料和風險評分。您也可以自動傳送電子郵件訊息,通知您的使用者發現可疑活動,讓他們可以重設密碼或採取其他自助式動作。

存取權杖自訂

啟用進階安全功能時,您可以將使用者集區設定為接受第 2 版 Lambda 觸發程序事件的回應。使用第 2 版,您可以在存取權杖中自訂範圍和其他宣告。這可提高您在使用者驗證時建立彈性授權結果的能力。如需詳細資訊,請參閱 自訂存取權杖

考量與限制

  • Amazon Cognito 進階安全性功能有另外的定價。請參閱 Amazon Cognito 定價頁面

  • Amazon Cognito 透過下列標準身份驗證流程支援調適性身份驗證和惡意登入資料偵測:、和。USER_PASSWORD_AUTH ADMIN_USER_PASSWORD_AUTH USER_SRP_AUTH您不能將進階安全性與 CUSTOM_AUTH 流程和 自訂身分驗證挑戰 Lambda 觸發程序 搭配使用,或與聯合身分登入搭配使用。

  • 藉由 完整功能 模式中的 Amazon Cognito 進階安全性功能,您可以建立 IP 地址 一律封鎖一律允許 例外狀況。來自 Always block (一律封鎖) 例外狀況列表上的 IP 地址的工作階段,未透過自適應身分驗證指派風險層級,而且無法登入到您的使用者集區。

  • 阻擋來自您使用者集區中的 Always block (一律封鎖) 例外狀況列表上的 IP 地址的請求,有助於您使用者集區的請求速率配額。Amazon Cognito 進階安全功能無法防止分散式阻斷服務 (DDoS) 攻擊。若要在使用者集區中實作容量攻擊防禦,請新增 AWS WAF Web ACL。如需詳細資訊,請參閱 建立 AWS WAF Web ACL 與使用者集區的關聯

  • 用戶端認證授權的目的是用於 machine-to-machine (M2M) 授權,而不會與使用者帳戶連線。進階安全性功能只會監控使用者集區中的帳戶和密碼。若要在 M2M 活動中實作安全性功能,請考慮監控要求率和內容的 AWS WAF 功能。如需詳細資訊,請參閱 建立 AWS WAF Web ACL 與使用者集區的關聯

必要條件

開始之前,您必須準備好以下事項:

  • 搭配應用程式用戶端的使用者集區。如需詳細資訊,請參閱 使用者集區入門

  • 在 Amazon Cognito 主控台中,將多重要素驗證 (MFA) 設定為 Optional (選用),以使用風險型的適應性身分驗證功能。如需詳細資訊,請參閱 將 MFA 新增到使用者集區

  • 如果是使用電子郵件通知,請移至 Amazon SES 主控台,設定和驗證可搭配電子郵件通知使用的電子郵件地址或網域。如需 Amazon SES 的詳細資訊,請參閱在 Amazon SES 中驗證身分

設定進階安全性功能

您可以在 AWS Management Console中設定 Amazon Cognito 進階安全性功能。

設定使用者集區的進階安全性
  1. 前往 Amazon Cognito 主控台。如果出現提示,請輸入您的 AWS 認證。

  2. 選擇 User Pools (使用者集區)。

  3. 從清單中選擇現有的使用者集區,或建立使用者集區

  4. 選擇進階安全性索引標籤,然後選取啟用。如果您先前啟用了進階安全性,則請選擇 Edit (編輯)。

  5. 選取 Full function (完整功能),以設定對憑證洩漏和適應性身分驗證的進階安全性回應。選取「僅稽核」以收集資訊並將使用者集區資料傳送至 CloudWatch。進階安全性定價適用於 Audit only (僅稽核) 和 Full function (完整功能) 模式。如需詳細資訊,請參閱 Amazon Cognito 定價

    建議您在啟用動作之前,讓進階安全性功能保持處於稽核模式兩週。在此期間,Amazon Cognito 可學習您應用程式使用者的使用模式。

  6. 如果您已選取 Audit only (僅稽核),則請選擇 Save changes (儲存變更)。如果您已選取 Full function (完整功能):

    1. 選取您是否要採取 Custom (自訂) 動作或使用 Cognito defaults (Cognito 預設值) 回應疑似 Compromised credentials (憑證洩漏)。Cognito defaults (Cognito 預設值) 是:

      1. Sign-in (登入)、Sign-up (註冊) 和 Password change (密碼變更) 偵測憑證洩漏。

      2. 使用動作 Block sign-in (封鎖登入) 回應憑證洩漏。

    2. 如果您已為 Compromised credentials (憑證洩漏) 選取 Custom (自訂) 動作,請選擇 Amazon Cognito 會用於 Event detection (事件偵測) 的使用者集區動作,以及您希望 Amazon Cognito 採取的 Compromised credentials responses (憑證洩漏回應)。對於疑似洩漏憑證,您可以 Block sign-in (封鎖登入) 或 Allow sign-in (允許登入)。

    3. Adaptive authentication (適應性身分驗證) 下方選擇如何回應惡意登入嘗試。選取您是否要採取 Custom (自訂) 動作或使用 Cognito defaults (Cognito 預設值) 回應疑似惡意活動。當您選取 Cognito defaults (Cognito 預設值) 時,Amazon Cognito 會封鎖所有風險等級的登入,且不會通知使用者。

    4. 如果您已選取適用於 Adaptive authentication (適應性身分驗證) 的 Custom (自訂) 動作,則請選擇 Amazon Cognito 將根據嚴重性層級回應已偵測到之風險採取的 Automatic risk response (自動風險回應) 動作。針對風險層級指派回應時,您無法將較低限制的回應指派給較高層級的風險。您可以將下列回應指派給風險層級:

      1. Allow sign-in (允許登入) – 不採取任何預防措施。

      2. Optional MFA (選用 MFA) – 如果使用者已設定 MFA,則 Amazon Cognito 會一律要求使用者在登入時提供額外的 SMS 或以時間為基礎的一次性密碼 (TOTP) 因素。如果使用者沒有設定 MFA,則他們可以繼續正常登入。

      3. Require MFA (需要 MFA) – 如果使用者已設定 MFA,則 Amazon Cognito 會一律要求使用者在登入時提供額外的 SMS 或 TOTP 因素。如果使用者沒有設定 MFA,則 Amazon Cognito 會提示他們設定 MFA。在自動為使用者要求 MFA 之前,請在應用程式中設定機制來擷取用於 SMS MFA 的電話號碼,或註冊用於 TOTP MFA 的驗證器應用程式。

      4. 封鎖登入 – 阻止使用者登入。

      5. 通知使用者 – 傳送電子郵件訊息給使用者,其中包含 Amazon Cognito 已偵測到之風險以及您採取之回應的資訊。您可以為傳送的訊息自訂電子郵件訊息範本。

  7. 如果您已在上一步中選擇 Notify user (通知使用者),則可以自訂電子郵件傳遞設定和電子郵件訊息範本,以進行適應性身分驗證。

    1. Email configuration (電子郵件組態) 下,選擇您想要與適應性身分驗證搭配使用的 SES Region (SES 區域)、FROM email address (寄件者電子郵件地址)、FROM sender name (寄件者傳送人名稱) 以及 REPLY-TO email address (回覆至電子郵件地址)。如需將使用者集區電子郵件訊息與 Amazon Simple Email Service 整合的相關詳細資訊,請參閱 Amazon Cognito 使用者集區的電子郵件設定

      使用者事件歷史記錄
    2. 展開 Email templates (電子郵件範本),自訂同時搭配 HTML 和純文字電子郵件訊息版本的適應性身分驗證通知。若要進一步了解電子郵件訊息範本,請參閱 訊息範本

  8. 展開 IP address exceptions (IP 地址例外狀況),以建立無論進階安全風險評定為何,一律允許或封鎖的 Always-allow (一律允許) 或 Always-block (一律封鎖) IPv4 或 IPv6 地址範圍清單。以 CIDR notation (CIDR 表示法) 指定 IP 地址範圍 (如 192.168.100.0/24)。

  9. 選擇 Save changes (儲存變更)