mediaprojectmediaproject MemberComments: 3 Received thanks: 0 Member since: March 2013 edited September 2013
ESD Artikel lassen sich auch ohne Login und ohne Berechtigung downloaden, wenn man den Namen des Verzeichnisses kennt.

Angeblich soll der Download-Ordner (ESD-Key) ja auch htaccess-geschützt sein. Ich kann aber dort auch keine htaccess-Datei finden.

Comments

  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Guten Morgen, habe auch diese Problematik :shock:

    Hoffentlich weiss wer Abhilfe.
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Sodale, ich habe den Bereich jetzt zusätzlich Passwortgeschütz.
    Mit einer .htaccess und einer .htpasswd

    .htaccess
    AuthType Basic
    AuthName "Passwortgeschützter Bereich"
    AuthUserFile /htdocs/files/OrdnerName/.htpasswd
    
    .htpasswd
    benutzer:passwort
    
    Wäre schön wenn Shopware hier eine elegantere Lösung finden würde.

    Liebe Grüße

    Michael
  • mediaprojectmediaproject MemberComments: 3 Received thanks: 0 Member since: March 2013
    Wenn ich das richtig verstehe, wird bei der Lösung aber dann nicht überprüft, ob der Anwender die Berechtigung hat, die Datei herunterzuladen. Er benötigt nur einen Account und kann sich dann mit diesem Zugriff auf alle Dateien in dem Verzeichnis verschaffen?
  • mediaprojectmediaproject MemberComments: 3 Received thanks: 0 Member since: March 2013
    Ein weiteres Problem im Zusammenhang mit ESD-Artikeln:

    ESD-Artikel werden auch in den verfügbaren Downloads (im Kunden-Account) aufgeführt, wenn z.B. die Zahlung (über Paypal) scheitert oder Vorkasse als Zahlungsart zur Verfügung steht und ausgewählt wird, die Zahlung aber noch gar nicht erfolgt ist.

    Normalerweise sollte der Zugriff auf die Datei doch erst möglich sein, wenn die Zahlung erfolgt ist. Physikalische Artikel werden ja bei Vorkasse auch erst versendet, wenn die Zahlung eingegangen ist.

    Schade, aber für einen Shop mit digitalen Gütern scheint Shopware überhaupt nicht geeignet zu sein, wenn es als so modernes und innovatives Shopsystem nichtmals die Grundfunktionen für einen solchen Download-Shop erfüllt. Von anderen wichtigen Funktionen, die bei den meisten anderen Systemen Basis sind (z.B. Limitierung der Anzahl der Downloads, Limitierung der zeitlichen Verfügbarkeit, ...).

    Schade, denn damit scheint sich Shopware auch für ein geplantes, relativ großes Projekt zu disqualifizieren. Aufgrund der vielen anderen Vorteile war die Entscheidung für Shopware eigentlich schon so gut wie gefallen.

    Oder besteht die Chance, dass man die o.g. Probleme in den Griff bekommt und weitere, eigentlich essentielle Features kurzfristig integriert?
  • Patrick SchückerPatrick Schücker AdministratorsComments: 947 Received thanks: 171 Member since: April 2012
    Guten Morgen,

    könnt ihr mir konkrete Beispiele geben wie es unberechtigterweise möglich ist Dateien zu laden, außer die die man gekauft hat? Uns ist natürlich auch sehr daran gelegen solche Dinge schnell zu klären. Kannst mir auch gerne eine PM schicken.

    Wichtig, dass ihr die aktuelle Version nutzt. Der RC zur 4.0.7 ist hier zu finden: http://wiki.shopware.de/_detail_1082.html


    Mit Shopware 4.2 soll es einige neue Funktionen für ESD Artikel geben.


    Gruß
    Patrick
    Thanked by 1vgraebel
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Guten Morgen Herr Schücker, ich habe keine RC4.0.7 installiert, werde das auch erst tun wenn die Release freigegeben ist.

    Beispiel 1:
    Kunde bestellt einen Downloadartikel und zahlt mit Vorkasse
    Dann kann der Kunde obwohl er noch gar nicht gezahlt hat in "Mein Konto" den Download sofort starten

    Beispiel 2:
    Kunde bestellt einen Downloadartikel und zahlt mit Paypal
    Wenn Zahlung aus welchen Gründen nicht funktioniert - siehe Beispiel 1

    Beispiel 3:
    Ein Kunde bezahlt, alles OK. Aber der Downloadlink steht dem Kunden dann immer zur Verfügung und kann somit anderen Leuten diesen Link zur Verfügung stellen. Zusätzlich könnte er probieren wenn er andere Produktnamen im Downloadlink probiert auch andere Artikeln downzuloaden.

    Es wäre toll wenn die angedachten Änderungen als "Bugfix" in absehbarer Zeit kommen würden, denn die Version 4.2 wird sicher erst mit Ende 2013 kommen.

    Liebe Grüße

    Michael
  • Patrick SchückerPatrick Schücker AdministratorsComments: 947 Received thanks: 171 Member since: April 2012
    Hallo Michael,

    Beispiel 1:
    Stimmt. Daher ist Vorkasse auch im Standard nicht für ESD freigegeben.

    Beispiel 2:
    Ist denkbar. Ich werde mir dieses Verhalten mal anschauen.

    Beispiel 3:
    Ist in RC 4.0.7 gefixt. Dieser Fix wird natürlich auch in der finalen 4.0.7 vorhanden sein.

    Gruß
    Patrick
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Hallo Patrick,
    Vorkasse ist im Standard freigegeben.

    Liebe Grüße

    Michael
  • Patrick SchückerPatrick Schücker AdministratorsComments: 947 Received thanks: 171 Member since: April 2012
    Hi,

    also bei Vorkasse ist kein Haken bei "Aktiv für ESD-Produkte" gesetzt. Erst wenn dieses Feld aktiv ist, können ESD Produkte mit Vorkasse bezahlt werden. Dies sollte natürlich nicht aktiviert werden. Auch direkt nach einer Shopware Installation ist dies nicht aktiv.

    Gruß
    Patrick
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Hallo, also wenn das Feld schon da ist, naja..... aber ist halt so.
    Liebe Grüße
    Michael

    P.S.: wäre trotzdem toll wenn man Shopware 4 auch für ESD Downloads verwenden könnte (so wie es gehört), denn Shopware ist ein tolles Produkt!
  • Patrick SchückerPatrick Schücker AdministratorsComments: 947 Received thanks: 171 Member since: April 2012
    Hi,

    klar...Shopware ist halt gut ;-)

    Probiere doch mal in einer Testinstallation die RC 4.0.7

    Kannst du mir noch ein paar Infos zum Paypal Abbruch geben? Wann genau ist das Problem bei dir aufgetreten?

    Gruß
    Patrick
  • billyb52billyb52 MemberComments: 219 Received thanks: 31 Member since: March 2013
    Hello,

    siehe auch Beitrag von mediaproject:
    Ein weiteres Problem im Zusammenhang mit ESD-Artikeln:
    
    ESD-Artikel werden auch in den verfügbaren Downloads (im Kunden-Account) aufgeführt, wenn z.B. die Zahlung (über Paypal) scheitert oder Vorkasse als Zahlungsart zur Verfügung steht und ausgewählt wird, die Zahlung aber noch gar nicht erfolgt ist.
    
    Normalerweise sollte der Zugriff auf die Datei doch erst möglich sein, wenn die Zahlung erfolgt ist. Physikalische Artikel werden ja bei Vorkasse auch erst versendet, wenn die Zahlung eingegangen ist.
    
    Schade, aber für einen Shop mit digitalen Gütern scheint Shopware überhaupt nicht geeignet zu sein, wenn es als so modernes und innovatives Shopsystem nichtmals die Grundfunktionen für einen solchen Download-Shop erfüllt. Von anderen wichtigen Funktionen, die bei den meisten anderen Systemen Basis sind (z.B. Limitierung der Anzahl der Downloads, Limitierung der zeitlichen Verfügbarkeit, ...).
    
    Schade, denn damit scheint sich Shopware auch für ein geplantes, relativ großes Projekt zu disqualifizieren. Aufgrund der vielen anderen Vorteile war die Entscheidung für Shopware eigentlich schon so gut wie gefallen.
    
    Oder besteht die Chance, dass man die o.g. Probleme in den Griff bekommt und weitere, eigentlich essentielle Features kurzfristig integriert?
    
    Ich warte auf die Final 4.0.7, wird denke ich bald kommen.
    Thanked by 1vgraebel
  • sooksook MemberComments: 6 Received thanks: 1 Member since: April 2013
    Das Problem haben wir auch. Nicht jeder möchte mit Paypal zahlen und deshalb sollte es mit anderen Zahlungsarten auch gehen. Ich habe mir ersteinmal damit beholfen einen dreckigen "Hack" im Core zu machen:

    Version: 4.0.7 CE
    Datei: /engine/Shopware/Controllers/Frontend/Account.php
    Zeile: 607
    $sql = '
                SELECT file, articleID
                FROM s_articles_esd ae, s_order_esd oe
                WHERE ae.id=oe.esdID
                AND oe.userID=?
                AND oe.orderdetailsID=?
            ';
            $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
    
            if(empty($download))
            {
                $sql = '
                    SELECT e.file, ad.articleID
                    FROM s_articles_esd e, s_order_details od, s_articles_details ad, s_order o
                    WHERE e.articledetailsID=ad.id
                    AND ad.ordernumber=od.articleordernumber
                    AND o.id=od.orderID
                    AND o.userID=?
                    AND od.id=?
                ';
                $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
            }
    
    das habe ich erstmal geändert in:
    /*      $sql = '
                SELECT file, articleID
                FROM s_articles_esd ae, s_order_esd oe
                WHERE ae.id=oe.esdID
                AND oe.userID=?
                AND oe.orderdetailsID=?
            ';
            $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
    */
            $download ='';
            if(empty($download))
            {
                $sql = '
                    SELECT e.file, ad.articleID
                    FROM s_articles_esd e, s_order_details od, s_articles_details ad, s_order o
                    WHERE e.articledetailsID=ad.id
                    AND ad.ordernumber=od.articleordernumber
                    AND o.id=od.orderID
                    AND o.userID=?
                    AND od.id=?
                    AND o.cleared=?
                ';
                $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID, 12));
            }
    
    Somit kann man zwar den Download Button anklicken, bekommt nur dann die Meldung, dass der Download nicht zur Verfügung steht. Nur wenn der cleared Status = 12 ist, dann klappt der Download. Die 12 steht für Komplett bezahlt. Wenn jemand mit PayPal zahlt wird sofort auf diesen Status gesetzt. Ansonsten muss man das händisch machen, genau das was ich wollte. Ich denke das geht so in Ordnung, allerdings bin ich kein Fachmann für den Shop.
    Thanked by 1WOLLkenSchaf
  • michi5588michi5588 MemberComments: 12 Received thanks: 0 Member since: June 2013
    Hallo Patrick,

    gibt es Neuigkeiten zu

    Beispiel 2:
    Ist denkbar. Ich werde mir dieses Verhalten mal anschauen.


    Hatte heute einen identischen Fall (Lastschrift über Skrill gescheitert), trotzdem Bestätigung, Rechnung, AGB, Download raus...offensichtlich keinerlei Verlinkung über erfolgreiche/gescheiterte Zahlungen Shopware/Zahlungsanbieter).

    Ich sehe die Sache höchst kritisch. Streng genommen kann auf diese Weise als GAU das gesamte Portfolio kostenfrei heruntergeladen werden. Bitte daher um kurzfristige Lösung mit absoluter TOP-Prio. Man sollte alles daran setzen, das Problem zu beheben, bevor die Schwachstelle auf Kundenseite die Runde macht...
  • michi5588michi5588 MemberComments: 12 Received thanks: 0 Member since: June 2013
    Hallo Patrick,

    ...und der nächste doppelte Auftrag. Lt. Auskunft des Kunden ist die erste Zahlung (diesmal PayPal) gescheitert. Trotzdem ging die Bestellung hier doppelt ein. Ich habe nun vorerst alle Sofortdownload Optionen herausgenommen. Der Anteil der auf Anhieb erfolgreichen Zahlungen liegt bei mir im Moment bei maximal 30%. Wie bereits beschrieben wird die Ware (Download) trotzdem immer freigegeben.

    Welche Maßnahmen sind bzgl. eines stabilen Zahlungsprozesses durchzuführen?

    Wie kann die pauschale Downloadfreigabe seitens Shopware im Falle nicht erfolgreicher Zahlungen gestoppt werden?
  • michi5588michi5588 MemberComments: 12 Received thanks: 0 Member since: June 2013
    Noch ein Zusatz, den ich vergessen hatte: in manchen Fällen läuft die Bestellung so ab, dass nach der Bestätigung "Zahlungspflichtig bestellen" nicht einmal eine Weiterleitung zum Payment-Anbieter erfolgt und der Kunde direkt zum Download gelangt (immer dann wenn die Bestellung als Gast durchgeführt wird). Nun habe ich es selbst getestet und in einigen Fällen muss ich das leider bestätigen.

    Grüße,

    M. Mohr
  • vgraebelvgraebel MemberComments: 1 Received thanks: 0 Member since: May 2013
    Ich habe den hier beschriebenen Effekt auch. Und zwar bei der Bezahlung über PayPal:
    (Ich denke, dass es egal ist, bei welcher Bezahlmethode; entscheidend ist bei diesem Effekt, dass der "Käufer" den Bezahlvorgang genau an der Schnittstelle zum Bezahl-Dienst abrupt abgebrochen hat. Da entstehen wohl Daten, die nicht gecachet sein dürfen, aber von ShopWare dennoch gecachet sind.)

    Der Prozess:
    Der "Käufer" loggt sich ein, geht mit den Warenkorb an die Kasse, wird an die PayPal-Anbindung zur Bezahlung weiter-geleitet, überlegt es sich dann aber und bricht den Kaufvorgang ab. Wenn er wieder in seinen Account meines Download-Shops zurückgeht, kann er unter "Meine Downloads" den gerade eben nicht gekauften Artikel trotzdem bequem öffnen und downloaden.

    Da es bereits einige User mit ESD-Problemen hier gibt, die das Problem ausführlich und glaubwürdig beschreiben, wäre es schön, wenn sich ShoppWare dieses Bugs annimmt.

    Eine Lösung ist essentiell, sonst kann man nicht ernsthaft mit diesem Shop on air gehen, danke! Ich hoffe, ich habe hiermit die Dringlichkeit nachvollziehbar beschrieben. :-)

    Grüße an alle
  • Z3PPZ3PP MemberComments: 181 Received thanks: 18 Member since: May 2013
    sook wrote:
    Das Problem haben wir auch. Nicht jeder möchte mit Paypal zahlen und deshalb sollte es mit anderen Zahlungsarten auch gehen. Ich habe mir ersteinmal damit beholfen einen dreckigen "Hack" im Core zu machen:

    Version: 4.0.7 CE
    Datei: /engine/Shopware/Controllers/Frontend/Account.php
    Zeile: 607
    $sql = '
                SELECT file, articleID
                FROM s_articles_esd ae, s_order_esd oe
                WHERE ae.id=oe.esdID
                AND oe.userID=?
                AND oe.orderdetailsID=?
            ';
            $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
    
            if(empty($download))
            {
                $sql = '
                    SELECT e.file, ad.articleID
                    FROM s_articles_esd e, s_order_details od, s_articles_details ad, s_order o
                    WHERE e.articledetailsID=ad.id
                    AND ad.ordernumber=od.articleordernumber
                    AND o.id=od.orderID
                    AND o.userID=?
                    AND od.id=?
                ';
                $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
            }
    
    das habe ich erstmal geändert in:
    /*      $sql = '
                SELECT file, articleID
                FROM s_articles_esd ae, s_order_esd oe
                WHERE ae.id=oe.esdID
                AND oe.userID=?
                AND oe.orderdetailsID=?
            ';
            $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID));
    */
            $download ='';
            if(empty($download))
            {
                $sql = '
                    SELECT e.file, ad.articleID
                    FROM s_articles_esd e, s_order_details od, s_articles_details ad, s_order o
                    WHERE e.articledetailsID=ad.id
                    AND ad.ordernumber=od.articleordernumber
                    AND o.id=od.orderID
                    AND o.userID=?
                    AND od.id=?
                    AND o.cleared=?
                ';
                $download = Shopware()->Db()->fetchRow($sql, array(Shopware()->Session()->sUserId, $esdID, 12));
            }
    
    Somit kann man zwar den Download Button anklicken, bekommt nur dann die Meldung, dass der Download nicht zur Verfügung steht. Nur wenn der cleared Status = 12 ist, dann klappt der Download. Die 12 steht für Komplett bezahlt. Wenn jemand mit PayPal zahlt wird sofort auf diesen Status gesetzt. Ansonsten muss man das händisch machen, genau das was ich wollte. Ich denke das geht so in Ordnung, allerdings bin ich kein Fachmann für den Shop.
    Zählt denn dieser "Hack" auch für Shopware 4.1 oder ist es da anders oder bereits integriert...?

    Grüße,
  • sooksook MemberComments: 6 Received thanks: 1 Member since: April 2013
    Z3PP wrote:
    Zählt denn dieser "Hack" auch für Shopware 4.1 oder ist es da anders oder bereits integriert...?

    Grüße,
    Wir haben noch die 4.0.8 am laufen, haben es also noch nicht getestet.

    Ob der Fehler behoben ist sollte jemand vom Team wohl am besten beantworten können. Von Vorteil wäre es zumindest...
  • SebastianKlöpperSebastianKlöpper AdministratorsComments: 7197 Received thanks: 1683 Member since: June 2010
    Hallo,

    die Anpassung, habe ich jetzt nicht geprüft, sollte aber in 4.1 genau so problemlos integrierbar sein.

    Wir haben dazu ein Ticket vorliegen und werden voraussichtlich eine Anpassung bei 4.1.2 vornehmen. Das Ticket könnt ihr aber auch hier einsehen
    http://jira.shopware.de/?ticket=SW-6537

    Sollte es bereits, außer die Lösung hier im Forum, eine Lösung von uns geben, so könnt ihr das auch im Ticket einsehen.

    Sebastian
  • WOLLkenSchafWOLLkenSchaf MemberComments: 90 Received thanks: 5 Member since: August 2012
    Hallo,

    hatten den "Hack" schon bei 4.0.8 benutzt und mussten ihn nach dem Update auf 4.1 wieder einarbeiten, läuft genauso wie vorher ... also kein Problem diese Anleitung auch für 4.1 zu nutzen bis bei 4.1.2 hoffentlich dann der langersehnte Fix kommt. :)
  • michi5588michi5588 MemberComments: 12 Received thanks: 0 Member since: June 2013
    Guten Tag,

    ich musste gerade feststellen, dass das Ticket bei "normalem" Zugriff über Menü nicht mehr im Issue-Tracker angezeigt wird.

    Kann mir jemand sagen, warum es herausgenommen wurde?

    Bitte um Mitteilung, ob das Thema noch weiterverfolgt wird und wann das Problem gelöst ist.

    Danke und Grüße,

    Michael
  • Patrick SchückerPatrick Schücker AdministratorsComments: 947 Received thanks: 171 Member since: April 2012
    Hallo Michael,

    du kannst das Ticket aber noch über den Link finden. Der Fix wird mit der 4.1.3 kommen.
    Da das Ticket resolved ist wird es in den Standard Filter Einstellungen nicht mehr angezeigt. Du kannst aber den Filter um resolved erweitern, oder den Link verwenden.

    Gruß
    Patrick Schücker
Sign In or Register to comment.