Unsere API basiert auf parse (parseplatform.org).Gibt es auf Parse-Server eine alternative Möglichkeit, als Benutzer ohne ein 'Session'-Objekt abzufragen?
Ich habe einen Hintergrundjob, der Abfragen im Auftrag von Benutzern ausführen muss; Es muss sichergestellt werden, dass die Abfragen nur Objekte finden/aktualisieren, die die ACL des Benutzers zulässt.
Für die meisten Benutzer kann ich die Parse.Session
Klasse abfragen, um die sessionToken
für den angegebenen Benutzer zu erhalten, und dann diese für alle Anfragen verwenden, z. query.find({sessionToken: "r:xxx"})
.
Aber für einige Benutzer ist das einzige verfügbare session
Objekt abgelaufen, und für viele gibt es keine session
Objekte überhaupt.
Soweit ich weiß, ist das Erstellen von Parse.Session
Instanzen nicht möglich; Die einzige Möglichkeit, eine Sitzung zu erstellen, ist der Aufruf Parse.User.logIn
; Dies ist jedoch keine Option für uns, hauptsächlich weil wir das Passwort des Benutzers benötigen (was wir nicht haben), aber auch, weil es zu Speicherlecks in Umgebungen parse-server
führt.
Hat jemand eine Lösung dafür gefunden?
Danke Alon, aber ich möchte nicht den Mastery-Schlüssel verwenden, da das Objekte zurückgibt, die der Benutzer nicht sehen sollte - ich muss nur Objekte finden, die in die Leserechte des Benutzers fallen, damit ich es schließlich sende die Objekte an sie - sie können sie auf ihr Konto laden. –
Versuchen Sie es mit der Methode 'wird'. Nicht sicher, ob Sie das sessionToken irgendwo gespeichert haben, aber wenn Sie das tun, können Sie das http://parseplatform.org/Parse-SDK-JS/api/classes/Parse.User.html#methods_become verwenden. –
Es ist die Tatsache, dass wir es nicht tun. Ich habe sessionTokens für einige Benutzer gespeichert, die dieses Problem verursachen. auch die Methode 'wird' ist im Cloud-Code nicht sicher. –