Come posso ottenere UserPool dettagli da IdentityPool/UserPool id (sub)

0

Domanda

C'è un modo per ottenere informazioni utente (profilo attributi, ecc) se ho IdentityPool o UserPool ID (sotto) di un utente con AWS SDK?

Il caso d'uso è che sto risparmiando un po ' di informazioni inviate da un utente in un DB con una chiave uguale a ID utente (sub). Così, quando leggo dal DB, voglio riportare indietro di qualche info utente della mia piscina, per la mia app UI.

Ho trovato una domanda simile (Sempre cognito pool dell'utente nome utente dal cognito identità piscina identityId), ma a quanto pare, la risposta è incentrato intorno a serverless di distribuzione, e ha ancora alcune lacune.

Grazie in anticipo

amazon-cognito aws-sdk aws-sdk-js
2021-11-22 01:56:13
2

Migliore risposta

1

Dal momento che si dispone di un utente subè possibile utilizzare AdminGetUser. Restituisce il UserAttributes in piscina.

2021-11-24 06:05:46
0

Penso di aver trovato una soluzione, era sulla superficie effettivamente.

Utente id pool si può usare ListUsers chiamata con filtro sub = \"${userId}\". Il client da utilizzare è CognitoIdentityProviderClientse JS è utilizzato.

    const client = new CognitoIdentityProviderClient({
        region: REGION,
        credentials: fromCognitoIdentityPool({
            client: new CognitoIdentityClient({ region: REGION }),
            logins: {
                [PROVIDER_ID]: token
            },
            identityPoolId: ID_POOL_ID
        })
    });

    const filter = `sub = \"${userPoolId}\"`;

    const resp = await client.send(new ListUsersCommand({
        UserPoolId: USER_POOL_ID,
        Filter: filter,
        Limit: 1
    }));

Naturalmente AdminGetUser può essere utilizzato come bene, come Ulas Keles di cui sopra, se applicabile

2021-11-24 13:50:51

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................