將 Amazon Cognito 身分驗證和授權與 Web 和行動應用程式整合 - Amazon Cognito

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

將 Amazon Cognito 身分驗證和授權與 Web 和行動應用程式整合

當您將應用程式與 Amazon Cognito 應用程式用戶端整合時,您可以調用 API 操作以對使用者進行身分驗證和授權。我們建議您使用 AWS AmplifyAmazon Cognito 與您的網路和行動應用程式整合。 AWS Amplify 這是一個完整的解決方案,可讓前端 Web 和行動開發人員輕鬆建置、連接和託管 fullstack 應用程式 AWS,並可隨著使用案 AWS 服務 例的發展而靈活運用的廣度。Amplify Auth 主要使用 Amazon Cognito 來建置驗證功能。

Amazon Cognito 的典型實作會混合使用視覺化工具和 API。Amazon Cognito 主控台是用於設定和管理 Amazon Cognito 使用者集區和身分集區的視覺化介面。託管使用者介面是 ready-to-use 網路型登入應用程式,可快速測試和部署 Amazon Cognito 使用者集區。此外,在大多數 Amazon Cognito 部署中,您必須在應用程式中新增程式碼,才能與使用者集區和身分集區互動。例如,您的應用程式可能會調用託管 UI 來進行使用者登入,然後從應用程式程式碼呼叫權杖端點,以便用您的使用者授權碼交換權杖。然後,您的應用程式必須解譯和儲存使用者權杖,並在適當情況下出示權杖以進行驗證和授權。Amplify 針對這些程序新增了具有內建功能的引導式整合工具。

您也可以完全使用程式碼建置 Amazon Cognito 資源。若要開始使用您的自訂應用程式程式碼,請造訪適用 AWS  SDK 的 Amazon Cognito 程式碼範例。若要作為 OpenID Connect 身分提供者與 Amazon Cognito 整合,請使用 OpenID Connect 開發人員工具

在使用 Amazon Cognito 身分驗證和授權之前,請選擇一個應用程式平台並準備好要與服務進行整合的程式碼。如需了解可用的平台,請參閱 使用 AWS SDK 進行身分驗證。 AWS CLI 這是 Amazon Cognito 和其他的命令列開發套件 AWS 服務,是開始熟悉 Amazon Cognito API 的有價值的地方。

注意

有些 Amazon Cognito 元件只能使用 API 進行設定。例如,您只能使用更新UpdateUserPoolAPI 請求中UserPool類別LambdaConfig屬性的請求來設定使用者集區自訂 SMS CreateUserPool或電子郵件寄件者 Lambda 觸發程序。

Amazon Cognito 使用者集區 API 會與多種類別的 API 操作共用其命名空間。有一個類別用於設定使用者集區及其程序、身分提供者和使用者。另一個類別包括未經驗證的操作,可讓公有用戶端中的使用者登入、登出和管理其設定檔。API 作業的最後一個類別會在機密的伺服器端用戶端中執行您使用自己的 AWS 認證授權的使用者作業。在您開始實作應用程式程式碼之前,必須先知道預定的應用程式架構。如需詳細資訊,請參閱 使用 Amazon Cognito 使用者集區 API 和使用者集區端點

使用驗證 AWS Amplify

AWS Amplify 是構建 Web 和移動應用程序的完整解決方案。有了 Amplify,您就可以使用 Amplify 程式庫連線到現有資源,也可以使用 Amplify 命令列介面 (CLI) 建立和設定新資源。Amplify 也有連線 UI 元件,如 Authenticator,可用於設定和自訂您應用程式中的登入和註冊體驗。

若要在前端應用程式中使用 Amplify 驗證功能,請參閱下列各平台的文件。

Amplify 程式庫是開放原始碼的,可在上GitHub使用。若要深入了解 Amplify Auth 如何實作 Amazon Cognito 驗證,請造訪下列程式庫。

使用 Amplify 建立使用者介面 (UI)

Amazon Cognito 使用者集區託管 UI 能夠滿足 Web 或行動應用程式驗證前端的基本需要。若要自訂使用者介面 (UI) 使其超出託管 UI 所容納的參數,請建立自訂應用程式。Amplify UI 是各種不同語言的可自訂前端元件的集合。


          範例 Amplify Authenticator 應用程式的螢幕擷取畫面。

若要開始使用您的自訂驗證元件,請造訪下列 Authenticator 元件的文件。

使用 AWS SDK 進行身分驗證

若要使用安全的後端建立與 Amazon Cognito 互動的身分微服務,請使用您選擇的語言使用 AWS 開發套件連線到 Amazon Cognito 使用者集區和 Amazon Cognito 身分集區 API。

如需各個 API 操作的詳細內容,請參閱 Amazon Cognito 使用者集區 API 參考Amazon Cognito API 參考。這些文件包含另請參閱部分,其中包含可在支援平台中使用各種 SDK 的資源。