簡體   English   中英

使用用戶名和密碼通過 Cognito 獲取訪問令牌

[英]Getting Access Tokens with Cognito using Username and Password

我有一個 Cognito 用戶池、一個應用程序設置和一個資源服務器設置。 我們不想使用托管 UI 登錄,我正在嘗試從后端使用用戶名和密碼對 Oauth 2.0 進行授權,並將令牌發送回前端以用於 api 網關調用。 我正在使用 c# 並且提供的 SDK 不允許正確的范圍,所以我正在嘗試登錄的手動 oauth2 方法,但我嘗試過的任何方法都不起作用。

編輯:今天我嘗試使用 postman 的嘗試更進一步了,但是,我收到錯誤:unsupported_grant_type 具有以下設置:

郵遞員設置

截至目前,如果沒有托管 UI,則不支持此功能。 基本上,您不能期望AdminInitiateAuthaccess_token中包含自定義范圍。

這不是 .NET SDK 中的限制。 這是 Cognito 本身的局限性。

根據這個答案,有人可以爭辯說這是預期的行為。

通過啟動 Auth 或管理員啟動 Auth 登錄不是通過 Oauth 端點,因此 Oauth 自定義范圍不會包含在令牌中。

此外,在其他不同的 SDK/Lib 中也提到了這個問題,例如: android sdkAmplify JS 評論中提到了幾個問題。

也許您可以嘗試將id_token與 Lambda 授權者一起使用作為解決方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM