- Implementering av et fleksibelt autentiseringssystem som støtter lokale og fødererte kontoer ved bruk av protokoller som OAuth2, OIDC og LDAP.
- Granulær tilgangskontroll basert på roller, grupper og tilgangskontrolllister (ACL-er) for å administrere ressurssynlighet.
- Avanserte tilpasningsmuligheter for tillatelser og spesifikke innstillinger basert på brukerprofilen eller den tildelte gruppen.
Hvis du leter etter et selvhostet alternativ for å samhandle med ulike kunstig intelligens-modeller, er LibreChat et av de mest omfattende alternativene. Plattformen lar deg sentralisere tilgang til leverandører som OpenAI, Anthropic og Google, men den tilbyr også noe spesielt viktig når den brukes av et team: kontrollere hvem som kan komme inn og hvilke funksjoner som er tilgjengelige.
Denne administrasjonen går utover å bare opprette en konto med e-postadresse og passord. LibreChat kombinerer autentiseringssystemer, roller, grupper, tillatelser for spesifikke funksjoner og tilgangskontrolllister for delte ressurser. Dette lar deg forhindre at visse brukere oppretter agenter, la et team redigere ledetekster eller delegere deler av administrasjonen uten å gi full servertilgang. Og hvis du fortsatt vurderer plattformen, kan du sjekke ut sammenligningen vår mellom LibreChat, ChatGPT og andre alternativer.
Slik oppretter du brukere i LibreChat

Som standard lar LibreChat en person registrere seg med e-postadressen og passordet sitt. Når en ny instans lanseres, Den første registrerte kontoen får ADMIN-rollenDerfor er det lurt å opprette den før tjenesten publiseres, og å bruke sikker påloggingsinformasjon for den.
El De gjenværende registrerte kontoene får i utgangspunktet BRUKER-rollenAdministratoren kan kontrollere innlogging og registrering ved hjelp av forskjellige variabler i filen. .env:
ALLOW_EMAIL_LOGIN=true
ALLOW_REGISTRATION=true
ALLOW_SOCIAL_LOGIN=false
ALLOW_SOCIAL_REGISTRATION=false
ALLOW_EMAIL_LOGIN tillater bruk av lokale kontoer, mens ALLOW_REGISTRATION Den kontrollerer om nye registreringer gjøres tilgjengelige via e-post. De to andre variablene gjør det samme for kompatible sosiale leverandører.
Et typisk oppsett for en privat instans innebærer først å opprette de nødvendige kontoene og deretter lukke det offentlige registeret:
ALLOW_EMAIL_LOGIN=true
ALLOW_REGISTRATION=false
Selv med registrering deaktivert, kan administratoren legge til en lokal konto ved hjelp av skriptet som følger med LibreChat. I en installasjon som bruker standard Docker Compose-filen, er kommandoen:
docker compose exec api npm run create-user
Veiviseren vil be om e-postadressen og passordet for den nye kontoen. På en lokal installasjon, uten Docker, kan den kjøres fra prosjektroten:
npm run create-user
LibreChat inneholder også et skript for sletting av kontoer. Før du bruker det, anbefales det å sjekke hvilke samtaler, agenter og ressurser som tilhører brukeren, da sletting av en konto ikke bør forveksles med midlertidig fjerning av tilgang.
Bruk LDAP, SAML, OAuth eller OpenID Connect
For et lite team kan lokale kontoer være tilstrekkelig. I en organisasjon er det mer praktisk å koble LibreChat til identitetssystemet som allerede brukes av ansatte.
Plattformen støtter forskjellige autentiseringsmetoder:
- LDAP eller Active Directory, for å validere brukere mot en eksisterende katalog.
- SAML, som vanligvis brukes til å implementere enkel pålogging for bedrifter.
- OAuth2, kompatibel med leverandører som Google, GitHub, Discord eller Apple.
- OpenID Connect, brukes til å koble til tjenester som Keycloak, Auth0, AWS Cognito eller Microsoft Entra ID.
Du bør være oppmerksom på at SAML og OpenID Connect ikke fungerer samtidig. Hvis begge er aktivert, LibreChat prioriterer OpenID Connect og deaktiverer SAMLVidere tillater ikke disse to metodene å skille innlogging av eksisterende brukere og registrering av nye brukere gjennom en enkel variabel, slik tilfellet er med lokal eller sosial registrering.
I Keycloak kan du bruke OPENID_REQUIRED_ROLE for å hindre tilgang for de som ikke har en av de autoriserte rollene. Dette er nyttig hvis du ikke vil at noen konto i katalogen skal kunne få tilgang til instansen.
Integrer LibreChat med Microsoft-påloggings-ID
Microsoft Entra ID kan koble til LibreChat som en OpenID Connect-leverandør. Hver bruker er koblet til med sin stabile ID og kan logge inn med bedriftens legitimasjon.
Integrasjonen kan utvides ved hjelp av Microsoft Graph, slik at LibreChats personvelger kan finne brukere og grupper i organisasjonen. Dette krever at applikasjonen som er registrert med Entra ID har de nødvendige tillatelsene, og at gjenbruk av OpenID-token må være aktivert.
OPENID_REUSE_TOKENS=true
USE_ENTRA_ID_FOR_PEOPLE_SEARCH=true
ENTRA_ID_INCLUDE_OWNERS_AS_MEMBERS=true
OPENID_GRAPH_SCOPES=User.Read,People.Read,GroupMember.Read.All,User.ReadBasic.All
Noen tillatelser, som for eksempel GroupMember.Read.AllDe kan trenge samtykke fra en Entra ID-administrator.
Denne integrasjonen bør ikke beskrives bare som automatisk navnesynkronisering. Med Microsoft Graph kan du søke etter personer, vise medlemskap og bruke eksterne grupper i tillatelsessystemet, alltid innenfor det omfanget som er gitt til applikasjonen.
Administrer brukere fra LibreChat-panelet

LibreChat har et separat administrasjonspanel som kobler seg til samme API og database som hovedinstansen. Derfra kan du se brukere, administrere grupper og roller, bruke spesifikke konfigurasjoner og gi administratorrettigheter.
I den nåværende dokumentasjonen er imidlertid LibreChat-administrasjonspanelet vises fortsatt markert som forhåndsvisningSelv om det allerede kan testes og er en del av de offisielle distribusjonene ved bruk av Docker Compose, anbefales det å sjekke statusen og kompatibiliteten før man er avhengig av det i et produksjonsmiljø.
Panelet tillater blant annet følgende operasjoner:
- Søk etter og vis forekomstkontoene.
- Opprett lokale grupper og endre medlemmene deres.
- Opprett egendefinerte roller og tilordne dem til brukere.
- Endre tillatelsene som er knyttet til hver rolle.
- Bruk forskjellige innstillinger på grupper eller roller.
- Delegering av administrative funksjoner gjennom systemkonsesjoner.
Panelet fungerer som en separat tjeneste. Operasjoner behandles via ruter. /api/admin/* LibreChat, som sjekker om kontoen har de nødvendige administratorrettigheter før den godtar hver endring.
Forstå forskjellen mellom roller og grupper
LibreChat inneholder to systemroller som alltid er til stede:
- ADMINISTRATORhar full tilgang til innstillinger, ressurser og administrative funksjoner.
- BRUKER: er den grunnleggende rollen som nye kontoer får.
Fra og med LibreChat 0.8.5 kan du også opprette tilpassede rollerHver av dem inneholder en tillatelsesmatrise for å avgjøre om medlemmene kan bruke, opprette, dele eller publisere agenter, ledetekster, MCP-servere og andre funksjoner.
Du kan for eksempel opprette en rolle kalt «Promptredigerer» med tillatelse til å opprette og dele prompter, men uten muligheten til å publisere agenter eller endre generelle innstillinger.
En bruker kan ha flere roller. I så fall beregnes deres effektive tillatelser ved hjelp av forening av de gitte evneneDette betyr at det å legge til en andre, mer permissiv rolle kan gi tilbake en funksjon du prøvde å begrense fra den første.
Grupper tjener et annet formål. De brukes til å gruppere brukere etter avdeling, prosjekt eller tilgangsbehov. De kan opprettes lokalt eller fra en kompatibel integrasjon, for eksempel Entra ID.
Grupper brukes som mottakere av delte ressurser og kan også motta konfigurasjonsoverstyringerPå denne måten kunne en gruppe forskere bruke flere endepunkter eller en annen konfigurasjon uten å endre opplevelsen til resten av organisasjonen.
Konfigurer tillatelser for agenter, ledetekster og MCP-servere

Rolletillatelser bestemmer hva hver rolle kan gjøre. LibreChat lar deg kontrollere handlinger separat, for eksempel:
- BRUK: bruk en funksjons- eller ressurstype.
- SKAPE: opprette nye ressurser.
- DELEdel dem med bestemte brukere, grupper eller roller.
- DEL_OFFENTLIG: gjør dem tilgjengelige for alle autentiserte brukere av instansen.
Forskjellen mellom SHARE y SHARE_PUBLIC Dette er spesielt viktig. Du kan tillate et team å dele agenter internt uten å gi dem muligheten til å publisere dem til hele organisasjonen.
I tidligere versjoner ble mange av disse tillatelsene initialisert ved hjelp av blokken interface de librechat.yamlDenne muligheten eksisterer fortsatt for å forberede seg til rollen USER under oppstart, men Det er ikke lenger den anbefalte metoden for daglig administrering.
Panelet lar deg endre tillatelsene til hver rolle direkte, inkludert tilpassede roller, uten å måtte starte LibreChat på nytt. YAML er fortsatt nyttig for førstegangs distribusjon og for fullstendig filadministrerte installasjoner.
Del ressurser ved hjelp av ACL-lister
Generelle tillatelser alene avgjør ikke hvem som kan åpne hver agent eller melding. Delbare ressurser har også en tilgangskontrolliste eller egen tilgangskontrolliste.
Dette systemet gjelder blant annet agenter, ledetekstgrupper, MCP-servere, eksterne agenter, filer og prosjekter. Eieren kan dele hver ressurs med brukere, grupper eller roller og velge ett av disse nivåene:
- Seer: lar deg se og bruke ressursen.
- Redaktør: lar deg bruke den og endre innstillingene.
- Eier: gir full kontroll til å redigere, slette og dele på nytt.
For eksempel kan en person ha generell tillatelse til å bruke agenter, men vil ikke kunne få tilgang til en privat agent hvis den ikke er oppført i tilgangskontrollisten deres. På samme måte gir ikke det å motta visningstilgang til en agent automatisk tillatelse til å opprette nye agenter.
Når du deler agenter med filer, interne instruksjoner eller verktøy som kan endre data, bør du nøye gjennomgå deres tildelte rettighetsnivå. LibreChat advarer om at en agent kan avsløre vedlagt informasjon under en samtale, selv når brukeren ikke har direkte tilgang til innstillingene.
Deleger administrative oppgaver med systemtilskudd
Å gjøre noen til ADMIN for å utføre én enkelt oppgave bryter med prinsippet om minste privilegium. For å unngå dette bruker LibreChat det som kalles... systemtilskudd.
Disse tillatelsene tillater at spesifikke administrative rettigheter gis til en bruker, gruppe eller rolle. Dokumenterte eksempler inkluderer:
manage:users, for å administrere brukere.manage:roles, for å administrere roller.manage:mcpservers, for å administrere MCP-servere.read:usage, for å se bruksinformasjon.
På denne måten kan supportansvarlig administrere kontoer uten å ha full tilgang til hele instansen. Sjekker utføres på LibreChat API-et, slik at panelet ikke kan gi seg selv rettigheter.
Siden administrasjonspanelet fortsatt er i forhåndsvisningsmodus, anbefales det å teste disse delegeringene grundig og beholde minst én lokal ADMIN-konto for gjenoppretting.
Hvilke filer er involvert i konfigurasjonen
LibreChat fordeler konfigurasjonen mellom forskjellige komponenter, men hver enkelt har et klart formål:
.envinneholder miljøvariabler, hemmeligheter, autentiseringsalternativer og tilkoblinger til tjenester.librechat.yamldefinerer tilpassede endepunkter, modeller, grensesnittalternativer, agenter, MCP og andre avanserte funksjoner.- Databaselagrer brukere, tilpassede roller, grupper, tilgangskontrollister, innrømmelser og innstillinger som administreres fra panelet.
I en Docker-installasjon er det ikke nok å opprette librechat.yamlFilen må monteres i API-containeren. Etter at den er endret, må tjenesten også startes på nytt.
Nåværende versjoner validerer YAML under oppstart. Hvis den inneholder en ukjent nøkkel, feil innrykk eller en inkompatibel verdi, LibreChat vil stoppe og vise feilen i loggeneDu kan sjekke dem med:
docker compose logs api
Det finnes en variabel som heter CONFIG_BYPASS_VALIDATION Dette kan midlertidig omgå validering, men det bør ikke brukes som en permanent løsning. Den riktige fremgangsmåten er å finne og rette feilen.
MongoDB lagrer LibreChats kjernedata, inkludert kontoer og samtaler. MeiliSearch brukes til å øke hastigheten på meldingssøk, og PostgreSQL med vektorstøtte er involvert i RAG API-et. Disse sistnevnte tjenestene er ikke sentrale i brukersystemet og kan avhenge av funksjoner som er aktivert i hver distribusjon.
Anbefalinger for å beskytte kontoer
En LibreChat-instans kan inneholde private samtaler, bedriftsdokumenter og påloggingsinformasjon for tilgang til andre tjenester. Av denne grunn må brukeradministrasjon utformes før tjenesten åpnes for hele teamet.
Det er tilrådelig å bruke disse tiltakene:
- Opprett og sikre den første ADMIN-kontoen før du publiserer forekomsten.
- Deaktiver åpen logging når det ikke er nødvendig.
- Bruk HTTPS og dine egne sikre JWT-hemmeligheter.
- Konfigurer e-postbekreftelse og passordgjenoppretting hvis du bruker lokale kontoer.
- Bruk prinsippet om minste privilegium på roller, tilgangskontrollister og systemtildelinger.
- Gjennomgå brukere, grupper og offentlig delte ressurser med jevne mellomrom.
- Oppretthold en lokal administratorkonto for å gjenopprette tilgang hvis SSO-leverandøren svikter.
- Sjekk loggene etter at du har endret autentisering eller tillatelser.
Å opprette og administrere brukere i LibreChat krever at man skiller mellom autentisering og autorisasjon. Innloggingsmetoden bekrefter hver persons identitet; roller bestemmer hvilke funksjoner de kan bruke; grupper forenkler kollektiv administrasjon; og tilgangskontrollister bestemmer hvem som har tilgang til hver spesifikke ressurs.
Med denne strukturen kan du bruke LibreChat på en liten privat server eller i en organisasjon med en bedriftskatalog, uten å gi alle brukere full tilgang til agenter, ledetekster, MCP-servere eller administrative funksjoner.
Jeg er en teknologientusiast som har gjort sine "geek"-interesser til et yrke. Jeg har brukt mer enn 10 år av livet mitt på å bruke banebrytende teknologi og fikse med alle slags programmer av ren nysgjerrighet. Nå har jeg spesialisert meg på datateknologi og videospill. Dette er fordi jeg i mer enn 5 år har skrevet for forskjellige nettsteder om teknologi og videospill, og laget artikler som prøver å gi deg den informasjonen du trenger på et språk som er forståelig for alle.
Hvis du har spørsmål, spenner min kunnskap fra alt relatert til Windows-operativsystemet samt Android for mobiltelefoner. Og mitt engasjement er til deg, jeg er alltid villig til å bruke noen minutter og hjelpe deg med å løse eventuelle spørsmål du måtte ha i denne internettverdenen.