Hoppa till innehåll

Behörigheter och grupper

Behörigheter ges till grupper, aldrig till personer en och en. En nivå som sätts på ett projekt, en databas eller en tabell gäller för allt som ligger under, även det som skapas senare.

NivåTillåter
Ingen åtkomstingenting: resursen är osynlig
Läsase raderna, kommentera dem, skapa egna personliga vyer, visa strukturen och instrumentpanelerna, ställa och spara egna frågor, skriva skrivskyddad SQL och spara sina personliga frågor
Redigeraoch dessutom skapa, ändra och ta bort rader
Hanteraoch dessutom ändra strukturen, skapa gemensamma vyer och instrumentpaneler, dela en instrumentpanel via en länk, dela frågor, skapa SQL-vyer, automatiseringar, integrationer och tokens; SQL på den nivån når hela databasen, skrivningar inräknade

Behörigheterna läggs ihop: en person får den högsta nivå som någon av hens grupper ger. Att ge en tabell mindre än dess databas gör den ”granulär”.

Två grupper finns alltid: Administratörer, som hanterar allt, och Alla användare, som varje konto ingår i – det som ges till den gruppen har alla.

Under rutnätet med nivåer döljer Fält en kolumn för en grupp, eller gör den oredigerbar för gruppen. Skärmen visar också vad en viss person faktiskt ser, och via vilken grupp.

Ett dolt fält saknas överallt: i rutnätet, vyerna, API:et, MCP, historiken, den SQL som skrivs i gränssnittet och SQL-vyerna. Att filtrera eller sortera på det ger samma svar som för ett fält som inte finns.

Bredvid Fält visar Rader en grupp bara vissa rader i en tabell: de som ett filter fångar, skrivet som filtret för en vy. @me avser den inloggade personen:

  • commercial eq @me – varje säljare ser bara sina egna kunder;
  • region in ["nord", "est"] – ett team ser bara sina regioner;
  • _created_by eq @me – var och en ser bara det hen har skapat.

Behörigheterna läggs ihop: en person ser raderna i alla sina grupper, och en grupp utan regel ser dem alla. Den som hanterar tabellens struktur – nivån Hantera – ser alltid allt. Skärmen säger hur många rader en viss person ser, och via vilken grupp.

En rad utanför sin regel finns inte för personen: inte i vyerna, instrumentpanelerna, sökningen, API:et, MCP eller historiken, och inte för att ändras, tas bort eller länkas. En rad hen skapar måste ingå bland hens egna; genom att ändra en rad kan hen däremot flytta den ut ur sitt område – en uppgift som lämnas över till en kollega. Svaren på delade formulär kommer alltid fram.

I gränssnittet följer SQL samma behörigheter, som tillämpas av PostgreSQL själv: utan nivån Hantera körs en fråga skrivskyddat, på en roll som är personens egen, där en stängd tabell inte finns, ett dolt fält avvisas och bara personens egna rader läses, oavsett om tabellen anges ensam eller med sitt schema. En SQL-vy läses med behörigheterna hos den som läser den, och att dela en fråga delar bara dess text.

Direkt psql-åtkomst till databasen styrs däremot inte av basedb: den läser allt, dolda fält inräknade. Begränsningarna skyddar produktens ytor – gränssnitt, API, MCP –, aldrig mot någon som har SQL-åtkomst till databasen; sådan åtkomst regleras med PostgreSQL-GRANT, som driftansvarig sätter. En tabell som har en radregel har PostgreSQLs radsäkerhet aktiverad: en roll som skapats för ett tredjepartsverktyg ser inga rader i den, om den inte har attributet BYPASSRLS eller sin egen policy.

  • Ett konto skapas med ett tillfälligt lösenord, som visas en gång och måste bytas vid första inloggningen.
  • Inloggning sker med lösenord eller via en OpenID Connect-leverantör som driftansvarig har angett.
  • Administrativa åtgärder kräver en förhöjd session: ett lösenord som har skrivits in på nytt under de senaste fem minuterna.
  • Sessioner kan återkallas; att återkalla en session gör genast dess åtkomsttokens ogiltiga.

Inställningar, i profilmenyn längst ned till vänster, gäller bara dig:

FlikVad du gör där
Profilvisningsnamnet; inloggningsadressen; de identitetsleverantörer som är kopplade till kontot, att koppla eller koppla bort
Säkerhetbyta lösenord; de öppna sessionerna, att stänga en i taget eller alla
Utseendegränssnittets språk; temat; datumordningen – 25/09/2026 eller 2026-09-25 – och kalendrarnas första veckodag
Aviseringarde typer av aviseringar som du inte längre vill ha
Tokensde integrationstokens du har skapat, i alla dina databaser, när de senast användes, och återkallelse av dem

basedb talar tjugo språk: franska, engelska, tyska, spanska, italienska, portugisiska (Brasilien), nederländska, polska, tjeckiska, svenska, danska, norska, finska, rumänska, ungerska, turkiska, ukrainska, japanska, förenklad kinesiska och koreanska. Som standard använder gränssnittet webbläsarens språk; Språk, under Utseende, väljer ett annat. Tal och datum följer det valda språket.

En länk kan också begära ett språk: ?lang=de sist i en basedb-adress visar inloggningsskärmen, ett delat formulär, en delad vy eller en delad instrumentpanel på tyska. Så leder webbplatsen till demot på sidans språk. Efter inloggning följer basedb ditt konto: språket som valts under Utseende, annars webbläsarens.

Temat hör till webbläsaren; språket, datumordningen och veckans första dag följer dig från en dator till en annan. Att byta adress eller koppla en leverantör kräver en förhöjd session; ett konto utan lösenord, som loggar in via en leverantör, behåller den leverantörens adress.

Alla ytor – gränssnitt, API, MCP, delade formulär och vyer, automatiseringar – går via samma beslutspunkt för behörigheter, i kärnan. Det finns ingen privat väg för gränssnittet: det som skärmen inte visar är det som API:et inte har returnerat.

Det omvända gäller också: skärmen erbjuder inte det som skulle avvisas. Utan nivån Hantera kan Struktur-skärmen visas utan knappar eller pennor, och importen erbjuder inte att skapa en tabell; utan rätt att skapa eller ta bort rader erbjuder rutnätet varken en rad för att lägga till eller ”Ta bort”.

basedb är fri programvara från Eodia, en AI-nativ mjukvarustudio.