Skocz do zawartości


Informacje o zgłoszeniu

  • #006600

  • Zatwierdzono

  • 3.0.1.23

  • -

  • 4 - wysoka

Potwierdzenia zgłoszenia

  • Tak (1)Nie (0)
Zdjęcie

Rejestracja konta XMPP - brak informowania użytkownika o kodach błędu

Napisane przez Beherit w 2015.06.08, 19:24

AQQ nie informuje szczegółowo użytkownika o błędach, które nie ma dodanych w kodzie. Przecież wystarczy zrobić dodatkowe "else" i wypluwać treść błędu od serwera. Tym sposobem, gdy serwer wymaga np. wpisanie mocniejszego hasła to AQQ informuje o głupotach. Pakiet błędu (w wersji ENG ale dla PL leci odpowiedni komunikat od serwera):
 

 <error code='406' type='modify'>
    <not-acceptable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
    <text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>The password is too weak</text>
  </error>

 
Czyli chcesz zrobić dobry serwer to dla AQQ musisz zgłaszać błędy, aby dodatkowe regułki zostały stworzone w parserze XML. Masakra.


A i to samo przy zmianie hasła przy już stworzonym koncie jak serwer ma narzuconą siłę hasła:

<iq from='ejab.pl' to='dupa@ejab.pl/AQQ' id='session18' type='error'>
  <query xmlns='jabber:iq:register'>
    <username>dupa</username>
    <password>dupa</password>
  </query>
  <error code='406' type='modify'>
    <not-acceptable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
    <text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>The password is too weak</text>
  </error>
</iq>

Oczywiście AQQ zmieniło hasło w ustawieniach i radź sobie użytkowniku sam z tym, że AQQ nie obsługuje komunikatów błędu xD A przecież kod błędu 406 mówi jasno o tym, że akcja została zablokowana.



zmienił naprawione w na: 3.0.1.21
zmienił status na: Do sprawdzenia

Ciężko to przetestować bo najwyraźniej wyłączyłeś to po stronie serwera ale dodałem kilka zmian na ślepo. Mama nadzieję, że będą funkcjonować prawidłowo.



Nie wyłączyłem tego, bo nie włączałem w ogóle z uwagi na ten błąd. To chyba oczywiste.



zmienił status na: Zatwierdzono
zmienił wersja na: 3.0.1.21
zmienił naprawione w na: brak wersji

Nadal nie naprawione. Kolejna rzecz, która jest olana:
 
<error code='500' type='wait'>
  <resource-constraint xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
  <text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Users are not allowed to register accounts so quickly</text>
</error>
AQQ wypluwa informacje, że nie obsługuje informacji z serwera zaś serwer jasno przesyła info, że user przekroczył limit rejestracji i musi chwilę odczekać. Wydaje mi się, że nie ogarniasz tego, że wklejam tylko fragment pakietu :P Pełen wygląda tak:

<iq from='xxx.pl' id='session3' type='error'>
  <query xmlns='jabber:iq:register'>
    <x xmlns='jabber:x:data' type='submit'>
      <field var='FORM_TYPE'>
        <value>urn:xmpp:captcha</value>
      </field>
      <field var='username'>
        <value>yolo</value>
      </field>
      <field var='password'>
        <value>test</value>
      </field>
      <field var='from'>
        <value>xxx.pl</value>
      </field>
      <field var='challenge'>
        <value>998707143</value>
      </field>
      <field var='sid'>
        <value>session2</value>
      </field>
      <field var='ocr'>
        <value>879959</value>
      </field>
    </x>
  </query>
  <error code='406' type='modify'>
    <not-acceptable xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
    <text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>The password is too weak</text>
  </error>
</iq>


zmienił wersja na: 3.0.1.23
zmienił status na: Do sprawdzenia

Z tego co widzę błąd 500 jest obsługiwany. Nie jest natomiast 406.



Nie ogarniam czemu dałeś status "do sprawdzenia" skoro nic nie zostało kompletnie naprawione. Nadal nie są obsługiwane błędy: 500, 403, 406. Przy błędzie 500 po prostu pojawia się nieadekwatny komunikat do zwracanego błędu. Przy błędzie 406 (i pozostałych też w sumie) powinna iść informacja jaką zwraca serwer czyli w tym wypadku zbyt słabe hasło.

zmienił status na: Zatwierdzono





Użytkownicy przeglądający to zgłoszenie: 0

0 użytkowników, 0 gości, 0 anonimowych