Autentificare și conturi
Decideți cine poate crea un cont și cum se conectă utilizatorii. Fiecare metodă de autentificare din Antimatter funcționează fără licență, inclusiv autentificarea unică și directoarele.
Cine poate crea un cont
Imediat după instalare, verificați Consola de sistem › Autentificare › Înregistrare. Cu valorile implicite, oricine are un link de invitație către o comunitate poate crea un cont, dar nimeni nu se poate înregistra fără unul.
| Setare | Cheie | Implicit | Ce face |
|---|---|---|---|
| Activați crearea de cont | TeamSettings.EnableUserCreation | activat | Dezactivat, nimeni nu poate crea un cont prin nicio metodă; doar administratorii pot (Consola de sistem sau amctl user create). |
| Activați serverul deschis | TeamSettings.EnableOpenServer | dezactivat | Activat, oricine accesează serverul se poate înregistra cu o adresă de e-mail, fără invitație. Folosiți această opțiune doar pentru comunitățile publice. |
| Limitați noi membri de sistem și de echipă la domenii de e-mail specificate | TeamSettings.RestrictCreationToDomains | gol | Domenii separate prin virgulă, de exemplu example.com, example.org: doar adresele din aceste domenii pot crea un cont. |
| Activați invitațiile prin e-mail | ServiceSettings.EnableEmailInvitations | dezactivat pe un server nou | Permite membrilor să invite persoane prin e-mail (necesită SMTP). Anulați invitațiile de e-mail în așteptare anulează invitațiile neacceptate; oricum, expiră după 48 de ore. |
Administratorii comunităților controlează, de asemenea, cine se alătură comunității, prin linkuri de invitație și propriile domenii permise: consultați ghidul Administrarea unei comunități.
Din linia de comandă: amctl user create (adăugați --system-admin sau --guest), amctl user invite, amctl user deactivate, amctl roles system-admin <user> pentru a face pe cineva administrator de sistem, și amctl roles member <user> pentru a anula această acțiune.
E-mail și parolă
În Consola de sistem › Autentificare › E-mail:
| Setare | Cheie | Implicit |
|---|---|---|
| Activați crearea contului prin e-mail | EmailSettings.EnableSignUpWithEmail | activat. Dezactivați această opțiune când toți utilizatorii se conectează prin autentificare unică. |
| Necesită verificarea e-mail | EmailSettings.RequireEmailVerification | dezactivat. Activați această opțiune odată ce e-mailul funcționează: utilizatorii își vor confirma apoi adresa înainte de a se putea conecta. |
| Activați conectarea prin e-mail | EmailSettings.EnableSignInWithEmail | activat |
| Activați conectarea cu numele de utilizator | EmailSettings.EnableSignInWithUsername | activat |
În Consola de sistem › Autentificare › Parolă:
| Setare | Cheie | Implicit |
|---|---|---|
| Lungime minimă parolă | PasswordSettings.MinimumLength | 8 (de la 5 la 72) |
| Cerințe privind parola: litere mici, litere mari, cifre, simboluri | PasswordSettings.Lowercase, .Uppercase, .Number, .Symbol | toate dezactivate |
| Încercări de conectare maximă | ServiceSettings.MaximumLoginAttempts | 10: după atâtea eșecuri, contul este blocat până când parola este resetată prin e-mail |
| Activează linkul „Am uitat parola” | PasswordSettings.EnableForgotLink | activat |
O lungime de 12 sau mai multe caractere este mai eficientă pentru securitate decât regulile de caractere. Pentru a reseta parola cuiva: Consola de sistem › Gestionarea utilizatorilor › Utilizatori, sau amctl user change-password <user> --password <new>.
Autentificare cu mai mulți factori
Autentificarea cu mai mulți factori (MFA) adaugă un cod dintr-o aplicație de autentificare la parolă. Se aplică conturilor care se conectează cu e-mail sau AD/LDAP; în cazul conectării unice, folosiți MFA-ul furnizorului de identitate. În Consola de sistem › Autentificare › MFA:
- Activați autentificarea cu mai mulți factori (
ServiceSettings.EnableMultifactorAuthentication, dezactivat): utilizatorii pot activa MFA în setările de securitate. - Aplicați autentificarea cu mai mulți factori (
ServiceSettings.EnforceMultifactorAuthentication, dezactivat): toată lumea trebuie să o configureze, la înregistrare sau la următoarea conectare.
Dacă cineva își pierde dispozitivul: amctl user resetmfa <user>, sau resetați-o din pagina sa în Consola de sistem › Gestionarea utilizatorilor › Utilizatori.
Conectare unică
Antimatter poate conecta utilizatorii prin furnizorul dvs. de identitate. La prima conectare, creează contul (dacă crearea conturilor este permisă) din numele, e-mailul și numele de utilizator trimise de furnizor.
OpenID Connect, GitLab, Google și Entra ID
Mergeți la Consola de sistem › Autentificare › Conectare OpenID și alegeți sub Selectați furnizorul de servicii: GitLab, Google Apps, Entra ID (Office 365) sau OpenID Connect (Altele) pentru orice alt furnizor (Keycloak, Authentik, Zitadel, Okta, Auth0…).
- În furnizorul dvs., creați o aplicație (un „client”) de tip web, cu acest URI de redirecționare, pentru adresa URL a site-ului dvs.:
Furnizor URI de redirecționare OpenID Connect (Altele) 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 - În Antimatter, completați Punctul final de descoperire (URL-ul
/.well-known/openid-configurational furnizorului; pentru GitLab, Adresa URL a site-ului GitLab în schimb), ID client și Secret client. Pentru alte furnizori, completați și Nume buton și Culoare buton ale butonului de conectare. - Folosește numele de utilizator preferat (GitLab și alte furnizori) preia numele de utilizator Antimatter din pretenția
preferred_usernamea furnizorului. - Salvați, deconectați-vă și încercați noul buton de pe pagina de conectare.
Setările sunt stocate în OpenIdSettings, GitLabSettings, GoogleSettings sau Office365Settings (de exemplu AM_OPENIDSETTINGS_ENABLE, AM_OPENIDSETTINGS_DISCOVERYENDPOINT, AM_OPENIDSETTINGS_ID, AM_OPENIDSETTINGS_SECRET). Pagina veche OAuth 2.0 apare doar pentru serverele care au încă o configurație OAuth 2.0 pentru GitLab, Google sau Entra ID.
SAML 2.0
În Consola de sistem › Autentificare › SAML 2.0, activați Activați conectarea cu SAML 2.0 (SamlSettings.Enable) și completați datele furnizate de furnizorul de identitate: URL metadate furnizor de identitate, sau SAML URL SSO, Identity Provider URL pentru emitent și Furnizor de identitate Certificat public. Pe partea furnizorului de identitate:
- URL de conectare pentru Service Provider (assertion consumer service):
https://chat.example.com/login/sso/saml; - Metadatele Antimatter, pentru furnizorii care le importă:
https://chat.example.com/api/v4/saml/metadata.
Mapați atributele trimise de furnizor: cel puțin Atribut E-mail și Nume utilizator, și opțional atributele pentru ID, nume, prenume, poreclă, poziție, limbă, oaspete și administrator. Verificați semnătura și Activați criptarea sunt activate implicit (criptarea necesită o cheie și un certificat pentru service provider; sunt suportate doar cheile RSA); Semnează Cererea este dezactivată. Algoritmul de semnare este implicit RSAwithSHA256.
AD/LDAP
În Consola de sistem › Autentificare › AD/LDAP, o pagină pas cu pas conectează Antimatter la Active Directory sau la un alt server LDAP: serverul și portul (LdapSettings.LdapServer, LdapSettings.LdapPort, implicit 389), securitatea conexiunii (niciuna, TLS sau STARTTLS), DN-ul de bază și un cont de bind (BaseDN, BindUsername, BindPassword), filtre pentru utilizatori, oaspeți, administratori și grupuri, și atributele pentru e-mail, nume de utilizator, ID, nume și poză. Utilizatorii se conectează apoi cu datele de autentificare din director.
Un job de sincronizare rulează la fiecare 60 de minute (LdapSettings.SyncIntervalMinutes) pentru a actualiza numele și a dezactiva persoanele eliminate din director; rulați-l acum cu amctl ldap sync. Grupurile LDAP pot fi asociate cu comunități și canale în Consola de sistem › Gestionarea utilizatorilor › Grupuri. Conturile SAML pot fi, de asemenea, menținute în sincronizare cu AD/LDAP (Activați sincronizarea conturilor SAML cu AD/LDAP).
Mutarea conturilor existente
Pentru a comuta conturile de e-mail existente la autentificarea unică, amctl user migrate-auth email saml users.json (sau ldap) le mută în masă. Un utilizator poate schimba și singur metoda de autentificare în setările de securitate, atunci când Permite transferul autentificării (ServiceSettings.ExperimentalEnableAuthenticationTransfer, în Consola de sistem › Experimental › Caracteristici) este activată.
Conturile de oaspete
Oaspeții sunt persoane din afara organizației dumneavoastră care văd doar canalele la care sunt invitați. Activați-i în Consola de sistem › Autentificare › Acces pentru oaspeți (beta):
| Setare | Cheie | Implicit |
|---|---|---|
| Activați accesul oaspeților | GuestAccountsSettings.Enable | dezactivat |
| Domenii de oaspeți cu listă albă | GuestAccountsSettings.RestrictCreationToDomains | gol: oaspeții pot avea orice domeniu de e-mail |
| Aplicați autentificarea cu mai mulți factori | GuestAccountsSettings.EnforceMultifactorAuthentication | dezactivat; disponibil doar când MFA este activat și impus pentru toți |
| Ascunde eticheta de oaspete | GuestAccountsSettings.HideTags | dezactivat: o etichetă „oaspete” este afișată lângă numele lor |
Odată activat, administratorii comunității invită oaspeții în canale specifice. Administratorii pot transforma un membru în oaspete cu amctl user demote, iar un oaspete în membru cu amctl user promote.
Sesiuni
Durata pentru care utilizatorii rămân autentificați se configurează în Consola de sistem › Mediu › Lungimea sesiunii:
| Setare | Cheie | Valoare implicită pe un server nou |
|---|---|---|
| Extindeți durata sesiunii cu activitatea | ServiceSettings.ExtendSessionLengthWithActivity | activat: sesiunile sunt reînnoite în timp ce utilizatorii folosesc Antimatter |
| Durata sesiunii AD/LDAP și Email (ore) | ServiceSettings.SessionLengthWebInHours | 720 de ore (30 de zile) |
| Durata sesiunii mobile (ore) | ServiceSettings.SessionLengthMobileInHours | 720 de ore |
| Durata sesiunii SSO (ore) | ServiceSettings.SessionLengthSSOInHours | 720 de ore |
| Durata de așteptare a sesiunii (minute) | ServiceSettings.SessionIdleTimeoutInMinutes | 43200 de minute (30 de zile); afișat doar când sesiunile nu sunt extinse prin activitate |
| Închide sesiunile la schimbarea parolei | ServiceSettings.TerminateSessionsOnPasswordChange | activat |
Pentru a deconecta pe toată lumea în același timp, folosiți Revocați toate sesiunile în Consola de sistem › Gestionarea utilizatorilor › Utilizatori. Pentru a deconecta o singură persoană, deschideți pagina acesteia acolo.