2017-03-23 6 views
0

Ich arbeite an einem Server für eine API, die ich gerade entwickle, die mit node.js erstellt wird, und erfordert die Verwendung von AWS Cognito. Zuvor haben wir eine funktionierende Version dieser Anwendung auf Clientseite entwickelt, die das AWS SDK verwendet, und ich versuche derzeit, diese Funktionalität auf die Serverseite zu übertragen. Ich bemühe mich, einen guten Weg zu finden, dies zu tun, und habe ein paar spezifische Fragen, die, wenn sie beantwortet werden, mir wahrscheinlich erlauben würden, die Implementierung zu bekommen, nach der ich suche. Im Grunde möchte ich wissen, was das AWSCognito-Objekt ist und wie ich darauf zugreifen kann, wie ich es in der folgenden Codezeile sehe.AWS Cognito SDK Node.JS-Implementierung

var poolData = { 
    UserPoolId : 'us-east-###########', 
    ClientId : '########################' 
}; 
var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData); 

Derzeit mein Code festgelegt ist die komplette AWS SDK auf, installiert mit [a] und in meinem Code zugegriffen mit [b].

Gibt es eine Möglichkeit, von meinem AWS-Objekt auf dieses AWSCognito-Objekt zuzugreifen? Wenn ja, wie mache ich das? Wenn nicht, wie kann ich darauf zugreifen/ist es überhaupt möglich, darauf zuzugreifen?

Edit: In grober Zusammenfassung, ich möchte nur den Zugriff auf die folgenden Funktionen und haben keine Ahnung, wie sie von einem

  1. userPool.signUp server- node.js zugreifen (Benutzername, Passwort, Attribute, Rückruf)
  2. cognitoUser.confirmPassword (Verifikation, newPassword, {})
  3. cognitoUser.forgotPassword ({})
  4. cognitoUser.authenticateUser (authenticationDetails, {})
  5. userPool.getCurrentUser ()
  6. cognitoUser.getSession (Rückruf)
  7. cognitoUser.confirmRegistration (Verifikation, Bool, Rückruf)
  8. cognitoUser.updateAttributes (attribute, Rückruf)
  9. cognitoUser.getUserAttributes (Rückruf)

bearbeiten : Update 1

Das AWSCognito-Objekt wird durch das AWS Cognito SDK im Fenster auf eine globale Variable festgelegt. Dies ist ein Prozess, der nur clientseitig funktioniert (ja ich weiß, dass es Hacky-Lösungen gibt, um ein Fenster auf meinem Server zu emulieren, ich würde es vorziehen, diese nicht zu verwenden). Gibt es auf der Serverseite ein gleichwertiges Objekt, auf das ich zugreifen und Funktionen aufrufen kann?

Antwort

1

Sie können Cognito in einer Node.JS-Umgebung verwenden. Dies ist jedoch mit dem AWS SDK für JavaScript etwas anders als mit dem AWS Cognito SDK. Anhand der Namen der Funktionen, auf die Sie zugreifen möchten, sollten Sie sich die Cognito Identity Provider Service ansehen. Vorgänge, die mit admin beginnen, werden von einem Server mit AWS-Anmeldeinformationen aufgerufen.

+0

Das ist genau das, was ich gesucht habe. Ich hatte diese Dokumentation bereits durchgesehen, aber nicht wirklich verstanden, was der Zweck der "Admin" -Operationen war. Vielen Dank! –