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

使用aws cognito-idp list-users能否按邮箱域名后缀过滤Cognito用户

AWS Cognito list-users 邮箱后缀匹配问题解答

结论

目前aws cognito-idp list-users的原生过滤语法不支持直接筛选邮箱后缀为@gmail.com的用户。

过滤规则说明

AWS Cognito 用户池的list-users接口仅支持以下几种过滤运算符,暂不支持后缀匹配、任意子串匹配能力:

  • ^=:前缀匹配,即你当前用来筛选john@前缀邮箱的运算符
  • =:精确值匹配
  • !=:不等值匹配
  • >/</>=/<=:大小比较运算符,多用于数字、日期类型的属性筛选

替代实现方案

你可以根据使用场景选择以下两种方案实现需求:

  1. 全量拉取后本地过滤
    如果你的用户池规模不大,可先拉取所有用户的邮箱属性,再通过本地工具做后缀筛选,常用的是配合jq命令实现,示例如下:
aws cognito-idp list-users --user-pool-id my-pool --attributes-to-get email | jq '.Users[] | select( .Attributes[] | select(.Name == "email").Value | endswith("@gmail.com") )'

如果用户量较大需要分页,可配合--starting-token参数循环拉取所有分页数据后再统一过滤即可。
2. 新增自定义属性预存后缀(适合高频需求)
如果后缀筛选是你经常需要用到的功能,可以在Cognito用户池新增email_suffix自定义属性,在用户注册、修改邮箱时自动将邮箱后缀写入该属性,之后就可以用原生过滤语法直接高效匹配,示例命令如下:

aws cognito-idp list-users --user-pool-id my-pool --filter "email_suffix = \"@gmail.com\"" --limit 20

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:36:02