# Rest API: Authentifizierung mit REDIRECT\_HTTP\_AUTHORIZATION

**URL:** <https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [31. Januar 2013 um 12:45 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294 "2013-01-31T12:45:28Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![SwKaBe](https://avatars.discourse-cdn.com/v4/letter/s/977dab/32.png) [@SwKaBe](https://forum.shopware.com/u/SwKaBe)\
**Post date:** [31. Januar 2013 um 12:45 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/1 "2013-01-31T12:45:28Z")

</div>

Hallo, ich habe die Version 4.0.5 installiert (Shared Hosting 1&1) und betreibe sie soweit problemlos mit php 5.4.11 als CGI/FastCGI. Zur Nutzung der API habe ich einen Nutzer (local\_admin, aktiviert und mit Key) angelegt und den einfachen Authentifizierungstest (wie im Tutorial) durchgeführt. Ergebnis: {„success“:false,„message“:„Invalid or missing auth“} Daraufhin habe ich die htaccess-Datei erweitert: RewriteRule .\* - [E=HTTP\_AUTHORIZATION:%{HTTP:Authorization}] um php den Zugriff auf die Anmeldedaten zu ermöglichen - leider ebenfalls ohne Erfolg. Mit einem kleinen Testscript habe ich festgestellt, dass bei meinem Hostinganbieter die oben per .htaccess „weitergeleiteten“ Daten in der Servervariablen $\_SERVER[‚REDIRECT\_HTTP\_AUTHORIZATION‘] gespeichert werden, hier also zusätzlich der Präfix ‚REDIRECT‘ genutzt wird. Meine Frage: Kann die Rest API auf ‚REDIRECT\_HTTP\_AUTHORIZATION‘ zugreifen und so die Anmeldung erfolgreich durchführen oder können/müssen hier Anpassungen an der Software vorgenommen werden? Leider sind die Einflussmöglichkeiten bezüglich der „Serverumgebung“ sehr beschränkt, daher würde ich mich über einen Tipp oder sogar eine Lösung bei der Anwendung sehr freuen.

---

<div class="post-metadata">

**Author:** ![Benjamin\_Cremer](https://avatars.discourse-cdn.com/v4/letter/b/a8b319/32.png) [@Benjamin\_Cremer](https://forum.shopware.com/u/Benjamin_Cremer)\
**Post date:** [31. Januar 2013 um 16:38 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/2 "2013-01-31T16:38:00Z")

</div>

Hallo, du könntest es mit Folgendem Code-Snippet am Anfang der shopware.php versuchen: ` if (isset($\_SERVER['REDIRECT\_HTTP\_AUTHORIZATION'])) { list($\_SERVER['PHP\_AUTH\_USER'], $\_SERVER['PHP\_AUTH\_PW']) = explode(':' , base64\_decode(substr($\_SERVER['REDIRECT\_HTTP\_AUTHORIZATION'], 6))); } ` Ich habe grade keine Resourcen um dies zu testen, aber um eine kurze Rückmeldung würde ich mich freuen 😉 Viele Grüße, Benjamin Cremer :shopware:

---

<div class="post-metadata">

**Author:** ![SwKaBe](https://avatars.discourse-cdn.com/v4/letter/s/977dab/32.png) [@SwKaBe](https://forum.shopware.com/u/SwKaBe)\
**Post date:** [31. Januar 2013 um 19:20 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/3 "2013-01-31T19:20:23Z")

</div>

Hallo Benjamin, vielen Dank für die schnelle Antwort, leider konnte ich durch die Modifikation von shopware.php das Problem nicht lösen. Auch das testweise Einfügen in: - /engine/Library/Symfony/Component/HttpFoundation/Request.php - /engine/Library/Symfony/Component/HttpFoundation/ServerBag.php - /engine/Library/Zend/Cache/Backend/Xcache.php konnte nicht helfen. Ist es vielleicht eine Idee, in Richtung curl zu forschen? Beste Grüße Karsten

---

<div class="post-metadata">

**Author:** ![Benjamin\_Cremer](https://avatars.discourse-cdn.com/v4/letter/b/a8b319/32.png) [@Benjamin\_Cremer](https://forum.shopware.com/u/Benjamin_Cremer)\
**Post date:** [1. Februar 2013 um 08:32 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/4 "2013-02-01T08:32:55Z")

</div>

Hallo Karsten, über die Client-Seite, also Curl wirst du das Problem nicht lösen können. Für die Verwendung von Apache + mod\_fcgid ist eine [Konfiguration](http://wiki.shopware.de/Shopware-4-API%5C_detail%5C_993%5C_869.html#Getting%5C_Started) auf dem Server notwendig. Viele Grüße, Benjamin Cremer :shopware:

---

<div class="post-metadata">

**Author:** ![SwKaBe](https://avatars.discourse-cdn.com/v4/letter/s/977dab/32.png) [@SwKaBe](https://forum.shopware.com/u/SwKaBe)\
**Post date:** [1. Februar 2013 um 12:11 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/5 "2013-02-01T12:11:14Z")

</div>

Hallo, ich hatte bereits alle im Tutorial beschriebenen Konfigurationsvarianten sowie zusätzlich ‘RewriteRule .\* - [E=HTTP\_AUTHORIZATION:%{HTTP:Authorization}]’ getestet - leider erfolglos. Um sicher zu gehen, dass nicht die Installation betroffen ist, habe ich alle Dateien und DB-Tabellen gelöscht und das ganze Paket neu installiert. Dann wieder alle beschriebenen Serverkonfigurationsvarianten getestet, aber es klappt weiterhin nicht. Aber: Ich kann bestätigen, dass die o.g. RewriteRule greift. Mein php-Testscript konnte auf die damit im Environment vorhandenen Authentifizierungsdaten aus $\_SERVER[‘REDIRECT\_HTTP\_AUTHORIZATION’] lesen und darstellen. Sie sind also da. 🙂 Die Software ist natürlich viel komplexer, deshalb sind meine Möglichkeiten beinahe erschöpft. Schade, die Schnittstelle wäre eine Voraussetzung für das Projekt gewesen. Vielen Dank soweit für die Hilfe! Vielleicht hat jemand noch eine Idee?

---

<div class="post-metadata">

**Author:** ![greyhound](https://avatars.discourse-cdn.com/v4/letter/g/e47774/32.png) [@greyhound](https://forum.shopware.com/u/greyhound)\
**Post date:** [7. März 2013 um 18:40 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/6 "2013-03-07T18:40:49Z")

</div>

Hallo, da ich gerade auf dasselbe Problem gestoßen bin, hier ein Workaround, der bei mir funktioniert: Wie von Benjamin angeregt fügt man in der shopware.php folgendes hinzu: ` if (isset($\_SERVER['REDIRECT\_HTTP\_AUTHORIZATION'])){ $\_SERVER['HTTP\_AUTHORIZATION'] = $\_SERVER['REDIRECT\_HTTP\_AUTHORIZATION']; } ` Wie SwKaBe schon schrieb muss in der .htaccess Datei noch folgende Zeile ergänzt werden (am besten hinter der “RewriteBase” Zeile, egal ob sie auskommentiert ist): `RewriteRule .\* - [E=HTTP\_AUTHORIZATION:%{HTTP:Authorization}]` Das Authentifizierungsmodul verwendet offenbar den HTTP\_AUTHORIZATION Header, den 1&1 aber nach dem Rewrite in der .htaccess Datei offenbar in REDIRECT\_HTTP\_AUTHORIZATION umbenennt. Wenn man den auf diese Weise wieder als HTTP\_AUTHORIZATION verfügbar macht, dann klappt die Authentifizierung. Grüße, Robert

---

<div class="post-metadata">

**Author:** ![zauberschuppen2478](https://avatars.discourse-cdn.com/v4/letter/z/fbc32d/32.png) [@zauberschuppen2478](https://forum.shopware.com/u/zauberschuppen2478)\
**Post date:** [16. Juli 2013 um 21:25 UTC](https://forum.shopware.com/t/rest-api-authentifizierung-mit-redirect-http-authorization/11294/7 "2013-07-16T21:25:28Z")

</div>

Super, genau das habe ich gebraucht :thumbup:
