Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Zarządzanie tenantami

Podsumowanie:

Tenantami zarządza administrator tenantów w aplikacji TenantAdminSPA. Podstawowe dane tenantów są zapisywane w osobnej instancji bazy danych, do której ma dostęp tylko administrator tenantów.

W tym temacie

Do zarządzania tenantami służy odrębna aplikacja TenantAdminSPA dostępna pod adresem https://<bazowy_URL_nAxiom>/tenantsadmin. Łączy się ona z dedykowaną bazą danych, w której są przechowywane parametry konfiguracyjne poszczególnych tenantów. Po wpisaniu adresu w przeglądarce zostanie wyświetlone okno logowania, w którym należy podać standardowe dane logowania:

  • login: tenantsadmin
  • hasło jest dostarczane z pakietem instalacyjnym

Po zalogowaniu zostanie wyświetlona strona aplikacji z menu po lewej stronie i listą tenantów w części głównej. Poszczególne pozycje menu opisano w kolejnych sekcjach. Aplikacja jest dostępna w wersji angielskojęzycznej.

Tenants list

Pozycja Tenants list wyświetla listę tenantów. Ustawienia każdego tenanta można edytować, klikając ikonę edycji w wierszu tenanta. Tenantów nie można usuwać, nieużywane definicje tenantów można dezaktywować. Kliknij przycisk Add new tenanti postępuj zgodnie z poleceniami w kreatorze.

  • Code: kod tenanta; tylko znaki alfanumeryczne (a-z, A-Z, 0-9) i łączniki (-); kodu tenanta określonego w tym kroku nie można zmienić.
  • Database:
    • New database: dla tworzonego tenanta zostanie utworzona nowa baza danych o podanych parametrach.
    • Existing database: tenant zostanie powiązany z istniejącą bazą danych o podanych parametrach.
  • Database connection definition:
    • Parameters: (domyślnie) należy podać parametry połączenia z bazą danych w polach:
      • Server name: adres serwera SQL Server.
      • Login: login do bazy danych; jeśli nie istnieje zostanie utworzony, zaleca się podanie loginu utworzonego z mocnym hasłem specjalnie dla administratora tenantów.
      • Password: Hasło do bazy danych (dostępny jest przycisk generowania mocnego hasła).
      • Database: Nazwa bazy danych pierwszego tenanta
    • Connection string: należy podać ciąg połączenia w polu tekstowym Database connection string.

Kliknij przycisk Create, aby utworzyć pierwszego tenanta w środowisku nAxiom. Wymagane jest podwójne potwierdzenie. Po utworzeniu wyświetlana jest strona edycji ustawień tenanta.

Po utworzeniu tenanta wymagany jest restart witryny nAxiom na serwerze IIS.

Strona Edit tenant ma trzy karty z polami ustawień tenanta. Poniżej opisano ustawienia na poszczególnych kartach.

Karta Main:

  • Identifier: identyfikator GUID tenanta; tylko do odczytu.
  • Code: kod definiowany podczas tworzenia tenanta; domyślnie używany jako przedrostek adresu URL dla tego tenanta; tylko do odczytu.
  • Name: nazwa tenanta.
  • Customer Name: ciąg znaków, na podstawie którego jest identyfikowana licencja danego tenanta (podczas pierwszego logowania konsultant tego tenanta musi zaimportować plik licencji zgodny z wartością w tym polu).
  • Description: opis tenanta.
  • Is active: przełącznik do aktywacji/dezaktywacji tenanta. Wyłączenie przełącznika powoduje, że wszyscy zalogowani użytkownicy tego tenanta zostaną wylogowani. Wylogowanie nastąpi w momencie wysyłania dowolnego żądania do serwisu internal api. Zmiana tego ustawienia zaczyna obowiązywać natychmiast, nie jest wymagany restart witryny.
  • Dla nowego tenanta przełącznik Is active jest zawsze wyłączony.
  • W przypadku dezaktywacji jedynego aktywnego tenanta (niezalecane) system zwróci błąd 503 z komunikatem „No active tenants available”.

Karta Configuration:

  • URL prefix: przedrostek w adresie URL witryny nAxiom; tylko znaki alfanumeryczne (a-z, A-Z, 0-9) i łączniki (-); użytkownicy końcowi z organizacji każdego tenanta logują się do witryny nAxiom, używając adresów różniących się przedrostkiem; przedrostek jest domyślnie taki sam, jak kod tenanta, ale można to zmienić; dla pierwszego tenanta powoływanego przez instalator przedrostek jest domyślnie pusty.
  • Tenant administrator e-mail: adres e-mail do użytkownika z rolą administratora u danego tenanta.
  • Settings: tekst w formacie JSON z ustawieniami konfiguracyjnymi, które można teraz ustawiać indywidualnie dla każdego tenanta, na przykład rozszerzenia nazw plików indeksowanych do wyszukiwania pełnotekstowego (o ile zostało skonfigurowane), ustawienia synchronizacji użytkowników i jednostek organizacyjnych z serwerem LDAP itp. Te ustawienia opisano w dodatku na końcu tego artykułu.
  • : umożliwia ustawienie niestandardowego logo używanego w oknach logowania i wylogowania dla bieżącego tenanta; w celu ustawienia logo należy wybrać obraz, odpowiednio powiększyć go lub pomniejszyć i ustawić prostokątną ramkę na wybranym fragmencie obrazu; dostępne kontrolki:
    • Select image: otwiera okno wyboru pliku;
    • Clear logo: przywraca standardowe logo (ustawione w sekcji Global settings);
    • Zoom-in/out: pomniejsza/powiększa obraz;
    • Reset image: przywraca oryginalny rozmiar obrazu.

Karta Database

  • Database connection definition:
    • Parameters: (domyślnie) należy podać parametry połączenia z bazą danych w polach:
      • Server name: adres serwera SQL Server.
      • Login: Login do bazy danych.
      • Password: Hasło do bazy danych.
      • Database: Nazwa bazy danych pierwszego tenanta
    • Connection string: należy podać ciąg połączenia w polu tekstowym Database connection string.

Karta Attachments

  • Allowed attachment types: lista dozwolonych formatów plików załączników (w formacie JSON). Aby dodać format do listy, należy podać jego rozszerzenie i typ MIME. Na końcu tego rozdziału znajduje się tabela formatów plików obsługiwanych przez nAxiom. Jeśli lista będzie pusta, typy plików załączników nie będą weryfikowane.

Karta Guest login

  • Guest login translations: Tłumaczenia stringów wyświetlanych w oknie logowania. Należy podać następujące pozycje:
    • LanguageCode: kod języka, należy stosować kod dwuznakowy,
    • LanguageName: nazwa języka wyświetlana w polu wyboru języka,
    • PageTitle: tytuł witryny wyświetlany na zakładce karty przeglądarki,
    • WelcomeTitle: nadrzędny tytuł witryny wyświetlany w oknie logowania,
    • WelcomeSubtitle: podrzędny tytuł witryny wyświetlany w oknie logowania,
    • InputPlaceholder: placeholder w polu na hasło użytkownika,
    • InputRequiredMessage: komunikat błędu w przypadku braku podania hasła,
    • ButtonText: tekst wyświetlany w przycisku logowania,
    • LoginErrorMessage: ogólny komunikat błędu w przypadku logowania
  • Guest login background image: Obraz wyświetlany w tle okna logowania w tym trybie

Global settings

W sekcji Global settings określa się globalne ustawienia środowiska nAxiom obowiązujące dla wszystkich tenantów.

  • Sekcja General
    • Directory location...: katalog główny repozytoriów plikowych wszystkich tenantów; domyślnie <katalog_instalacyjny_nAxiom>\SystemRepositories; w tym katalogu każdy tenant ma własny podkatalog o nazwie takiej jak GUID tenanta, a w nim podkatalogi repozytoriów różnych zasobów (wiadomości e-mail, załączniki itp.).
    • Error logging level: poziom logowania komunikatów dla serwisów api i publicapi; taki sam dla wszystkich tenantów; dostępne wartości (poziomy są wymienione w kolejności od najniższej istotności, każdy poziom obejmuje także informacje z poziomów o wyższej istotności):
      • Trace: szczegółowe informacje przydatne przy śledzeniu miejsca wystąpienia błędu na stronie;
      • Debug: szczegóły na temat akcji podjętych przez system, odzwierciedlające jego aktualny stan;
      • Info: wiadomości informacyjne odnoszące się do sposobu działania systemu;
      • Warn: ostrzeżenia przed potencjalnym zagrożeniem w działaniu systemu przy wykonywaniu dalszej części kodu;
      • Error: (wartość domyślna) błędy występujące podczas żądania wysyłanego przez użytkownika, umożliwiające dalszą pracę systemu;
      • Fatal: błędy, które uniemożliwiają dalsze działanie systemu i powodują jego zawieszenie.
    • Logo: patrz opis powyżej .
  • Sekcja API anonymous endpoints rate limiting:
    • Maximum number of requests from a single IP address per 1 minute: wartość domyślna 100; wymaga restartowania serwisów API i PublicAPI; przekroczenie limitu powoduje wyświetlenie komunikatu o błędzie i pustej strony.
  • Sekcja Google reCAPTCHA v3:
    • Secure public forms: włącza lub wyłacza mechanizm weryfikacji reCAPTCHA dla formularzy publicznych ; po włączeniu wymaga podania kolejnych parametrów.
    • SiteKey: klucz publiczny witryny uzyskiwany w procesie rejestracji w Google Cloud; służy do uzyskania tokena używanego w żądaniu weryfikacji.
    • SecretKey: klucz tajny witryny uzyskiwany w procesie rejestracji w Google Cloud; wraz z tokenem jest wysyłany w żądaniu weryfikacji.
    • Acceptable scoring: minimalna wartość oceny zwracanej przez reCAPTCHA, która zostanie uznana za potwierdzenie interakcji z człowiekiem; domyślnie 0,5.
  • Sekcja Secrets Management System: pozwala określić parametry do zewnętrznego oprogramowania pełniącego rolę sejfu służącego do przechowywania haseł i certyfikatów używanych w aplikacjach biznesowych; patrz kolejne sekcje w tym temacie oraz artykuł Integracja nAxiom z OpenBao :
    • Enable Secrets: włącza korzystanie z zewnętrznego sejfu,
    • URL: adres URL sejfu,
    • Username: nazwa użytkownika sejfu,
    • Password: hasło użytkownika sejfu,
    • Namespace: przestrzeń nazw, w której będą przechowywane hasła i certyfikaty.

Library packages

Wyświetla listę paczek bibliotek, to jest pakietów zawierających biblioteki DLL, które mogą być używane w akcjach C#. Aby zdefiniować paczkę bibliotek należy podać jej nazwę i załadować co najmniej jeden plik biblioteki DLL. Zdefiniowane paczki bibliotek można eksportować do pliku naxlib. Taki plik można następnie zaimportować do innego środowiska nAxiom. Paczki są przechowywane w bazie tenantów w tabelach ta.LibraryPackages (definicje) i ta.LibraryPackageFiles (pliki bibliotek).

User list

Wyświetla listę użytkowników z uprawnieniami do administrowania tenantami. Aby dodać użytkownika, kliknij przycisk Add new user i na wyświetlonej stronie podaj nazwę użytkownika, adres e-mail i hasło.

Każdy administrator tenantów może dodawać nowych administratorów oraz edytować istniejących. W celu zmiany hasła kliknij ikonę edycji dla danego administratora i podaj nowe hasło.

Environment secrets

Na tej stronie można definiować sekrety na poziomie całego środowiska nAxiom, to jest dostępne dla wszystkich tenantów. W celu zdefiniowania sekretu należy określić:

  • Code: maksymalnie 100 znaków, małe i wielkie litery alfabetu łacińskiego, cyfry oraz łącznik (-); kod sekretu musi być unikalny.
  • Name: maksymalnie 255 znaków.
  • Type: dostępne wartości:
    • Secret: sekret typu tekstowego, np. hasło, klucz API, token dostępu; do sekretów tego typu można się odwoływać przy użyciu zmiennych aplikacji .
    • File: sekret typu plikowego, np. certyfikat.
  • Value: pole tekstowe do wprowadzenia sekretu tekstowego lub przycisk Upload file do wczytania sekretu plikowego.

Tenant secrets

Zakłada się, że w aplikacjach używanych przez różnych tenantów używane będą takie same sekrety, ale o różnych wartościach. Dlatego osobno definiuje się sekrety, a osobno wartości tych sekretów dla poszczególnych tenantów. W związku z tym pozycja menu Tenant secrets zawiera dwie pozycje podrzędne:

  • Definitions: na tej stronie definiuje się sekrety, określając podobnie jak w przypadku sekretów środowiska atrybuty Code, Name i Type.
  • Values: na tej stronie określa się wartości sekretów zdefiniowanych na stronie Definitions indywidualnie dla każdego tenanta.

Tenant variables

Służy do definiowania zmiennych konfiguracyjnych tenanta, które będą obsługiwane przez program OpenBao. Zawiera dwie pozycje podrzędne.

Definitions: służy do definiowania zmiennych; wymagane jest podanie kodu zmiennej zgodnie z przyjętą konwencją, to jest jako ścieżki JSON z pliku appsettings.json, w której kolejne segmenty są rozdzielone dwoma znakami podkreślenia. Jeśli dowolny segment ścieżki waskazuje na element tablisy, należy podać jego indeks (pierwszy element ma indeks 0). Na przykład dla klucza password z poniższego pliku konfiguracyjnego

"OpenLDAPConf": {
  "UserId": "3F53097E-BFE6-4690-E075-08D6CEBA7D84",
  "RepeatInterval": 240,
  "UserSettings": [
    {
      "SynchronizationType": "Full",
      "DefaultEmailAddress": "brakmaila@domain.com",
      "DefaultLanguageCode": "pl",
      "SkipUsersWithoutEmail": false,
      "DefaultOrganizationSymbols": [ "System" ],
      "SystemRoleCode": "CLIENT",
      "UserMatchingType": "Login",
      "DefaultBusinessRoleCodes": [ "LOKALNA" ],
      "LDAPConfiguration": {
        "Path": "192.168.40.51",
        "User": "cn=Manager,dc=maxcrc,dc=com",
        "Password": "veEzPBSsXgrmcRhztdbWUA=="
      }
    }
  ]
}

należy zdefiniować następujący kod zmiennej:

OpenLDAPConf__UserSettings__0__LDAPConfiguration__Password

Values: służy do przypisywania wartości zdefiniowanej zmiennej indywidualnie dla każdego tenanta.

Hasła i tym podobne dane wrażliwe należy podać w postaci tekstowej, bez szyfrowania.

Font families

Służy do dodawania rodzin czcionek, z których można będzie korzystać w nAxiom po wybraniu odpowiednich ustawień w Kreatorze stylów systemu w Admin SPA. Obsługiwane są następujące formaty plików czcionek: TTF, OTF, WOFF i WOFF2.

Rozwijane listy wartości w kolumnach Weight i Style pozwalają określić, dla jakich ustawień font-weight i font-style w arkuszach CSS zostanie wybrana bieżąca czcionka z danej rodziny.

Obsługiwane formaty plików załączników

Poniższa tabela zawiera listę formatów plików, które mogą być weryfikowane przez nAxiom po ich dodaniu do listy dozwolonych typów załączników (Edit tenant > Attachments > Allowed attachment types).

Lp. Rozszerzenie MIME Type Źródło detekcji
Obrazy      
1 jpg image/jpeg Sygnatura
2 png image/png Sygnatura
3 gif image/gif Sygnatura
4 bmp image/bmp Sygnatura
5 tif image/tiff Sygnatura
6 ico image/x-icon Sygnatura
7 webp image/webp Sygnatura
8 psd image/vnd.adobe.photoshop Sygnatura
9 heic image/heic Sygnatura
10 heif image/heic Sygnatura
11 avif image/avif Sygnatura
12 jxl image/jxl Sygnatura
13 wmf image/x-wmf Sygnatura
14 svg image/svg+xml Analiza tekstu
Dokumenty      
15 pdf application/pdf Sygnatura
16 rtf application/rtf Sygnatura
17 ps application/postscript Sygnatura
18 eps application/postscript Sygnatura
19 docx application/vnd.openxmlformats-officedocument.wordprocessingml.document Analiza ZIP
20 xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet Analiza ZIP
21 pptx application/vnd.openxmlformats-officedocument.presentationml.presentation Analiza ZIP
22 doc application/msword Analiza OLE
23 xls application/vnd.ms-excel Analiza OLE
24 ppt application/vnd.ms-powerpoint Analiza OLE
25 odt application/vnd.oasis.opendocument.text Analiza ZIP
26 ods application/vnd.oasis.opendocument.spreadsheet Analiza ZIP
27 odp application/vnd.oasis.opendocument.presentation Analiza ZIP
28 epub application/epub+zip Analiza ZIP
29 chm application/vnd.ms-htmlhelp Sygnatura
Web / Tekst / XML      
30 html/htm text/html Analiza tekstu
31 xhtml application/xhtml+xml Analiza tekstu
32 xml application/xml Sygnatura
33 drawio application/vnd.jgraph.mxfile Analiza tekstu
34 txt text/plain Sygnatura / heurystyka UTF-8
35 sh application/x-sh Sygnatura
E-mail      
36 eml message/rfc822 Sygnatura + analiza nagłówków
37 pst application/vnd.ms-outlook-pst Sygnatura
38 msg application/vnd.ms-outlook Analiza OLE
Archiwa      
39 zip application/zip Analiza ZIP
40 rar application/vnd.rar Sygnatura
41 7z application/x-7z-compressed Sygnatura
42 gz application/gzip Sygnatura
43 bz2 application/x-bzip2 Sygnatura
44 xz application/x-xz Sygnatura
45 tar application/x-tar Sygnatura
46 cab application/vnd.ms-cab-compressed Sygnatura
47 z application/x-compress Sygnatura
48 lz4 application/x-lz4 Sygnatura
49 zst application/zstd Sygnatura
Pliki wykonywalne / binarne      
50 exe application/vnd.microsoft.portable-executable Sygnatura
51 elf application/x-elf Sygnatura
52 class application/java-vm Sygnatura
53 (brak) application/octet-stream Sygnatura (Mach-O 32-bit)
54 (brak) application/octet-stream Sygnatura (Mach-O 64-bit)
55 (brak) application/octet-stream Sygnatura (Mach-O 32-bit reverse)
56 (brak) application/octet-stream Sygnatura (Mach-O 64-bit reverse)
57 (brak) application/octet-stream Sygnatura (Java Serialized Data)
58 jks application/x-java-keystore Sygnatura
59 dex application/x-dex Sygnatura
60 wasm application/wasm Sygnatura
61 jar application/java-archive Analiza ZIP
62 apk application/vnd.android.package-archive Analiza ZIP
Czcionki      
63 ttf font/ttf Sygnatura
64 otf font/otf Sygnatura
65 woff font/woff Sygnatura
66 woff2 font/woff2 Sygnatura
Bazy danych      
67 sqlite application/vnd.sqlite3 Sygnatura
68 accdb application/x-msaccess Sygnatura
69 mdb application/x-msaccess Sygnatura
Bezpieczeństwo / System      
70 lnk application/x-ms-shortcut Sygnatura
71 iso application/x-iso9660-image Sygnatura
72 crx application/x-chrome-extension Sygnatura
73 bak application/x-mssql-backup Sygnatura
OLE (fallback)      
74 vsd application/vnd.visio Analiza OLE
75 ole application/x-ole-storage Analiza OLE (fallback)
Wszystkie inne pliki      
    application/octet-stream Domyślny (default)

Copyright © 2025 OPTEAM SA. Theme Copyright © 2017-2020 Patrick Marsceill. Distributed by an MIT license.