Login og konti
Afgør, hvem der kan oprette en konto, og hvordan folk logger ind. Alle login-metoder i Antimatter fungerer uden licens, herunder single sign-on og kataloger.
Hvem kan oprette en konto
Kort efter installationen skal du tjekke Systemkonsol › Autentificering › Registrering. Med standardindstillingerne kan alle, der har en invitationslink til et fællesskab, oprette en konto, men ingen kan registrere sig uden en.
| Indstilling | Nøgle | Standard | Hvad den gør |
|---|---|---|---|
| Aktivér kontooprettelse | TeamSettings.EnableUserCreation | til | Slået fra, ingen kan oprette en konto ved nogen metode; kun administratorer kan (Systemkonsol eller amctl user create). |
| Aktivér åben server | TeamSettings.EnableOpenServer | Fra | Slået til, alle, der når frem til serveren, kan tilmelde sig med en e-mailadresse, uden invitation. Brug det kun for offentlige fællesskaber. |
| Begræns nye system- og teammedlemmer til angivne e-maildomæner | TeamSettings.RestrictCreationToDomains | tom | Kommaadskilte domæner, for eksempel example.com, example.org: kun adresser fra disse domæner kan oprette en konto. |
| Aktivér e-mailinvitationer | ServiceSettings.EnableEmailInvitations | slået fra på en ny server | Gør det muligt for medlemmer at invitere folk via e-mail (kræver SMTP). Ugyldiggør ventende e-mailinvitationer annullerer invitationer, der endnu ikke er accepteret; de udløber i hvert fald efter 48 timer. |
Fællesskabsadministratorer styrer også, hvem der deltager i deres fællesskab, med invitationslinks og deres egne tilladte domæner: se guide til drift af et fællesskab.
Fra kommandolinjen: amctl user create (tilføj --system-admin eller --guest), amctl user invite, amctl user deactivate, amctl roles system-admin <user> for at gøre nogen til systemadministrator, og amctl roles member <user> for at fortryde det.
E-mail og adgangskode
I Systemkonsol › Autentificering › E-mail:
| Indstilling | Nøgle | Standard |
|---|---|---|
| Aktivér kontooprettelse med e-mail | EmailSettings.EnableSignUpWithEmail | Slået til. Slå det fra, når alle logger ind via single sign-on. |
| Krav om e-mailverifikation | EmailSettings.RequireEmailVerification | Slået fra. Slå det til, når e-mail fungerer: folk bekræfter derefter deres adresse, før de kan logge ind. |
| Aktivér login med e-mail | EmailSettings.EnableSignInWithEmail | til |
| Aktivér login med brugernavn | EmailSettings.EnableSignInWithUsername | til |
I Systemkonsol › Autentificering › Adgangskode:
| Indstilling | Nøgle | Standard |
|---|---|---|
| Minimumslængde for adgangskode | PasswordSettings.MinimumLength | 8 (5 til 72) |
| Krav til adgangskode: små bogstaver, store bogstaver, tal, symboler | PasswordSettings.Lowercase, .Uppercase, .Number, .Symbol | alle fra |
| Maks. antal loginforsøg | ServiceSettings.MaximumLoginAttempts | 10: efter så mange fejl, låses kontoen, indtil adgangskoden nulstilles via e-mail |
| Aktivér link for glemt adgangskode | PasswordSettings.EnableForgotLink | til |
En længde på 12 tegn eller derover bidrager mere til sikkerheden end regler for tegn. For at nulstille en adgangskode for en bruger: Systemkonsol › Brugerstyring › Brugere, eller amctl user change-password <user> --password <new>.
Multifaktorautentificering
Multifaktorautentificering (MFA) tilføjer en kode fra en autentificeringsapp til adgangskoden. Den gælder for konti, der logger ind med e-mail eller AD/LDAP; ved single sign-on skal I bruge jeres identitetsleverandørs MFA. I Systemkonsol › Autentificering › MFA:
- Aktivér multifaktorautentificering (
ServiceSettings.EnableMultifactorAuthentication, fra): brugere kan slå MFA til i deres sikkerhedsindstillinger. - Håndhæv multi-faktor godkendelse (
ServiceSettings.EnforceMultifactorAuthentication, deaktiveret): alle skal sætte det op, enten ved registrering eller ved deres næste login.
Hvis en bruger mister deres enhed: amctl user resetmfa <user>, eller nulstil det fra deres side i Systemkonsol › Brugerstyring › Brugere.
Single sign-on
Antimatter kan logge brugere ind via jeres identitetsleverandør. Ved første login oprettes deres konto (hvis oprettelse af konti er tilladt) ud fra navnet, e-mailen og brugernavnet, som leverandøren sender.
OpenID Connect, GitLab, Google og Entra ID
Gå til Systemkonsol › Autentificering › OpenID Connect, og vælg under Vælg serviceudbyder: GitLab, Google Apps, Entra ID (Office 365) eller OpenID Connect (Andet) for andre udbydere (Keycloak, Authentik, Zitadel, Okta, Auth0…).
- I jeres leverandør skal I oprette en applikation (en "client") af typen web med denne redirect-URI for jeres site-URL:
Leverandør Redirect-URI OpenID Connect (Andet) 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 - I Antimatter udfylder du Opdagelsesendpoint (udbyderens
/.well-known/openid-configuration-URL; for GitLab i stedet GitLab-webstedets URL), Klient-ID og Klient-secret. For andre udbydere også Knapnavn og Knapfarve for login-knappen. - Brug Preferred Username (GitLab og andre udbydere) henter Antimatter-brugernavnet fra udbyderens
preferred_username-claim. - Gem, log ud og prøv den nye knap på login-siden.
Indstillingerne gemmes i OpenIdSettings, GitLabSettings, GoogleSettings eller Office365Settings (for eksempel AM_OPENIDSETTINGS_ENABLE, AM_OPENIDSETTINGS_DISCOVERYENDPOINT, AM_OPENIDSETTINGS_ID, AM_OPENIDSETTINGS_SECRET). Yderligere scopes (AM_OPENIDSETTINGS_ADDITIONALSCOPES) anmoder udbyderen om flere OAuth-scopes, adskilt af mellemrum, ud over standardscopes. Den ældre side for OAuth 2.0 vises kun for servere, der stadig har en OAuth 2.0-konfiguration for GitLab, Google eller Entra ID.
For almindelig OpenID Connect (ikke GitLab, Google eller Entra ID) synkroniserer log ind også brugerattributter, du har knyttet til en claim: Antimatter læser ID-tokenet og userinfo-svaret (userinfo har forrang, når begge indeholder en claim), prøver først claim-navnet som en enkelt øverste nøgle, og derefter som prikladt indlejring (for eksempel address.country), hvis der ikke er noget match. En claim, som svaret ikke indeholder, rydder den attribut, den er knyttet til, da udbyderen betragtes som den sande kilde for det, der synkroniseres. Dette er aktiveret som standard; deaktiver det med AM_FEATUREFLAGS_OPENIDATTRIBUTESYNC=false.
SAML 2.0
I Systemkonsol › Autentificering › SAML 2.0 aktiverer du Aktivér login med SAML 2.0 (SamlSettings.Enable) og udfylder det, din identitetsleverandør giver dig: URL til identitetsleverandørens metadata, eller SAML SSO-URL, Identity Provider-udsteders URL og Identity Provider-offentligt certifikat. På identitetsleverandørens side:
- Service Provider Login URL (assertion consumer service):
https://chat.example.com/login/sso/saml; - Antimatters metadata, til udbydere, der importerer dem:
https://chat.example.com/api/v4/saml/metadata.
Kortlæg de attributter, din leverandør sender: mindst E-mailattribut og Brugernavnsattribut, og valgfrit ID, for- og efternavn, kælenavn, stilling, sprog, gæst- og administratorattributter. Verificér signatur og Aktivér kryptering er aktiveret som standard (kryptering kræver en serviceleverandørs nøgle og certifikat; kun RSA-nøgler understøttes); Signér anmodning er deaktiveret. Signaturalgoritmen er som standard RSAwithSHA256.
AD/LDAP
I Systemkonsol › Autentificering › AD/LDAP er der en trin-for-trin-side, der kobler Antimatter til Active Directory eller en anden LDAP-server: server og port (LdapSettings.LdapServer, LdapSettings.LdapPort, 389 som standard), forbindelsessikkerhed (ingen, TLS eller STARTTLS), base DN og en bind-konto (BaseDN, BindUsername, BindPassword), filtre for brugere, gæster, administratorer og grupper, samt attributter for e-mail, brugernavn, ID, navne og billede. Brugere logger derefter ind med deres kataloglogin.
En synkroniseringsjob køres hvert 60. minut (LdapSettings.SyncIntervalMinutes) for at opdatere navne og deaktivere personer, der er fjernet fra kataloget; køre den nu med amctl ldap sync. LDAP-grupper kan kobles til fællesskaber og kanaler i Systemkonsol › Brugerstyring › Grupper. SAML-konti kan også holdes synkroniseret med AD/LDAP (Aktivér synkronisering af SAML-konti med AD/LDAP).
Brugerdefinerede profilattributter, der er kortlagt til en AD/LDAP- eller SAML-attribut, i Systemkonsol › Systemattributter, synkroniseres på samme måde fra begge: Værdien af en tekstattribut kopieres, som mappen eller påstanden sender den, op til 64 tegn (en længere værdi rydder attributten i stedet for at blive forkortet); værdien af en select- eller multiselect-attribut matches mod en eksisterende mulighed uanset store/små bogstaver, hvor den eksisterende muligheds egen stavning bevares, og der oprettes en ny mulighed, hvis ingen matcher. Muligheder, som ingen længere har, fjernes, og listen over muligheder for en synkroniseret attribut kan kun ændres af den synkronisering, der ejer den, ikke manuelt i Systemkonsol.
Flytning af eksisterende konti
For at skifte eksisterende e-mailkonti til single sign-on, flytter amctl user migrate-auth email saml users.json (eller ldap) dem i massevis. En bruger kan også selv ændre sin logonmetode i deres sikkerhedsindstillinger, når Tillad overførsel af autentificering (ServiceSettings.ExperimentalEnableAuthenticationTransfer, i Systemkonsol › Eksperimentel › Funktionaliteter) er aktiveret.
Gæstekonti
Gæster er personer fra uden for din organisation, der kun kan se de kanaler, de er inviteret til. Aktivér dem i Systemkonsol › Autentificering › Gæstetilgang:
| Indstilling | Nøgle | Standard |
|---|---|---|
| Aktivér gæstetilgang | GuestAccountsSettings.Enable | Fra |
| Tilladte gæstedomæner | GuestAccountsSettings.RestrictCreationToDomains | tom: gæster kan have ethvert e-mail-domæne |
| Håndhæv multi-faktor godkendelse | GuestAccountsSettings.EnforceMultifactorAuthentication | fra; kun tilgængeligt, når MFA er aktiveret og gennemtvinget for alle |
| Skjul gæst-merke | GuestAccountsSettings.HideTags | fra: et "gæst"-tiket vises ved siden af deres navn |
Når det er slået til, inviterer fællesskadsadministratorer gæster til specifikke kanaler. Administratorer kan omdanne et medlem til gæst med amctl user demote, og en gæst til medlem med amctl user promote.
Sessioner
Hvor længe folk forbliver logget ind, indstilles i Systemkonsol › Miljø › Sessionslængder:
| Indstilling | Nøgle | Standard på en ny server |
|---|---|---|
| Forlæng sessionslængde ved aktivitet | ServiceSettings.ExtendSessionLengthWithActivity | til: sessioner fornyes, mens folk bruger Antimatter |
| Sessionslængde AD/LDAP og e-mail (timer) | ServiceSettings.SessionLengthWebInHours | 720 timer (30 dage) |
| Sessionslængde mobil (timer) | ServiceSettings.SessionLengthMobileInHours | 720 timer |
| Sessionslængde SSO (timer) | ServiceSettings.SessionLengthSSOInHours | 720 timer |
| Session idle-timeout (minutter) | ServiceSettings.SessionIdleTimeoutInMinutes | 43200 minutter (30 dage); vises kun, når sessioner ikke forlænges med aktivitet |
| Afslut sessioner ved adgangskodeændring | ServiceSettings.TerminateSessionsOnPasswordChange | til |
For at logge alle ud på én gang, brug Ophæv alle sessioner i Systemkonsol › Brugerstyring › Brugere. For at logge én person ud, åbn deres side dér.