PDA

Zobacz pełną wersję : Joomla jako ochrona mojego programu



lofix
17-05-2013, 10:03
Cześć
Napisałem w PHP pewien program - panel do zarządzania między innymi nazwiskami i innymi danymi osobowymi. Chcę więc dobrze go zabezpieczyć.
W chwili obecnej panel nie ma jeszcze logowania i trochę boje się pisać autorskie rozwiązaniei tego mechanizmu. Wpadłem na pomysł, że przerobię panel na komponent i zainstaluję go na zapleczu Joomla. Pomyślałem, że powiązując to z instrukcją



defined('_JEXEC') or die;

w każdym pliku, otrzymam dość mocną ochronę panelu.

Baza danych hostowana będzie w Nazwa.pl (musi być w Internecie, bo zasilana jest formularzem ze strony internetowej, na której internauci zapisywać się będą na kursy).

Wpadłem też na pomysł, że może zainstaluję panel na laptopie klienta i uruchamiać go będę wraz z Apache dla Windowsa (np. pakiet MoveAmp).
Ale czy tu ruch SQL nie będzie przypadkiem szedł na zewnętrzny serwer jawnym tekstem?

Pomóżcie mi, jak temat ugryźć, żeby było bezpieczniej.

ugly kid joe
17-05-2013, 13:37
nic z tego nie czaje, jedyny wniosek jaki mam po przeczytaniu tego pytania, to fakt, że z j! chcesz wykorzystać jedynie uwierzytelnienie [?].

to jakiś nonsens. spróbuj z tym - dopisując funkcję kalendarza.

(http://demoadm.nadlabs.co.uk/)http://codecanyon.net/item/ajaxd-php-login-user-management-site-security/

lofix
17-05-2013, 14:34
Tak, planowałem zastosować Joomlę jedynie do uwierzytelnienia i uniemożliwienia uruchomienia skryptu wpisując jego URL (bez logowania).

Po prostu Joomla dobrze znam i mam zaufanie. Myślicie, że to złe rozwiązanie?

ugly kid joe
17-05-2013, 16:30
myślę, że narobiłeś sobie więcej pracy niż to wszystko warte, bo do tego można było użyć po prostu komponentu typu "wydarzenia" i ewentualnie rozbudować zarządzanie rekordami w com_user, albo użyć czegoś podobnego do wskazanego w linku, dodając kalendarz. prawdę mówiąc nie wyobrażam sobie tak rozdmuchanego pakietu uwierzytelniającego jakim jest j!

nadal twierdzę, że to nonsensowny układ, pomimo zaufania jakim obdarowałeś cms, ale w tym wypadku wyważasz otwarte drzwi - jeśli mówimy jedynie o zarządzaniu rekordami na poziomie imienia i nazwiska użytkownika i rekordów w formie wybranego terminu.

i nadal nie rozumiem czemu miałby służyć oddzielny panel instalowany na jakimś zdalnym urządzeniu. takie próby były, aplikacja wymieniała pewien pakiet danych z j! przez protokół xml-rpc, ale skończyło się to fiaskiem projektu. dzisiaj użyłbyś pewnie json-rpc albo soap, ale nadal nie rozumiem po co. do zabezpieczenia admina i dwukrotnego uwierzytelnienia na tym poziomie, służy rs firewall, bez potrzeby tworzenia zdalnych klientów.

być może czegoś nie rozumiem, ale nawet wstępne zapytanie jest skąpe, a ty po prostu dążysz do napisania komponentu. napisałeś dosłowne zero o rolach i interakcji pomiędzy tymi rolami w twoim programie / komponencie.

lofix
17-05-2013, 17:08
Aplikację (panel) musiałem napisać od podstaw, bo klient miał różne widzimisie i szybciej i elastyczniej było napisać wszystko od podstaw.

Aplikacja już działa, ale teraz chcę dodać jakąś ochronę w postaci logowania.

Nie chcę wymieniać danych za pomocą mechanizmów typu SOAP, tylko wymyśliłem, że aplikacja zainstalowana na laptopie wpisane będzie miała w configu adres serwera nazwa.pl i z niego będzie pobierać dane.

Do tego chciałem użyć Joomla jako systemu uwierzytelniającego.

I tu zastanawiam się, czy nie obniżę bezpieczeństwa poprzez lecące jawnym tekstem przez Internet zapytania SQL?

ugly kid joe
17-05-2013, 17:39
a co ci będzie filtrowało po stronie aplikacji zmodyfikowane zapytanie ? ja tego nie widzę. za dużo czynników, które jawią się niebezpiecznymi. zaczynając od twojego klienta - poprzez możliwość przechwycenia takiego zapytania i dowolnej ingerencji w nie. bez sensu.

rzecz w tym, że chcesz chronić własną aplikację - aplikacją [ i jej składnikami ], która w pewnych warunkach także wymaga ochrony np przed sql-injection. uwierzytelnienie ochroni tylko dostęp do wywołania panelu twojej aplikacji. nic więcej, ale ty to wiesz.