2017-04-17 2 views
0

ich auf einer verteilten Web-Anwendung arbeite mit Spring Microservices Design-Muster, wo einzelne Dienste auf verschiedenen Ports wie ausgeführt -Microservices Architecture - erfordert Firefox Ausnahme für jeden Port hinzugefügt werden

Product Management - domain:8500 

User Management - domain:8501 

Wenn nun der Benutzer Anrufe Benutzerverwaltung durch Öffnen der URL "domain: 8501/some_url", die intern die Produktverwaltung "domain: 8500/some_other_url" aufruft und davon ausgeht, dass das Zertifikat selbstsigniert ist, dh für den Browser ist die CA unbekannt und muss daher die Ausnahme machen manuell im Browser hinzugefügt werden. In diesem Fall, während Chrome funktioniert gut, Firefox und IE auch wahrscheinlich die Ausnahme für die Domäne mit Port und damit auch für den internen Aufruf als auch wartet er intern auf die Sicherheitsausnahme hinzugefügt werden.

Als Ergebnis ist meine API-Aufruf fehlgeschlagen. Ist das ein Verhalten von Firefox oder mache ich etwas falsch?

AJ

+0

Sie können auf jeden Fall Dinge verbessern, entweder durch die Verwendung von ordnungsgemäß signierten Zertifikaten oder (die bevorzugte Lösung in meinen Augen) mit Nginx oder Apache als Reverse-Proxy, die alle Dienste auf einer Domäne und Port verfügbar macht. Auf diese Weise können Sie auch Lastenausgleich durchführen (was Sie im Moment nicht können). – dunni

+0

hi @ dunni, Irgendwie sind in meinem Fall Zertifikate, die von einer vertrauenswürdigen Zertifizierungsstelle signiert wurden, möglicherweise nicht immer wahr. Ich denke, Nginx oder Reverse-Proxy kann eine Option sein. Lassen Sie mich jeden Zeiger, wie ich in Micro-Services-Umgebung verwenden kann, erkunden. – aj1984

Antwort

0

Versuchen entweder ein API-Gateway oder ein Proxy. Sie können Zuul für einen Proxy verwenden. Bitte gehen Sie durch Zuul starter.

Sie können sogar noch mehr interessante Dinge tun, indem Sie einen Proxy haben. Wie:

  1. Implementieren von Sicherheit: Implementieren Validierung & Überprüfung als Sicherheitskontrolle über den Proxy und kann das gleiche über andere Microservices vermeiden.
  2. Response-Handling: Sie können für den Client (Web/Mobile Browser/Mobile App)

hoffe, das hilft eine allgemeine Antwort von Ihrem Microservices in Proxy ändern.

Verwandte Themen