Dokumentacja dla programistów›Budowa aplikacji›Najlepsze praktyki dotyczące architektury wielodzierżawnej
Dokumentacja dla programistów

Najlepsze praktyki dotyczące architektury wielodzierżawnej

Budowa aplikacjiAplikacje monday.com
Aktualizacja 2025-10-23

Jako deweloper aplikacji monday ten artykuł pomoże Ci zrozumieć, jak monday.com wdraża architekturę wielodzierżawną i jaki ma ona wpływ na projektowanie aplikacji.

Kto powinien przeczytać ten artykuł?

Przeczytaj ten poradnik, jeśli:

  • Twoja aplikacja przechowuje dane użytkowników
  • Twoja aplikacja musi weryfikować przechowywane dane użytkowników na podstawie aktualnych danych użytkowników w monday.com
  • Twoja aplikacja przechowuje klucze API, aby wykonywać działania w imieniu użytkowników monday.com

Dlaczego te najlepsze praktyki są ważne?

Jako deweloper aplikacji dostępnych w marketplace monday ważne jest, aby rozumieć, wdrażać i przestrzegać praktyk bezpieczeństwa chroniących dane użytkowników.

Przechowywanie danych użytkowników w bazie danych może skrócić czas wykonywania zapytań, a w konsekwencji przyspieszyć ładowanie aplikacji. Musisz jednak stosować najlepsze praktyki, aby nie ujawnić tych danych i nie naruszyć ich bezpieczeństwa.

Jeśli na przykład przechowujesz dane użytkowników pod nieunikalnymi kluczami, takimi jak identyfikatory tablic, Twoja aplikacja może udostępnić je niewłaściwym osobom. Zawsze przechowuj dane pod kluczami, które są unikalne w obrębie wszystkich kont monday.com, takimi jak identyfikatory kont i użytkowników.

Wprowadzenie do architektury wielodzierżawnej

Czym jest architektura wielodzierżawna?

Architektura wielodzierżawna, nazywana również hostingiem współdzielonym, to rodzaj architektury oprogramowania, w której jedna platforma (w tym przypadku monday.com) obsługuje wiele niezależnych instancji lub dzierżawców.

Architektura wielodzierżawna jest ważna, ponieważ dzieli użytkowników monday.com na odrębne grupy. Te grupy mogą podlegać różnym standardom ochrony danych.

Jeśli przechowujesz dane z wielu kont monday.com w jednej bazie danych, Twoja aplikacja korzysta z architektury wielodzierżawnej.

Kiedy warto używać bazy danych?

Korzystanie z bazy danych w aplikacji może nie tylko skrócić czas ładowania, ale też zapewnić użytkownikom bardziej płynną obsługę.

Baza danych może się przydać między innymi do przechowywania tokenów autoryzacyjnych użytkowników, ustawień instancji aplikacji dla konkretnego konta monday.com oraz danych kont użytkowników.

Bazy danych pozwalają szybko i łatwo zapisywać oraz przeszukiwać dane. Mogą pomóc w szybkim i wydajnym wyszukiwaniu, uzyskiwaniu dostępu do danych oraz ich wyświetlaniu - niezależnie od tego, czy chodzi o widok tablicy, widok elementu czy przepis integracji.

Co architektura wielodzierżawna oznacza dla Ciebie?

Jako deweloper korzystający z platformy monday apps pamiętaj o tym, jak przechowujesz dane, oraz o unikalności kluczy i identyfikatorów monday.com.

Jest to szczególnie ważne, jeśli chcesz przechowywać informacje o wielu użytkownikach i kontach w tej samej bazie danych. W przeciwnym razie użycie nieunikalnego klucza (czyli dowolnego identyfikatora innego niż identyfikator konta lub użytkownika) może naruszyć bezpieczeństwo danych.

Jeśli na przykład przechowujesz tylko identyfikatory elementów, różne tablice na tym samym koncie mogą zawierać elementy o tych samych identyfikatorach. Możesz przez to udostępnić dane elementów między tablicami i narazić je na niebezpieczeństwo!

❗️ WAŻNE

Tylko identyfikatory użytkowników i identyfikatory kont są unikalne w obrębie całej platformy. Dlatego używaj wyłącznie identyfikatorów użytkowników i kont jako kluczy głównych.

Pozostałe identyfikatory monday.com są unikalne tylko w określonych kontekstach.

Najlepsze praktyki

Oto kilka wskazówek, które pomogą Ci wdrożyć architekturę wielodzierżawną w aplikacjach oraz zadbać o bezpieczeństwo danych i prywatność użytkowników.

Zasada nr 1: Używaj identyfikatora konta i identyfikatora użytkownika do identyfikowania wszystkich informacji dotyczących kont i użytkowników.

Upewnij się, że każdy zapisany klucz jest powiązany zarówno z identyfikatorem konta, jak i identyfikatorem użytkownika. Jeśli na przykład zapisujesz w bazie danych identyfikator automatyzacji lub tablicy, powiąż go również z identyfikatorem konta lub użytkownika.

Dzięki temu, jeśli w bazie danych będzie kilka automatyzacji lub tablic o tym samym identyfikatorze, możesz je rozróżnić za pomocą odpowiednich identyfikatorów kont i użytkowników.

Zasada nr 2: Uwzględnij zakres unikalności identyfikatorów i kluczy używanych przez aplikację

Zanim zdecydujesz, które klucze przechowywać w bazie danych, sprawdź, w jakim zakresie są unikalne. Na przykład identyfikator kolumny jest unikalny w obrębie tablicy, ale może też występować na innej tablicy tego samego konta.

Czy używasz identyfikatorów tablic jako głównych kluczy? Jeśli tak, istnieje ryzyko, że różne konta będą miały tablice o tym samym identyfikatorze. W takim przypadku możesz udostępnić dane tablic między kontami.

Zawsze przechowuj identyfikatory kont i użytkowników jako klucze główne!

Zasada nr 3: Nie zakładaj, że identyfikatory tablic i elementów są unikalne

Każdy element na tablicy monday.com ma identyfikator unikalny w obrębie konta. Te identyfikatory nie muszą być jednak unikalne na innych kontach monday.com (czyli dwa różne konta mogą mieć tablice o tych samych identyfikatorach).

Nawet jeśli wyszukujesz dane na podstawie identyfikatora elementu, zawsze sprawdź powiązane z nim identyfikator użytkownika i identyfikator konta. Dzięki temu upewnisz się, że korzystasz z właściwych informacji.

Zasada nr 4: Zabezpiecz dostęp do bazy danych przed naruszeniem separacji dzierżawców

Każdy dostęp do bazy danych powinien domyślnie uwzględniać zabezpieczenia architektury wielodzierżawnej. Dzięki temu aplikacja zapewnia dostęp do właściwych danych użytkownika we właściwym kontekście. W większości języków programowania dostępne są pakiety, które mogą wdrożyć takie zabezpieczenia bazy danych.

Przykładem przydatnego narzędzia jest ORM Sequelize dla Node.js. Więcej informacji o wdrażaniu zakresów Sequelize znajdziesz tutaj.

Jeśli szukasz dodatkowych informacji o wdrażaniu architektury wielodzierżawnej w aplikacjach, pomocne mogą być te materiały:

Tabela identyfikatorów i zakresów ich unikalności

Poniższa tabela zawiera identyfikatory monday.com, które można znaleźć na koncie, oraz konteksty, w których są unikalne. Pamiętaj, że lista nie jest wyczerpująca i może się zmienić.

Identyfikator Opis Gdzie jest unikalny?
Identyfikator konta Identyfikator konta. Unikalny w obrębie wszystkich kont monday.com.
UUID akcji UUID wykonania bloku. Unikalny dla każdej akcji w każdej automatyzacji.
Identyfikator aplikacji Identyfikator konkretnej aplikacji. Unikalny w obrębie konta. Identyfikatory aplikacji mogą się powtarzać na różnych kontach.
Identyfikator automatyzacji Identyfikator automatyzacji. Unikalny w obrębie konta. Identyfikatory automatyzacji mogą się powtarzać na różnych kontach.
Identyfikator tablicy Identyfikator tablicy na koncie. Unikalny w obrębie konta. Identyfikatory tablic mogą się powtarzać na różnych kontach.
Identyfikator widoku tablicy Identyfikator widoku tablicy. Unikalny w obrębie konta. Identyfikatory widoków tablic mogą się powtarzać na różnych kontach.
Identyfikator kolumny Identyfikator kolumny na tablicy. Unikalny w obrębie tablicy. Identyfikatory kolumn mogą się powtarzać na wielu tablicach tego samego konta.
Identyfikator grupy Identyfikator grupy na tablicy. Unikalny w obrębie tablicy. Identyfikatory grup mogą się powtarzać na wielu tablicach tego samego konta.
Identyfikator integracji Identyfikator integracji. Unikalny w obrębie konta. Identyfikatory integracji mogą się powtarzać na różnych kontach.
Identyfikator elementu Identyfikator elementu na tablicy. Unikalny w obrębie konta. Identyfikatory elementów mogą się powtarzać na różnych kontach.
UUID wyzwalacza UUID wykonania automatyzacji. Unikalny dla każdego uruchomienia automatyzacji. Jeśli w przepisie ta sama akcja jest używana kilka razy, wszystkie jej wystąpienia mają ten sam UUID wyzwalacza.
Identyfikator użytkownika Identyfikator konkretnego użytkownika. Unikalny w obrębie wszystkich kont monday.com. Jeśli ktoś ma kilka kont, jego identyfikator użytkownika będzie inny dla każdego z nich.


📘 Dołącz do naszej społeczności deweloperów!

Stworzyliśmy społeczność dla deweloperów. Możesz przeszukiwać wcześniejsze tematy, by znaleźć rozwiązania, zadawać pytania, poznawać nowe funkcje i aktualizacje oraz uczyć się wskazówek i trików od innych deweloperów. Dołącz do nas! 😎