MobileFirst Server für die Authentifizierung externer Ressourcen verwenden

improve this page | report issue

Übersicht

Geschützte Ressourcen können in MobileFirst Server ausgeführt werden (z. B. Adapter) oder auf externen Servern. Sie können Ressourcen auf externen Servern mit den Validierungsmodulen der Mobile Foundation schützen.

In diesem Lernprogramm erfahren Sie, wie ein externer Ressourcenserver durch die Implementierung eines Filters für die Validierung eines MobileFirst-Zugriffstokens geschützt wird.
Sie können einen derartigen Schutz vollständig mit angepasstem Code implementieren oder mit einer der Helper-Bibliotheken der Mobile Foundation, in die ein Teil des Ablaufs eingebunden ist.

Voraussetzung:

Ablauf

Diagramm zum Schutz externer Ressourcen

Eine Komponente von MobileFirst Server ist der Introspektionsendpunkt. Diese Komponente ist in der Lage, Daten eines MobileFirst-Zugriffstokens zu validieren und zu extrahieren. Der Introspektionsendpunkt ist über eine REST-API verfügbar.

  1. Eine Anwendung mit dem Mobile Foundation-Client-SDK setzt einen Anforderungsaufruf (oder eine HTTP-Anforderung) mit der Anforderung einer geschützten Ressource mit oder ohne Authorization-Header (Clientzugriffstoken) ab.
  2. Für die Kommunikation mit dem Introspektionsendpunkt muss der Filter auf dem Ressourcenserver für sich selbst ein gesondertes Token anfordern (siehe Abschnitt Vertraulicher Client).
  3. Der Filter auf dem Ressourcenserver extrahiert das Clientzugriffstoken aus Schritt 1 und sendet es zur Validierung an den Introspektionsendpunkt.
  4. Wenn der MobileFirst-Autorisierungsserver feststellt, dass das Token ungültig (oder nicht vorhanden) ist, leitet der Ressourcenserver den Client weiter, um ein neues Token für den erforderlichen Bereich abzurufen. Dies geschieht intern, wenn das MobileFirst-Client-SDK verwendet wird.

Vertraulicher Client

Da der Introspektionsendpunkt eine mit dem Bereich authorization.introspect intern geschützte Ressource ist, muss der Ressourcenserver ein separates Token abrufen, um Daten an den Endpunkt senden zu können. Wenn Sie versuchen, eine Anforderung ohne Authorization-Header an den Introspektionsendpunkt abzusetzen, wird eine Antwort 401 zurückgegeben.

Wenn der externe Ressourcenserver ein Token für den Bereich authorization.introspect anfordern können soll, muss der Server in der MobileFirst Operations Console als vertraulicher Client registriert werden.

Weitere Informationen enthält das Lernprogramm Vertrauliche Clients.

Fügen Sie in der MobileFirst Operations Console unter Einstellungen → Vertrauliche Clients einen neuen Eintrag hinzu. Wählen Sie einen Wert für Geheimer Clientschlüssel und für Geheimer API-Schlüssel aus. Vergewissern Sie sich, dass Zulässiger Bereich auf authorization.introspect gesetzt ist.

Vertraulichen Client konfigurieren

Implementierungen

Dieser Ablauf kann manuell mit direkten HTTP-Anforderungen an die diversen REST-APIs implementiert werden (siehe Dokumentation).
Die Mobile Foundation stellt für eine Implementierung auch Bibliotheken für WebSphere-Server mit dem verfügbaren Trust Association Interceptor oder für Java-Filter mit dem verfügbaren Java-Token-Validator bereit.

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on February 27, 2020