Ich habe jetzt mehr als einen Tag gegoogelt. Vielleicht fehlen mir die richtigen Keywords.API-Schlüssel in Angular2 sichern
Ich habe folgendes Setup:
- Express.js API (mit PM2 läuft auf Port 3000)
- Angular2 app - serviert über nginx
Beide laufen auf dem gleichen Server.
Anrufe an die api (mydomain/api /) an proxied 127.0.0.1:3000
Für api Anrufe, die Genehmigung erfordern werde ich JWT und Benutzer-Authentifizierung verwenden.
Was ich erreichen möchte, ist, dass ich ein Token für meine angular2-App erzeuge, die erlaubt/benötigt wird, die öffentlichen Anrufe (Listen von Produkten zum Beispiel) zu machen.
Dieses Token muss natürlich sicher übertragen werden, da ich nicht möchte, dass andere meine Produkte und Preise über direkte API-Anrufe (mit einem gestohlenen Token) erhalten.
Jede Hilfe wird geschätzt.
Entschuldigung, ich bin ein wenig dumm in diesem Abschnitt. Ich werde natürlich https einrichten. Aber ich muss immer noch mein öffentliches Token in einen Anfrageheader/URL-Param aus der eckigen App aufnehmen, so dass es für jeden sichtbar ist. Oder fehlt mir etwas? – user1261284
siehe das Wiki, da https das Protokoll der Anwendungsebene ist, verschlüsselt es auch die Überschriften. – eesdil
Ja, Sie haben in jedem Aufruf ein Token. Aber dieses Token wird auf dem Server erzeugt ... Ich habe jetzt ein ähnliches Setup (Express - Winkel 2) Ich werde meinen Workflow als Antwort hier einreichen. –