[comment]: # ({46adf407-46adf407})
# 3 Grupy użytkowników

[comment]: # ({/46adf407-46adf407})

[comment]: # ({a3ed6ca5-f58db4c9})
#### Przegląd

Grupy użytkowników umożliwiają grupowanie użytkowników zarówno w celach organizacyjnych, jak i
do przypisywania uprawnień do danych. Uprawnienia do przeglądania i konfigurowania danych grup hostów i grup szablonów są przypisywane do grup użytkowników, a nie do poszczególnych użytkowników.

Często ma sens rozdzielenie informacji dostępnych dla
jednej grupy użytkowników i dla innej. Można to osiągnąć przez
grupowanie użytkowników, a następnie przypisywanie różnych uprawnień do grup hostów i szablonów.

Użytkownik może należeć do dowolnej liczby grup.

[comment]: # ({/a3ed6ca5-f58db4c9})

[comment]: # ({67897140-fe6bb4a1})
#### Konfiguracja

Aby skonfigurować grupę użytkowników:

-   Przejdź do *Users → User groups*
-   Kliknij *Create user group* (lub nazwę grupy, aby edytować istniejącą grupę)
-   Edytuj atrybuty grupy w formularzu

Karta **User group** zawiera ogólne atrybuty grupy:

![](../../../../assets/en/manual/config/user_group.png){width=600}

Wszystkie obowiązkowe pola wejściowe są oznaczone czerwoną gwiazdką.

|Parameter|Description|
|--|--------|
|*Group name*|Unikalna nazwa grupy.|
|*Users*|Aby dodać użytkowników do grupy, zacznij wpisywać nazwę istniejącego użytkownika. Gdy pojawi się lista rozwijana z pasującymi nazwami użytkowników, przewiń w dół, aby wybrać.<br>Alternatywnie możesz kliknąć przycisk *Select*, aby wybrać użytkowników w oknie podręcznym.|
|*Frontend access*|Sposób uwierzytelniania użytkowników grupy.<br>**System default** - użyj domyślnej metody uwierzytelniania (ustawionej [globalnie](/manual/web_interface/frontend_sections/users/authentication))<br>**Internal** - użyj wewnętrznego uwierzytelniania Zabbix (nawet jeśli globalnie używane jest uwierzytelnianie LDAP).<br>Ignorowane, jeśli globalnym domyślnym ustawieniem jest uwierzytelnianie HTTP.<br>**LDAP** - użyj uwierzytelniania LDAP (nawet jeśli globalnie używane jest uwierzytelnianie wewnętrzne).<br>Ignorowane, jeśli globalnym domyślnym ustawieniem jest uwierzytelnianie HTTP.<br>**Disabled** - dostęp do frontend Zabbix jest zabroniony dla tej grupy|
|*LDAP server*|Wybierz, którego [serwera LDAP](/manual/web_interface/frontend_sections/users/authentication/ldap#configuration) użyć do uwierzytelnienia użytkownika.<br>To pole jest dostępne tylko wtedy, gdy *Frontend access* ma ustawioną wartość LDAP lub System default.|
|*Multi-factor authentication*|Wybierz, której [metody](/manual/web_interface/frontend_sections/users/authentication/mfa#method-configuration) uwierzytelniania wieloskładnikowego użyć do uwierzytelnienia użytkownika:<br>**Default** - użyj metody ustawionej jako domyślna w konfiguracji MFA; ta opcja jest domyślnie wybrana dla nowych grup użytkowników, jeśli MFA jest włączone;<br>**\<Method name\>** - użyj wybranej metody (na przykład "Zabbix TOTP");<br>**Disabled** - MFA jest wyłączone dla tej grupy; ta opcja jest domyślnie wybrana dla nowych grup użytkowników, jeśli MFA jest wyłączone.<br>Pamiętaj, że jeśli użytkownik należy do wielu grup użytkowników z włączonym MFA (lub co najmniej jedna grupa ma włączone MFA), obowiązują następujące zasady uwierzytelniania: jeśli dowolna grupa używa metody MFA "Default", zostanie ona użyta do uwierzytelnienia użytkownika; w przeciwnym razie zostanie użyta pierwsza metoda (w kolejności alfabetycznej).|
|*Enabled*|Status grupy użytkowników i jej członków.<br>*Checked* - grupa użytkowników i użytkownicy są włączeni<br>*Unchecked* - grupa użytkowników i użytkownicy są wyłączeni|
|*Debug mode*|Zaznacz to pole wyboru, aby włączyć [tryb debugowania](/manual/web_interface/debug_mode) dla użytkowników.|

Karta **Template permissions** umożliwia określenie dostępu grupy użytkowników do danych grup szablonów (a tym samym szablonów):

![](../../../../assets/en/manual/config/user_group_templates.png){width="600"}

Karta **Host permissions** umożliwia określenie dostępu grupy użytkowników do danych grup hostów (a tym samym hostów):

![](../../../../assets/en/manual/config/user_group_hosts.png){width="600"}

Kliknij ![](../../../../assets/en/manual/config/add_link.png){class="nozoom"}, aby wybrać grupy szablonów/hostów
(czy to grupę nadrzędną, czy zagnieżdżoną) i przypisać do nich uprawnienia. Zacznij wpisywać nazwę grupy
(pojawi się lista rozwijana pasujących grup) lub kliknij *Select*, aby otworzyć okno podręczne z listą wszystkich grup.

Następnie użyj przycisków opcji, aby przypisać uprawnienia do wybranych grup. Dostępne uprawnienia to:

-   **Read-write** - dostęp do grupy z możliwością odczytu i zapisu;
-   **Read** - dostęp tylko do odczytu do grupy;
-   **Deny** - dostęp do grupy zabroniony.

Jeśli ta sama grupa szablonów/hostów zostanie dodana w kilku wierszach z różnymi ustawionymi uprawnieniami, zostanie zastosowane najbardziej restrykcyjne uprawnienie.

Pamiętaj, że użytkownik *Super admin* może wymusić, aby grupy zagnieżdżone miały ten sam poziom uprawnień co grupa nadrzędna; można to zrobić w formularzu konfiguracji grupy [host](/manual/config/hosts/host_groups)/[template](/manual/config/templates/template_groups).

Karty **Template permissions** i **Host permissions** obsługują ten sam zestaw parametrów. 

Bieżące uprawnienia do grup są wyświetlane w bloku *Permissions* i można je modyfikować lub usuwać.

:::noteclassic
Jeśli grupa użytkowników ma uprawnienia **Read-write** do hosta oraz **Deny** lub brak uprawnień do szablonu powiązanego z tym hostem,
użytkownicy tej grupy nie będą mogli edytować elementów dziedziczonych po szablonie na hoście, a nazwa szablonu będzie wyświetlana
jako *Inaccessible template*.
:::

Karta **Problem tag filter** umożliwia ustawienie uprawnień opartych na tagach dla grup użytkowników, aby widziały problemy filtrowane według nazwy i wartości tagu:

![](../../../../assets/en/manual/config/user_group_tags.png){width=600}

Kliknij ![](../../../../assets/en/manual/config/add_link.png){class="nozoom"}, aby wybrać grupy hostów.
Aby wybrać grupę hostów, dla której ma zostać zastosowany filtr tagów, kliknij *Select*, aby uzyskać
pełną listę istniejących grup hostów, lub zacznij wpisywać nazwę grupy hostów, aby wyświetlić
listę rozwijaną pasujących grup. Zostaną wyświetlone tylko grupy hostów, ponieważ filtr tagów problemów nie może być zastosowany do grup szablonów.

Następnie można przełączyć z *All tags* na *Tag list*, aby ustawić konkretne tagi i ich wartości do filtrowania.
Można dodać nazwy tagów bez wartości, ale nie można dodać wartości bez nazw. Tylko pierwsze trzy tagi (z wartościami, jeśli występują)
są wyświetlane w bloku *Permissions*; jeśli jest ich więcej, można je zobaczyć, klikając lub najeżdżając kursorem na ikonę ![](../../../../assets/en/manual/config/items/itemtypes/dependent_item_button.png){class="nozoom"}.

Filtr tagów pozwala oddzielić dostęp do grupy hostów od
możliwości przeglądania problemów.

Na przykład, jeśli administrator bazy danych ma widzieć tylko problemy bazy danych "MySQL",
należy najpierw utworzyć grupę użytkowników dla administratorów baz danych, a następnie określić nazwę tagu "target" i wartość "mysql".

![](../../../../assets/en/manual/config/user_group_tag_filter_2.png){width=600}

Jeśli zostanie określona nazwa tagu "target", a pole wartości pozostanie puste,
grupa użytkowników będzie widzieć wszystkie problemy z tagiem o nazwie "target" dla wybranej grupy hostów. 
Jeśli wybrano *All tags*, grupa użytkowników będzie widzieć wszystkie
problemy dla określonej grupy hostów. 

Upewnij się, że nazwa tagu i wartość tagu są
poprawnie określone, w przeciwnym razie grupa użytkowników nie będzie widzieć
żadnych problemów.

Przeanalizujmy przykład, w którym użytkownik jest członkiem kilku wybranych grup użytkowników.
Filtrowanie w tym przypadku będzie używać warunku OR dla tagów.

|   |   |   |   |   |   |   |
|---|---|---|---|---|---|---|
|**User group A**|<|<|**User group B**|<|<|**Visible result for a user (member) of both groups**|
|*Tag filter*|<|<|<|<|<|^|
|*Host group*|*Tag name*|*Tag value*|*Host group*|*Tag name*|*Tag value*|^|
|Databases|target|mysql|Databases|target|oracle|target:mysql or target:oracle problems visible|
|Databases|set to: *All tags*|<|Databases|target|oracle|All problems visible|
|Not configured in the **Problem tag filter**|<|<|Databases|target|oracle|target:oracle problems visible|

::: noteimportant
 Dodanie filtra (na przykład wszystkich tagów w
określonej grupie hostów "Databases") powoduje, że nie będzie można
widzieć problemów innych grup hostów.
:::

[comment]: # ({/67897140-fe6bb4a1})

[comment]: # ({87142f2a-e74e2150})
#### Dostęp z kilku grup użytkowników

Użytkownik może należeć do dowolnej liczby grup użytkowników. Grupy te mogą mieć
różne uprawnienia dostępu do hostów lub szablonów.

Dlatego ważne jest, aby wiedzieć, do jakich obiektów użytkownik bez uprawnień będzie mógł uzyskać dostęp w rezultacie. W poniższym przykładzie rozważ, jak dostęp
do hosta **X** (w grupie hostów 1) będzie wpływany w różnych sytuacjach
dla użytkownika, który należy do grup użytkowników A i B.

-   Jeśli grupa A ma tylko dostęp *Read* do grupy hostów 1, a grupa B
    dostęp *Read-write* do grupy hostów 1, użytkownik otrzyma dostęp
    **Read-write** do 'X'.

::: noteimportant
Uprawnienia "Read-write" mają pierwszeństwo przed
uprawnieniami "Read".
:::

-   W tym samym scenariuszu co powyżej, jeśli 'X' jednocześnie znajduje się także w
    grupie hostów 2, która jest **odmówiona** grupie A lub B, dostęp do 'X' będzie
    **niedostępny**, mimo dostępu *Read-write* do grupy hostów 1.
-   Jeśli grupa A nie ma zdefiniowanych uprawnień, a grupa B ma dostęp *Read-write* do grupy hostów 1, użytkownik otrzyma dostęp
    **Read-write** do 'X'.
-   Jeśli grupa A ma dostęp *Deny* do grupy hostów 1, a grupa B ma
    dostęp *Read-write* do grupy hostów 1, użytkownik otrzyma dostęp do 'X'
    **odmówiony**.

[comment]: # ({/87142f2a-e74e2150})

[comment]: # ({59189b5a-931529bc})
#### Inne szczegóły

-   Użytkownik na poziomie Admin z dostępem *Read-write* do hosta nie będzie
    mógł łączyć/odłączać szablonów, jeśli nie ma dostępu do grupy szablonów, do której one należą. Przy dostępie *Read* do grupy szablonów będzie
    mógł łączyć/odłączać szablony z hostem, jednak nie zobaczy
    żadnych szablonów na liście szablonów i nie będzie mógł wykonywać operacji
    na szablonach w innych miejscach.
-   Użytkownik na poziomie Admin z dostępem *Read* do hosta nie zobaczy
    hosta na liście hostów w sekcji konfiguracji; jednak wyzwalacze hosta będą dostępne w konfiguracji usługi IT.
-   Każdy użytkownik inny niż Super Admin (w tym 'guest') może widzieć mapy sieciowe, o ile mapa jest pusta lub zawiera tylko obrazy. Gdy do mapy zostaną dodane hosty, grupy hostów lub wyzwalacze, uprawnienia są respektowane.
-   serwer Zabbix nie będzie wysyłał powiadomień do użytkowników zdefiniowanych jako odbiorcy operacji akcji, jeśli dostęp do danego hosta jest jawnie "denied".

[comment]: # ({/59189b5a-931529bc})
