次のAWS Lambdaベースのアプリケーションクライアントを使用して、私はCognitoのユーザープールからすべてのユーザーをリストしようとしています。AWS Cognito ListUsers InvalidParameterExceptionカスタム属性でAttributesToGetを使用しています
let AWS = require('aws-sdk')
const COGNITO_CLIENT = new AWS.CognitoIdentityServiceProvider()
COGNITO_CLIENT.listUsers({
UserPoolId: 'MyUserPoolId',
AttributesToGet: ['default_attribute', 'custom:my_attribute']
}, callback)
すべての属性をデフォルトで照会するとすべて正常に動作します(AttributesToGet: [] // or excluding this field altogether
)。ただし、カスタム属性を対象とする場合、InvalidParameterExceptionが発生します。これは、Node.jsにAmazon SDKを使用しています。
ターゲットデフォルトの属性は、しかし許可されています。
AttributesToGet: ['email', 'name', /* other non-custom */]
'AttributesToGet'がパターン' [\\ p {L} \\ p {M} \\ p {S} \\ p {N} \\ p {P}] + ' –
と一致していることを確認してください。カスタム属性への読み取りアクセス権を持ちます。クライアントの後に属性が作成された場合、クライアントはデフォルトでクライアントにアクセスできません。クライアントの詳細の下にあり、リンクをクリックしてアクセスを変更します。 – doorstuck
私はチェックして、アプリケーションクライアントに読み取りアクセス権があります。すべての属性が返されるように要求すると、カスタム属性が返されます。 'AttributesToGet'を使ってそれらを対象とすると、例外が発生する – Nogurenn