aws cognito list-users函数仅返回60个用户

时间:2019-01-26 23:40:39

标签: python amazon-web-services boto3 amazon-cognito

我需要列出cognito用户池的所有用户。 有什么方法可以返回用户池中的所有用户

boto3的list_users-功能-类似于以下代码的客户端,仅返回60个用户,而不是全部用户。

client = boto3.client('cognito-idp',
                         region_name=aws_region,
                         aws_access_key_id=aws_access_key,
                         aws_secret_access_key=aws_secret_key,
                         config=config)

print('Setup client')

response = client.list_users(
UserPoolId=userpool_id,
AttributesToGet=[
    'email','sub'
] 
)

预期结果是一个json对象列表,其中包括cognito用户组的所有用户

1 个答案:

答案 0 :(得分:2)

您正在看到预期的结果。您一次可以请求60个或更少的用户。您将需要使用分页令牌才能遍历用户池中存在的所有用户。请参阅API documentationLimitPaginationToken参数(重点是我的):

  

限制

     

要返回的最大用户数。

     

类型:整数
  有效范围:最小值为0。最大值为60。
  必填:否

  

PaginationToken

     

从上一次调用返回的标识符   此操作,可用于返回下一组项目   在列表中。

     

类型:字符串
  长度限制:最小长度为1。
  模式:[\S]+
  必填:否