【问题标题】:how to get list of users based on created date/updated date from cognito如何根据 cognito 的创建日期/更新日期获取用户列表
【发布时间】:2020-10-20 15:04:09
【问题描述】:

我正在尝试使用 sub 和 created date 从 cognito 获取用户,能够使用 sub 获取用户但它不接受创建日期,因为这不是传递过滤器的属性,下面是相同的代码,我想通过在过滤器中创建 Filter="created ="2020-06-30""

 import boto3

 client = boto3.client('cognito-idp',region_name='us-east-2',
                     aws_access_key_id='XXXXXX',
                     aws_secret_access_key='XXXXXXX',
                     )

  response1 = client.list_users(UserPoolId='us-east-2_XXXXXX',AttributesToGet= 
  ['birthdate','name','sub'], Filter="sub =\"XXXXX-dCCa-4121-94c9-XXXXXX\"")

  print(response1)

错误: InvalidParameterException:调用ListUsers操作时发生错误(InvalidParameterException):无效搜索属性:UserCreateDate

【问题讨论】:

    标签: python amazon-cognito


    【解决方案1】:

    来自官方AWS Docs

    您只能搜索以下标准属性:

    • 用户名(区分大小写)

    • 电子邮件

    • 电话号码

    • 名字

    • 给定名称

    • 家庭名称

    • 首选用户名

    • cognito:user_status(在控制台中称为状态)(不区分大小写)

    • 状态(在控制台中称为启用)(区分大小写)

    您可以编写自己的代码来过滤从 list_users 获得的结果。对返回的 USERS 值运行一个循环,并创建一个新列表,其中仅包含与您的日期过滤条件匹配的用户。

    【讨论】:

    • 是的,我试图让用户使用上述方法,但无法比较日期格式,在 cognito 中更新的日期格式不同..不确定如何与当前日期进行比较。'UserCreateDate':日期时间。 datetime(2020, 6, 29, 22, 27, 5, 149000, tzinfo = tzlocal())
    • datetime 是一个库是 python。只需导入 datetime 并将这个 datetime.datetime(2020, 6, 29, 22, 27, 5, 149000, tzinfo = tzlocal()) 分配给一个变量。
    • 如果解决了您的问题,请将答案标记为正确并点赞
    • 感谢您的回答,请您查看以下问题stackoverflow.com/questions/62663272/…
    猜你喜欢
    • 2022-11-12
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多