通过 Amplify [Okta] 将代码质询传递给 Cognito Federated Identiy

Passing code challenge to Cognito Federated Identiy via Amplify [Okta]

我将 Cognito 用户池与联合身份集成 [Okta - 作为安全 Web 身份验证]。这些流程与授权代码流程 没有 PKCE(使用带有 Angular 的放大)一起工作正常。

创建了一个与 SPA 类似的应用程序(在 Okta 中),以启用 PKCE 并与 Cognito 联合身份集成。 当我们重定向到 Hosted UI 时,挑战正在 URL.

中传递给 hosted UI

但是在重定向到 okta 之后,它抛出了这个错误。

pkce code challenge is required when the token endpoint authentication method is 'none'

Cognito 中是否需要任何其他配置才能将代码挑战传递给 Okta。

我在 Cognito 和 Okta 中使用授权码流程

正在附加 Okta 中的配置。

在 Cognito 中附加配置

我的理解有误。 Cognito 和 Okta 之间的通信是服务到服务 调用,这应该作为客户端凭证大流程执行。我们没有在 Okta 中启用 PKCE。

已为客户端(Web 或移动应用程序)启用 PKCE 以进行服务身份验证。

当我们创建没有客户端密码的 App Client 时,Amplify 在前端启用 PKCE。