OAuth2.0 補助金 - Amazon Cognito

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

OAuth2.0 補助金

Amazon Cognito 使用者集區 OAuth 2.0 授權伺服器會發出權杖,以回應三種類型的 OAuth 2.0 授權授予。您可以為使用者集區中的每個應用程式用戶端設定支援的授予類型。您無法在相同應用程式用戶端中,將用戶端憑證授予啟用為隱含授權碼授予。隱含和授權碼授予的請求是從您的 授權端點 開始,而用戶端憑證授予的請求則是從您的 權杖端點 開始。

授予授權碼

為了響應成功的身份驗證請求,授權服務器將code參數中的授權代碼附加到您的回調URL中。您必須將 ID、存取及重新整理權杖的授權碼與 權杖端點 進行交換。若要請求授權碼授予,請在您的請求中將 response_type 設定為 code。如需請求範例,請參閱 授予授權碼

授權碼授予是最安全的授權授予形式。它不會直接向您的使用者顯示權杖內容。而是由您的應用程式負責擷取並安全儲存使用者的權杖。在 Amazon Cognito 中,授權碼授予是從授權伺服器取得全部三種權杖類型 (ID、存取和重新整理) 的唯一方式。您也可以透過 Amazon Cognito 使用者集區從身份驗證取得所有三種權杖類型API,但API不會發出範圍以外的存取權杖。aws.cognito.signin.user.admin

隱含授與

為了響應成功的身份驗證請求,授權服務器將訪問令牌附加到access_token參數中,並在id_token參數中附加一個 ID 令牌到您的回調URL中。隱含授予不需與 權杖端點 進一步互動。若要請求隱含授予,請在您的請求終將 response_type 設定為 token。隱含授予只會產生 ID 和存取權杖。如需請求範例,請參閱 授予權杖,不含 openid 範圍

隱含授予是舊有的授權授予。與授權碼授予不同之處在於,使用者可以攔截並檢查您的權杖。為了防止透過隱含授予傳遞權杖,請將您的應用程式用戶端設定為僅支援授權碼授予。

用戶端憑證

用戶端認證是存取權的僅授權授與。 machine-to-machine若要接收用戶端憑證授予,請略過 授權端點 並直接對 權杖端點 產生請求。您的應用程式用戶端必須有用戶端密碼,且只支援用戶端憑證授予。若您的請求成功,授權伺服器會傳回存取權杖做為回應。

來自客戶端憑據授予的訪問令牌是一種包含 OAuth 2.0 範圍的授權機制。通常,令牌包含自定義範圍聲明,這些聲明授權HTTP操作受訪問APIs保護。如需詳細資訊,請參閱範圍、M2M 和資源伺服器API授權

用戶端憑證授予您的帳 AWS 單增加成本。如需詳細資訊,請參閱 Amazon Cognito 定價

如需有關這些授權及其實作的更多觀點,請參閱如何在 Amazon Cognito 中使用 OAuth 2.0:在AWS 安全部落格中了解不同的 OAuth 2.0 授權