Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JSON][VBA][Excel][PHP]Autoryzacja paczki danych JSON
Forum PHP.pl > Forum > Przedszkole
woocash
Mam sobie PC na którym w Excelu ktoś wypełnia arkusz po czym klikając jeden przycisk makro waliduje dane i wysyła w postaci JSON do skryptu PHP.
Jaki byłby najmądrzejszy sposób na autoryzację takiej wysyłki, tak by mieć pewność że dane trafiły do skryptu z prawidłowego komputera i pliku?
Chciałbym zabezpieczyć się przed tym, że wspomniany plik Excela przez pomyłkę zostanie uruchomiony na innym komputerze.
W tej chwili autoryzację opieram na psk zaszytym w vba, wraz z tym że wysyłając dene dodawana jest nazwa komputera z którego idzie wysyłka. Zarówno nazwa i PSK służą do "autoryzacji" po stronie PHP, a sam skrypt VBA jest "zabezpieczony" hasłem na projekt, by nie dało się łatwo psk wyciągnąć. Na pewno dałoby się lepiej - jakieś pomysły? smile.gif
markuz
Zabezpieczenie na IP od strony serwera?
sabat24
Cytat
Chciałbym zabezpieczyć się przed tym, że wspomniany plik Excela przez pomyłkę zostanie uruchomiony na innym komputerze.

Przez pomyłkę raczej nikt nie złamie hasła do projektu, nie wejdzie w kod VBA i nie podejrzy danych autoryzacyjnych, by później uruchomić ten plik pomyłkowo na innym komputerze.
Napisz najlepiej w jakim środowisku to działa, jak dystrybuujesz i przed czym realnie chcesz się uchronić.
Tworzenie historii, która ma uprościć i wyjaśnić rozwiązanie, tylko je gmatwa.

Moim zdaniem od strony makra wystarcza w zupełności taki sposób, gdyż tak się zawsze łączysz z REST API. Możesz użyć specjalego klucza, który będzie kodował przy pomocy unikalnej soli dane komputera, które są Ci znane i możesz je pobrać z makra i sprawdzać, czy klucz się zgadza. Nawet jak ktoś przeniesie makro na inną maszynę, to wykryje to niezgodność klucza. Można też przez basic authentication. Możesz też prosić o login i hasło w samym makrze i zastosować ciasteczka robiąc normalne logowanie jakby to była przeglądarka i dopiero wtedy uruchamiać główne makro, które coś robi.
woocash
Doceniam wnikliwość ale model „ataku” jest dokładnie taki jak opisałem. Dzięki za odpowiedź, zgodnie z Twoją radą dodam do danych autoryzacyjnych oprócz nazwy komputera jeszcze kilka innych danych, posolę i zahaszuję.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.