IZUG846W: Eine HTTP-Anforderung für einen z / OSMF-REST-Service wurde von einem Remote-Standort empfangen

888
Hogstrom

Ich habe z / OSMF eingerichtet und erhalte diesen Fehler beim Versuch, auf die URL zuzugreifen https://my.zos.com/zosmf/restjobs/jobs.

{“ErrorID”: “IZUG846W”, “errorMsg”: “IZUG846W: Eine HTTP-Anforderung für einen z / OSMF-REST-Service wurde von einer Remote-Site empfangen. Die Anforderung wurde jedoch abgelehnt, da der entfernte Standort \ "\" für den z / OSMF-Server \ "IZUSVR \" auf dem Zielsystem \ "my.zos.com \" nicht zulässig ist. "}

Die Fehlermeldung enthält keine ausreichenden Informationen zum Ermitteln der Hauptursache. Hat jemand anderes dieses Problem getroffen?

3

3 Antworten auf die Frage

4
John Czukkermann

CSRF_SWITCH (ON) sollte beibehalten werden, und ich glaube, es ist die Standardeinstellung, für die eine Whitelist eingerichtet werden muss, damit nur Hosts in der Whitelist Anfragen erstellen können.

Die Whitelist ist ein RACF- ZMFAPLARessourcenklassenprofil des Formulars IZUDFLT.ZOSMF.REST.<zosmf-service>.<reversed-host-name>. Alle diese Profile müssen mit UACC (NONE) definiert sein und READ-Zugriff auf die Server-ID zulassen (Standardeinstellung ist IZUSVR).

Ein Beispielprofil IZUDFLT.ZOSMF.REST.*.com.whoa.test.myserverermöglicht eingehende Cross-Origin-Anforderungen vom Hostnamen myserver.test.whoa.com. Gleiche Ursprungsanforderungen, z. B. von einem Webbrowser, der direkt auf den z / OSMF-Host zugreift, unterliegen nicht dem CSRF-Schutz.

Danke, John. Deshalb habe ich angerufen, dass z / OSMF in einem sicheren Modus eingerichtet ist und Verweise auf andere Materialien zur Verfügung gestellt hat. Hogstrom vor 6 Jahren 0
2
Joe Winchester

Wenn Sie die REST-Anforderung selbst generieren, können Sie den Header X-CSRF-ZOSMF-HEADER mit einem beliebigen Wert hinzufügen, um dies zu umgehen. Mit dem Firefox-Postboten können Sie beispielsweise die Kopfzeile hinzufügen, von der ich vorher und nachher ein Bild des Postboten hatte

Eine weitere gute Möglichkeit, mit einem anspruchsvollen z / OSMF-Server umzugehen, besteht darin, die API über CURL zu betreiben

curl -k -H "X-CSRF-ZOSMF-HEADER: Dummy" -u: https: //: / zosmf / restfiles / ds? dslevel = T *

In zowe.org bieten wir eine Reihe von REST-APIs, die nicht auf dem Header bestehen und einige Nuancen von z / OSMF abstrahieren, sowie eine Befehlszeilenschnittstelle und einen gut aussehenden JES-Explorer sowie einige Dateiexplorer für Datensätze und USS-Dateien, die in einem Browser ausgeführt werden. Wenn Sie also einen Moment Zeit haben, wenden Sie sich bitte an zowe.org und lassen Sie uns wissen, ob dies überhaupt hilft.

Prost,

Joe

1
Hogstrom

Standardmäßig ist z / OSMF in einem sicheren Modus konfiguriert, um eine versehentliche Sicherheitslücke nicht zu öffnen. Die Meldung zeigt an, dass das entfernte System (Quelle des REST-Aufrufs) möglicherweise unsicher ist. Dies bedeutet, dass die Anfrage abgelehnt wird.

Eine Möglichkeit, dieses Problem zu vermeiden, besteht darin, das IZUPRMnnMember zu ändern, das z / OSMF initialisiert. Der Parameter:

CSRF_SWITCH(ON)CSRF_SWITCH(OFF)Dies ist die Standardeinstellung, die geändert werden kann. Dadurch wird der Cross Site Scripting-Sicherheitsmechanismus deaktiviert.

Die Parameter für z / OSMF finden Sie hier .

Der spezifische Eintrag für CSRF_SWITCHist unten aufgeführt und basiert auf z / OS 2.3.

CSRF_SWITCH (ON | OFF)

Gibt an, ob die CSRF-Überprüfung (Cross Site Request Forgery) für REST-API-Anforderungen aktiviert ist. Standardmäßig ist CSRF_SWITCH auf ON gesetzt, um sicherzustellen, dass Ihre Installation vor CSRF-Angriffen geschützt ist. In einigen eingeschränkten Fällen, z. B. zum Testen, können Sie die CSRF-Prüfung vorübergehend deaktivieren, indem Sie CSRF_SWITCH = OFF setzen. Es wird jedoch empfohlen, diese Einstellung aktiviert zu lassen, um CSRF-Angriffe zu verhindern. Weitere Informationen finden Sie im Programmierhandbuch für IBM z / OS Management Facility. Standard ein

Weitere Informationen zur z / OSMF-Konfiguration finden Sie hier