REST API - Invalid or missing auth

Hallo,

ich hoffe mir kann jemand helfen, leider klappt die Authentifikation bei der Shopware API nicht. Über den Browser funktioniert es mit „meinshop/api/articles“ zwar wunderbar aber sobald ich es mit einem Clienten wie Postman probiere kommt nur „Invalid or missing auth“. Hab es sowohl auf einem Testsystem mit MAMP und einen Livesystem mit dem Provider all.Inkl probiert.
Das einzige was ich in der Suche endeckt habe ist folgende Einträge hinzuzufügen. Hat aber auch nicht geholfen. Hab bei All.Inkl die Domain aud PHP7 umgestellt …leider auch kein Erfolg

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

 

if (isset($_SERVER['REDIRECT_HTTP_AUTHORIZATION'])){
    $_SERVER['HTTP_AUTHORIZATION'] = $_SERVER['REDIRECT_HTTP_AUTHORIZATION'];
}

jemand noch n tipp?

 

Wenn ich Postman benutze, übergebe ich die Zugangsdaten dierekt in der URL.

Also etwa so:​

http://BENUTZER:PASSWORT@meinshop.de/api/articles/  ​

Hallo waldicom, danke für den Tipp aber es kommt die selbe Fehlermeldung :frowning:

push

gibts hierfür eine Lösung?

Hallo,

 

ist schon alles richtig. Funktioniert auch alles so wie es sollte. Du musst nur in Deiner HTTP Anfrage von Postman und anderen REST Clients die Verbindungs-Credentials mit übergeben. Das ist in Deinem Fall Benutzername und Passwort. Schau mal in die Postman Einstellungen für HTTP Auth. Dort musst Du MD5 einstellen. Shopware hahst standardgemäß Benutzername und Passwort mit MD5. Das ist auch, was Dein Browser tut, nachdem Du dort Benutzername und Passwort eingegeben hast in diesem rudimentären Prompt.

Dass das mit anderen Clients nicht funktioniert, liegt schlicht und ergreifend daran, dass Du bisher nicht die HTTP Auth Methode benutzt hast.

 

 

MFG

 

derwunner

Bei mir kommt allerdings die gleiche Fehlermeldung wie bei michel.

Trotz : http://demo:APIKEY@192.168.33.10/shopware/api/articles/3

Nutze die Vagrant box.

Authorization: Digest, username, pw, Algorithm MD5

Ich benutz bei Vagrant folgende Einstellungen:

http://demo:APIKEY@192.168.10.33/shopware/api/articles

Headers:
Accept: */*
Cache-Control: no-cache

manchmal noch useNumberAsId=true (bzw als query paramter)
Ich benutz den REST-Client in PHPStorm, Das REST Plugin in vscode und einen selbst geschriebener Client der die WinHTTP Interop nutzt. GIng alles bis jetzt einwandfrei mit Vagrant. 

Ok, keine Ahnung, so habe ich das noch nie gemacht. Ich hatte bisher immer die Anmeldedaten nicht in den URL geschrieben, sondern im HTTP Header mitgegeben.

Schau mal ins Shopware Backend bei der Benutzerverwaltung, vielliecht ist der API Zugang für den Benutzer gar nicht aktiviert?

Das liegt meistens daran das der Client nicht Digest benutzt. Demnächst ist das Problem aber mit Rest api basic auth support by shyim · Pull Request #1077 · shopware/shopware · GitHub gelöst 

1 Like

@Shyim schrieb:

Das liegt meistens daran das der Client nicht Digest benutzt. Demnächst ist das Problem aber mit https://github.com/shopware/shopware/pull/1077 gelöst 

Ja, danke, das meinte ich doch. Mir ist nur das Wort nicht mehr eingefallen^^