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.

SetareCheieImplicitCe face
Activați crearea de contTeamSettings.EnableUserCreationactivatDezactivat, nimeni nu poate crea un cont prin nicio metodă; doar administratorii pot (Consola de sistem sau amctl user create).
Activați serverul deschisTeamSettings.EnableOpenServerdezactivatActivat, 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 specificateTeamSettings.RestrictCreationToDomainsgolDomenii separate prin virgulă, de exemplu example.com, example.org: doar adresele din aceste domenii pot crea un cont.
Activați invitațiile prin e-mailServiceSettings.EnableEmailInvitationsdezactivat pe un server nouPermite 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:

SetareCheieImplicit
Activați crearea contului prin e-mailEmailSettings.EnableSignUpWithEmailactivat. Dezactivați această opțiune când toți utilizatorii se conectează prin autentificare unică.
Necesită verificarea e-mailEmailSettings.RequireEmailVerificationdezactivat. 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-mailEmailSettings.EnableSignInWithEmailactivat
Activați conectarea cu numele de utilizatorEmailSettings.EnableSignInWithUsernameactivat

În Consola de sistem › Autentificare › Parolă:

SetareCheieImplicit
Lungime minimă parolăPasswordSettings.MinimumLength8 (de la 5 la 72)
Cerințe privind parola: litere mici, litere mari, cifre, simboluriPasswordSettings.Lowercase, .Uppercase, .Number, .Symboltoate dezactivate
Încercări de conectare maximăServiceSettings.MaximumLoginAttempts10: după atâtea eșecuri, contul este blocat până când parola este resetată prin e-mail
Activează linkul „Am uitat parola”PasswordSettings.EnableForgotLinkactivat

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…).

  1. Î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.:
    FurnizorURI de redirecționare
    OpenID Connect (Altele)https://chat.example.com/signup/openid/complete
    GitLabhttps://chat.example.com/signup/gitlab/complete
    Googlehttps://chat.example.com/signup/google/complete
    Entra IDhttps://chat.example.com/signup/office365/complete
  2. În Antimatter, completați Punctul final de descoperire (URL-ul /.well-known/openid-configuration al 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.
  3. Folosește numele de utilizator preferat (GitLab și alte furnizori) preia numele de utilizator Antimatter din pretenția preferred_username a furnizorului.
  4. 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):

SetareCheieImplicit
Activați accesul oaspețilorGuestAccountsSettings.Enabledezactivat
Domenii de oaspeți cu listă albăGuestAccountsSettings.RestrictCreationToDomainsgol: oaspeții pot avea orice domeniu de e-mail
Aplicați autentificarea cu mai mulți factoriGuestAccountsSettings.EnforceMultifactorAuthenticationdezactivat; disponibil doar când MFA este activat și impus pentru toți
Ascunde eticheta de oaspeteGuestAccountsSettings.HideTagsdezactivat: 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:

SetareCheieValoare implicită pe un server nou
Extindeți durata sesiunii cu activitateaServiceSettings.ExtendSessionLengthWithActivityactivat: sesiunile sunt reînnoite în timp ce utilizatorii folosesc Antimatter
Durata sesiunii AD/LDAP și Email (ore)ServiceSettings.SessionLengthWebInHours720 de ore (30 de zile)
Durata sesiunii mobile (ore)ServiceSettings.SessionLengthMobileInHours720 de ore
Durata sesiunii SSO (ore)ServiceSettings.SessionLengthSSOInHours720 de ore
Durata de așteptare a sesiunii (minute)ServiceSettings.SessionIdleTimeoutInMinutes43200 de minute (30 de zile); afișat doar când sesiunile nu sunt extinse prin activitate
Închide sesiunile la schimbarea paroleiServiceSettings.TerminateSessionsOnPasswordChangeactivat

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.