1

Ich bin neu bei AWS und brauche wirklich Hilfe dabei. Ich habe eine bestehende RDS-Schema mit Benutzer-Tabelle und auch mit meinem eigenen Benutzer-Authentifizierungsalgorithmus/-system mit JWT. Alles war gut, bis ich mit dem Hochladen von Dateien in S3 fertig war. Das habe ich beim Hochladen auf S3 festgestellt. Wir können keine zusätzlichen Parameter übergeben, sondern nur den body, key, contentType und den Bucket. Ich wollte zusätzliche Parameter wie das Zugriffstoken des aktuell angemeldeten Benutzers (für die Benutzerüberprüfungssicherheit), die Benutzer-ID, den Fototitel und die Bildunterschrift übergeben. Aber es ist nicht möglich.AWS Cognito-Benutzer + Relationale Datenbanktabelle. Wie man beide abfragt/integriert?

Was soll ich tun? Sollte ich AWS Cognito-Benutzerpools anstelle von RDS-Benutzern verwenden? Wenn ich Cognito-Benutzerpools verwende, ist es möglich, eine SQL-Abfrage zu erstellen, z. B. die Teilnahme an einem Cognito-Benutzer und einer anderen RDS-Tabelle? Ich bin so verwirrt. Es tut mir leid, wenn ich mich wie ein Idiot anhört. Aber dazu brauche ich wirklich Hilfe.

Ich hoffe, jemand kann. Ich würde das wirklich zu schätzen wissen. Vielen Dank im Voraus.

Antwort

0

Ich nehme an, Ihre Upload-Logik ist in Lambda. In diesem Fall können Sie Ihre Berechtigung für den Upload in der Lambda-Funktion erteilen. Zulassen, dass die Lambda-Funktion Daten an S3 hochlädt, indem sie eine IAM-Richtlinie an die von Lambda verwendete IAM-Rolle anfügt.

Wenn Sie direkt von einem Client zu S3 hochladen, können Sie dies entweder ohne Authentifizierung/Autorisierung tun oder Föderierte Identitäten verwenden. In diesem Fall können Sie entweder alle Ihre Benutzer in einen Cognito-Benutzerpool exportieren (und sie synchron halten) oder Ihren eigenen Identitätsanbieter erstellen und Ihre Benutzer für einen Cognito-Identitätspool registrieren.

Der sauberste, aber wahrscheinlich auch schwierigste Weg besteht darin, Ihre Authentifizierung beizubehalten, über OpenID, SAML oder Ihre eigene Methode in den Cognito Identity Pool zu integrieren (siehe http://docs.aws.amazon.com/cognito/latest/developerguide/developer-authenticated-identities.html).

Sie sollten diesen Weg nur gehen, wenn a) Ihre Authentifizierung wirklich gut ist und b) Sie verifiziert haben, dass der Benutzer in einem Cognito Identity Pool Ihre Anforderungen/Geschäftsregeln tatsächlich erfüllt.

Verwandte Themen