You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安卓端用Google One-Tap的ID Token,能否在AWS Cognito用户池创建用户?

可行,具体实现方式如下

这完全可以实现,和AWS托管UI的用户创建逻辑一致,不需要手动调用用户创建接口,而是通过Cognito的认证流程自动完成用户创建,具体步骤如下:

  • 确认Google ID Token的有效性
    确保安卓端通过Google One-Tap获取的ID Token,其aud字段与你在Cognito用户池配置Google身份提供商时填写的Web应用客户端ID一致(Cognito会验证这个字段,确保Token是针对你的应用生成的)。

  • 调用Cognito认证接口触发自动用户创建
    使用AWS SDK for Android调用Cognito的认证接口,无需提前创建用户:

    1. 设置AuthFlow为CUSTOM_AUTH(或直接调用InitiateAuth并指定身份提供商参数)
    2. 在AuthParameters中传入以下核心参数:
      • IDENTITY_PROVIDER: Google(需与你在Cognito中配置的身份提供商名称完全一致)
      • TOKEN: 从Google One-Tap获取的ID Token
      • USERNAME: 可填写Google用户的邮箱或ID(Cognito会自动匹配并生成对应用户)

    当Cognito验证通过Google ID Token后,如果用户池中不存在该Google账号对应的用户,会自动创建格式为google_<Google用户ID>的用户,和托管UI登录时的效果完全相同。

  • 关键注意事项

    • 不要手动调用SignUp接口创建用户,手动创建的用户无法关联到Google身份提供商,无法实现和托管UI一致的第三方登录关联逻辑
    • 确保安卓端的AWS SDK已正确配置Cognito用户池ID、客户端ID等核心信息,且权限配置允许执行认证操作

内容的提问来源于stack exchange,提问作者user2694572

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 00:47:17