![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 23.07.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich.
Zaczynam pracę nad projektowaniem i pisaniem pewnej aplikacji w modelu saas gdzie przewiduję takie mniej więcej elementy: - panel admin najwyższego rzędu gdzie będą zakładane/generowane konta klientów w skład których będa wchodzić poniższe części: - panel admin (klienta) dla zarządzania bazą użytkowników, przydzielaniem usług, definiowaniem usług itp (wszystko w ramach jednego klienta) - panel usera do zarządzania i do-konfigurowania przez usera założonego na poziomie wyżej - strona usera do prezentacji treści usera (np konkretnych usług oferowanych przez usera-klienta) Przykładem może tu być aplikacja do zarządzania hurtowniami gdzie zakładamy konta np dla Hurtowni 1, Hurtowni 2 itpp. W nich tworzeni są konta dla pracowników do zarządzania ofertą itp. Zastanawiam się tutaj nad 3 możliwościami: 1. Tworzyć wszystko na jednym adresie, jednej bazie danych (jeden handler dla wszystkich kont) i ograniczać dostęp do poszczególnych danych odpowiednio implementując system autoryzacji itp 2. Tworzyć wszystko na jednym adresie , ale każdy klient będzie na osobnej bazie danych separując tym samym dane jednego klienta od drugiego (istotne w razie włamu) 3. Tworzyć osobną aplikację do admina adminów np na innym adresie (gdzie będą zakładani Ci duzi klienci, np hurtownie), oraz osobną dla klientów (tutaj to samo jak wyżej albo na jednej bazie wszyscy klienci albo każdy na osobnej) Podział na osobne bazy danych rodzi tylko więcej roboty z zakładaniem kont (jakiś manager handlerów do DB). Z założenia nie będzie tam dziur ale moje rozważania wynikają głównie z obawy że podczas włamu atakujący dostanie dostęp do wszystkich klientów, podczas gdy gdyby każdy klient był na osobnej bazie szkody mogą zostać ograniczone. Co o tym sądzicie? Które rozwiązanie wg Was jest lepsze i dlaczego lub dlaczego nie? Inne rozwiązanie? pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 23.07.2013 Ostrzeżenie: (0%) ![]() ![]() |
ok, dzięki za sugestie
pozdrawiam Każdy klient na osobnej bazie?!? WTF? Co to za abstrakcja? Ile chcesz mieć tych baz? 10 tysięcy, 100. tys., milion? (IMG:style_emoticons/default/wink.gif) Narobiłem się w życiu różnych SaaSów, kolejne w produkcji ale na szczęście nikomu z kim pracowałem nie przyszedł pomysł na setki tysięcy osobnych baz (IMG:style_emoticons/default/wink.gif) A gdzie napisałem że tych klientów będzie nawet 10tyś? Charakter aplikacji i grupa docelowa zakłada że takich instancji powstać może maksymalnie kilkadziesiąt może kilkaset (życzyłbym sobie tego by było więcej). Klienta utożsamiam z taką wirtualną aplikacją, coś jak są tworzone wirtualne sklepy itp. Generalnie chodzi o to że można by instalować za każdym razem dla każdego klienta aplikację na osobnym serwerze u klienta, osobnej domenie, ale wolałbym mieć to scentralizowane - łatwość zarządzania, update'y, aktualizacja samego bazowego systemu (a nie że ktoś sobie zażyczy instalacje na serwerze nieaktualizowanym itp) - a także dlatego by jednak do kodu źródłowego był ograniczony dostęp przed potencjalnymi "szperaczami" lub co gorsza "konkurencją". |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 01:26 |