Wie sende ich ein Passwort sicher an den REST-Service?

ich benutzeFlasche-Restful einen REST-Service aufzubauen. Das iOS-Gerät stellt dann eine Verbindung zu diesem REST-Backend her, um die lokalen Daten zu synchronisieren.

Auf den Dienst wird über a zugegriffenhttps Verbindung.

Der REST-Service ist statusfrei und der Benutzer muss sich bei jeder Anforderung authentifizieren. Aus diesem Grund werden Benutzername und Passwort in einem eindeutigen Format an den REST-Service gesendet. Das Backend überprüft das Passwort und vergleicht es mit dem vorhandenen Passwort in der Datenbank.

api.add_resource(Records, '/rest/records/<string:email>/<string:password>/<string:ios_sync_timestamp>')

Ein Problem, das ich bei diesem Ansatz sehe, ist, dass der Benutzername und das Passwort als Teil der GET-URL in einem eindeutigen Format vorliegen. Das Server-Protokoll wird dies offensichtlich verfolgen. Wenn mein Backend jemals gehackt würde, würden die Protokolldateien alle Benutzernamen und Kennwörter gefährden.

Was ist die beste Lösung dafür? Ich dachte, ich sende Benutzernamen und Passwort als POST-Argumente, aber wie kann ich das dann mit GET-Anfragen tun?

class Records(Resource):
    def get(self, email, password, ios_sync_timestamp):
        pass
    def post(self, email, password, ios_sync_timestamp):
        pass

Antworten auf die Frage(2)

Ihre Antwort auf die Frage