Logowanie i konta
Określ, kto może utworzyć konto i jak użytkownicy się logują. Każda metoda logowania w Antimatter działa bez licencji, w tym jednokrotne logowanie (SSO) i katalogi.
Kto może utworzyć konto
Niedługo po instalacji sprawdź Konsola systemu › Autoryzacja › Zarejestruj się. Przy domyślnych ustawieniach każdy, kto posiada zaproszenie do społeczności, może utworzyć konto, ale nikt nie może się zarejestrować bez niego.
| Ustawienie | Klucz | Domyślnie | Opis |
|---|---|---|---|
| Włącz tworzenie kont | TeamSettings.EnableUserCreation | włączone | Wyłączone – nikt nie może utworzyć konta żadną metodą; mogą to zrobić tylko administratorzy (Konsola systemu lub amctl user create). |
| Włącz Open Server | TeamSettings.EnableOpenServer | Wyłączone | Włączone – każdy, kto uzyska dostęp do serwera, może się zarejestrować za pomocą adresu e-mail, bez zaproszenia. Używaj tego tylko dla publicznych społeczności. |
| Ogranicz nowych członków systemu i zespołu do określonych domen e-mail | TeamSettings.RestrictCreationToDomains | pusta | Domeny oddzielone przecinkami, na przykład example.com, example.org: tylko adresy z tych domen mogą tworzyć konta. |
| Włącz Zaproszenia Email | ServiceSettings.EnableEmailInvitations | wyłączone na nowym serwerze | Pozwala członkom zapraszać osoby za pomocą e-maila (wymaga SMTP). Unieważnij oczekujące zaproszenia E-Mail anuluje zaproszenia, które nie zostały jeszcze przyjęte; wygasają one po 48 godzinach. |
Administratorzy społeczności kontrolują również, kto do niej dołącza, za pomocą linków zaproszeń i własnych dozwolonych domen: zobacz przewodnik Prowadzenie społeczności.
Z wiersza poleceń: amctl user create (dodaj --system-admin lub --guest), amctl user invite, amctl user deactivate, amctl roles system-admin <user>, aby nadać komuś uprawnienia administratora systemu, oraz amctl roles member <user>, aby je cofnąć.
E-mail i hasło
W Konsola systemu › Autoryzacja › E-mail:
| Ustawienie | Klucz | Domyślnie |
|---|---|---|
| Włącz tworzenie kont za pomocą emaila | EmailSettings.EnableSignUpWithEmail | Włączone. Wyłącz, gdy wszyscy logują się za pomocą jednokrotnego logowania (SSO). |
| Wymagaj weryfikacji e-mail | EmailSettings.RequireEmailVerification | Wyłączone. Włącz, gdy e-mail działa: użytkownicy będą musieli potwierdzić swój adres przed logowaniem. |
| Włącz logowanie za pomocą adresu email | EmailSettings.EnableSignInWithEmail | włączone |
| Włącz logowanie za pomocą nazwy użytkownika | EmailSettings.EnableSignInWithUsername | włączone |
W Konsola systemu › Autoryzacja › Hasło:
| Ustawienie | Klucz | Domyślnie |
|---|---|---|
| Minimalna długość hasła | PasswordSettings.MinimumLength | 8 (od 5 do 72) |
| Wymagania hasła: małe litery, wielkie litery, cyfra, znak specjalny | PasswordSettings.Lowercase, .Uppercase, .Number, .Symbol | wszystkie wyłączone |
| Maksymalna liczba prób logowania | ServiceSettings.MaximumLoginAttempts | 10: po tylu nieudanych próbach konto jest blokowane do momentu zresetowania hasła za pomocą e-maila |
| Włącz łącze zapomnianego hasła | PasswordSettings.EnableForgotLink | włączone |
Długość 12 znaków lub więcej przyczynia się do bezpieczeństwa bardziej niż reguły dotyczące znaków. Aby zresetować hasło dla kogoś: Konsola systemu › Zarządzanie użytkownikiem › Użytkownicy lub amctl user change-password <user> --password <new>.
Uwierzytelnianie wieloskładnikowe
Uwierzytelnianie wieloskładnikowe (MFA) dodaje kod z aplikacji uwierzytelniającej do hasła. Dotyczy kont logujących się za pomocą e-maila lub AD/LDAP; w przypadku jednokrotnego logowania (SSO) użyj MFA dostawcy tożsamości. W Konsola systemu › Autoryzacja › MFA:
- Włącz uwierzytelnianie wieloskładnikowe (
ServiceSettings.EnableMultifactorAuthentication, wyłączony): użytkownicy mogą włączyć MFA w swoich ustawieniach bezpieczeństwa. - Wymuszaj uwierzytelnianie wieloskładnikowe (
ServiceSettings.EnforceMultifactorAuthentication, wyłączony): wszyscy muszą to skonfigurować, podczas rejestracji lub przy następnym logowaniu.
Jeśli ktoś zgubi urządzenie: amctl user resetmfa <user> lub zresetuj je z jego strony w Konsola systemu › Zarządzanie użytkownikiem › Użytkownicy.
Jednokrotne logowanie (SSO)
Antimatter może logować użytkowników za pomocą dostawcy tożsamości. Przy pierwszym logowaniu tworzy ich konto (jeśli tworzenie kont jest dozwolone) na podstawie nazwy, adresu e-mail i nazwy użytkownika przesłanych przez dostawcę.
OpenID Connect, GitLab, Google i Entra ID
Przejdź do Konsola systemu › Autoryzacja › OpenID Connect i wybierz w sekcji Wybierz dostawcę usług: GitLab, Google Apps, Entra ID (Office 365) lub OpenID Connect (Inne) dla innych dostawców (Keycloak, Authentik, Zitadel, Okta, Auth0…).
- W swoim dostawcy utwórz aplikację (tzw. „klient”) typu web z następującym URI przekierowania dla adresu URL Twojej strony:
Dostawca URI przekierowania OpenID Connect (Inne) https://chat.example.com/signup/openid/completeGitLab https://chat.example.com/signup/gitlab/completeGoogle https://chat.example.com/signup/google/completeEntra ID https://chat.example.com/signup/office365/complete - W Antimatter wypełnij Punkt końcowy odkrycia (adres URL
/.well-known/openid-configurationdostawcy; w przypadku GitLab podaj zamiast tego Adres URL GitLab), ID klienta oraz Klucz klienta. Dla innych dostawców podaj również Nazwę przycisku i Kolor przycisków przycisku logowania. - Użyj preferowanej nazwy użytkownika (GitLab i inne dostawcy) pobiera nazwę użytkownika Antimatter z atrybutu
preferred_usernamedostawcy. - Zapisz zmiany, wyloguj się i przetestuj nowy przycisk na stronie logowania.
Ustawienia są przechowywane w OpenIdSettings, GitLabSettings, GoogleSettings lub Office365Settings (na przykład AM_OPENIDSETTINGS_ENABLE, AM_OPENIDSETTINGS_DISCOVERYENDPOINT, AM_OPENIDSETTINGS_ID, AM_OPENIDSETTINGS_SECRET). Starsza strona OAuth 2.0 jest wyświetlana tylko na serwerach, które nadal mają konfigurację OAuth 2.0 dla GitLab, Google lub Entra ID.
SAML 2.0
W Konsola systemu › Autoryzacja › SAML 2.0 włącz Włącz logowanie z użyciem SAML 2.0 (SamlSettings.Enable) i uzupełnij dane dostarczone przez dostawcę tożsamości: Adres URL Metadanych Dostawcy Tożsamości lub SAML SSO URL, URL emitenta zarządcy tożsamości oraz Certyfikat publiczny zarządcy tożsamości. Po stronie dostawcy tożsamości:
- Adres URL logowania dostawcy usługi (usługa konsumenta asercji):
https://chat.example.com/login/sso/saml; - Metadane Antimatter, dla dostawców, którzy je importują:
https://chat.example.com/api/v4/saml/metadata.
Zmapuj atrybuty wysyłane przez dostawcę: co najmniej Atrybut Email i Atrybut nazwy użytkownika, a opcjonalnie atrybuty ID, imienia, nazwiska, pseudonimu, stanowiska, języka, gościa i administratora. Weryfikuj Podpis i Włącz Szyfrowanie są domyślnie włączone (szyfrowanie wymaga klucza i certyfikatu dostawcy usługi; obsługiwane są tylko klucze RSA); Żądanie podpisania jest wyłączone. Domyślny algorytm podpisu to RSAwithSHA256.
AD/LDAP
W Konsola systemu › Autoryzacja › AD/LDAP strona krok po kroku łączy Antimatter z Active Directory lub innym serwerem LDAP: serwer i port (LdapSettings.LdapServer, LdapSettings.LdapPort, domyślnie 389), bezpieczeństwo połączenia (brak, TLS lub STARTTLS), bazowy DN i konto do logowania (BaseDN, BindUsername, BindPassword), filtry dla użytkowników, gości, administratorów i grup, oraz atrybuty dla e-maila, nazwy użytkownika, ID, imion i zdjęcia. Użytkownicy logują się następnie swoim identyfikatorem z katalogu.
Zadanie synchronizacji jest uruchamiane co 60 minut (LdapSettings.SyncIntervalMinutes), aby aktualizować nazwy i dezaktywować osoby usunięte z katalogu; można je uruchomić teraz za pomocą amctl ldap sync. Grupy LDAP można powiązać z zespołami i kanałami w Konsola systemu › Zarządzanie użytkownikiem › Grupy. Konta SAML można również synchronizować z AD/LDAP (Włączyć synchronizację kont SAML z AD/LDAP).
Przenoszenie istniejących kont
Aby przełączyć istniejące konta e-mail na logowanie jednokrotne (SSO), polecenie amctl user migrate-auth email saml users.json (lub ldap) przenosi je zbiorczo. Użytkownik może również zmienić własną metodę logowania w ustawieniach bezpieczeństwa, gdy opcja Zezwalaj na transfer uwierzytelniania (ServiceSettings.ExperimentalEnableAuthenticationTransfer, w Konsola systemu › Eksperymentalne › Funkcje) jest włączona.
Konta gości
Goście to osoby spoza Twojej organizacji, które widzą tylko kanały, do których zostały zaproszone. Włącz je w Konsola systemu › Autoryzacja › Dostęp dla gości:
| Ustawienie | Klucz | Domyślnie |
|---|---|---|
| Włącz dostęp dla gości | GuestAccountsSettings.Enable | Wyłączone |
| Domeny gościnne na białej liście | GuestAccountsSettings.RestrictCreationToDomains | puste: goście mogą mieć dowolną domenę e-mail |
| Wymuszaj uwierzytelnianie wieloskładnikowe | GuestAccountsSettings.EnforceMultifactorAuthentication | wyłączone; dostępne tylko wtedy, gdy MFA jest włączone i wymuszone dla wszystkich |
| Ukryj tag gościa | GuestAccountsSettings.HideTags | wyłączone: obok ich nazwy wyświetlany jest tag „gość” |
Po włączeniu administratorzy społeczności zapraszają gości do konkretnych kanałów. Administratorzy mogą zmienić członka w gościa za pomocą polecenia amctl user demote, a gościa w członka za pomocą amctl user promote.
Sesje
Czas, przez jaki użytkownicy pozostają zalogowani, jest ustawiany w Konsola systemu › Środowisko › Długość sesji:
| Ustawienie | Klucz | Domyślnie na nowym serwerze |
|---|---|---|
| Wydłuż długość sesji dzięki aktywności | ServiceSettings.ExtendSessionLengthWithActivity | włączone: sesje są odnawiane, gdy użytkownicy korzystają z Antimatter |
| Długość sesji AD/LDAP i email (godzin) | ServiceSettings.SessionLengthWebInHours | 720 godzin (30 dni) |
| Długość Sesji Mobilnej (godziny) | ServiceSettings.SessionLengthMobileInHours | 720 godzin |
| Długość sesji SSO (godziny) | ServiceSettings.SessionLengthSSOInHours | 720 godzin |
| Limit Bezczynności Sesji (minuty) | ServiceSettings.SessionIdleTimeoutInMinutes | 43200 minut (30 dni); wyświetlane tylko wtedy, gdy sesje nie są wydłużane dzięki aktywności |
| Zakończ sesje po zmianie hasła | ServiceSettings.TerminateSessionsOnPasswordChange | włączone |
Aby wylogować wszystkich naraz, użyj opcji Odwołaj wszystkie sesje w Konsola systemu › Zarządzanie użytkownikiem › Użytkownicy. Aby wylogować jedną osobę, otwórz jej stronę w tym miejscu.