NyhetBolt · Databas · Behörigheter

Bolt-databas: behörighetsfel när nya tabeller är privata – öppna inte för alla

Från den 30 oktober 2026 håller Bolt nya databastabeller privata som standard, och appen behöver uttryckliga rättigheter för att läsa eller skriva i dem. Får du ett behörighetsfel kan det höra ihop med ändringen, men Bolt säger inte att det alltid gör det. Här får du färdiga önskemål till Bolt och ett prov som visar vad en utloggad och en inloggad besökare faktiskt ser.

Publicerad · Senast kontrollerad

Ett ljust fackskåp med tolv fack i tre rader står på en ljus yta. Elva fack är svarta med ett litet handtag, ett i mittenraden är blågrönt. Ett rött block med en ljus ruta står framför nedre högra facket, en röd stång lutar över vänstra hörnet från en ljus kloss, och ett svart block ligger ovanpå.
Elva fack är stängda och ett är öppet. Så ska en ny tabell behandlas: öppna det appen behöver, inte hela skåpet för att felet ska försvinna.

Kort sagt

Be Bolt rätta rättigheterna för just den tabell som felar, inte öppna databasen. Prova sedan appen utloggad och med två inloggade testkonton, och öppna säkerhetssidan igen. Ett fel som försvinner visar bara att appen kommer åt tabellen. Det visar inte att rätt personer gör det.

Vad Bolt ändrade

Enligt Bolts release notes för veckan 26 oktober till 1 november håller Bolt database från den 30 oktober tabeller privata som standard. Appen behöver uttryckliga rättigheter för att läsa eller skriva i dem. Ändringen gäller nya tabeller skapade efter den 30 oktober, och befintliga databaser berörs inte. När Bolt skapar en ny databas bör rättigheterna enligt notisen sättas upp åt dig. Bolt skriver should, så se det som en förväntan, inte ett löfte. Får du ett behörighetsfel säger notisen att du kan be Bolt rätta tabellens rättigheter.

Notisen är kort och lämnar fyra saker öppna:

Rättigheter och policyer, utan kod

Bolts säkerhetsdokumentation beskriver en tabell som ett kalkylark: en tabell kan rymma alla order, med en order på varje rad. Row-level security, RLS, är den funktion i databasen som avgör vilka rader en förfrågan får läsa eller ändra. Policyer är reglerna som säger vem som når vilka rader, till exempel att en person bara ser de rader hen själv har skapat. Vill du förstå databasen i stort först finns artikeln om vilken databas du ska välja.

Två sidor måste läsas ihop, och Bolt förklarar inte sambandet på dem. Notisen talar om permissions och nämner inte RLS. Säkerhetssidan talar om RLS och policyer, är odaterad och nämner inte ändringen. Där står också att Bolt slår på RLS för tabeller som Bolt skapar, att du själv ska kontrollera tabeller du lägger till och att en tabell utan RLS kan läsas och ändras av vem som helst. Vår slutsats: ”privat som standard” är inget skäl att hoppa över kontrollen. Hur en policy skrivs lämnar vi åt Bolt och dess dokumentation.

Fallan: felet försvinner för att allt öppnades

Enligt säkerhetssidan kan Bolt, om du inte har bett om inloggning, skriva policyer som låter varje besökare visa, lägga till, ändra och ta bort data. Säkerhetssidan visar då varningen RLS Policy Always True: en policy saknar villkor som begränsar vem som når en rad. Bolt kallar den acceptabel bara om du kan leva med att varje besökare kan ändra eller ta bort datan.

Bolt kopplar inte det här till ändringen i oktober. Kopplingen är vår: den som har bråttom och skriver ”få det att fungera” beställer ett resultat, inte en gräns. Appen kan börja fungera precis lika bra om tabellen blev öppen för alla. Säg därför vad som ska gälla per tabell. Bolts dokumentation ger tre val, som du ser i tabellen nedan.

Färdiga önskemål till Bolt

De tre valen och exemplen på data kommer från Bolt, men formuleringarna är våra och har inte körts. Byt ut hakparenteserna mot dina egna namn.

LägePassar förSkriv till Bolt
Du får ett felEn sida som inte kommer åt sin dataJag får ett behörighetsfel på sidan [sida]. Ta reda på vilken tabell det gäller och rätta rättigheterna bara för den. Ge ingen mer åtkomst än appen behöver. Förklara på vanlig svenska vem som nu får läsa, lägga till, ändra och ta bort.
Besökare får bara läsaPortfolio, meny, blogginläggÄndra rättigheterna för tabellen [inlägg] så att besökare kan läsa men inte lägga till, ändra eller ta bort.
Besökare får skicka inKontaktformulär, anmälningar, omdömenÄndra rättigheterna för tabellen [meddelanden] så att besökare kan lägga till rader men inte läsa, ändra eller ta bort det som andra har skickat in.
Data ska vara privatKundorder, meddelandenLägg till inloggning med e-post. Ändra sedan rättigheterna för tabellen [order] så att inloggade bara kan visa, lägga till, ändra och ta bort sina egna rader.
Du vill kontrollera alltNär du är osäker på vad som är skyddatKontrollera att row-level security är på för alla tabeller i min databas och att varje policy bara ger den åtkomst min app behöver.

Inloggningsraden finns av ett skäl. Enligt Bolt kan en policy begränsa data till bestämda personer först när appen vet vem varje besökare är. Utan inloggning finns inget ”sina egna” att begränsa till.

Provet: utloggad och två inloggade

Det här provet beskriver inte Bolt, det är vår metod, och vi har inte kört den i Bolt. Du behöver inte läsa kod. Gör det i den app dina besökare använder och med påhittade uppgifter. Samma tanke finns stegvis i guiden om behörigheter i Lovable, där verktyget är ett annat.

1
Skriv facit först. Fyll i tabellen nedan för din app innan du provar. Annars är det lätt att godkänna det du ser.
2
Skapa två testkonton. Logga in som A och lägg in raden ”Provorder A”. Logga ut och gör samma sak som B med ”Provorder B”.
3
Prova utloggad. Öppna appens adress i ett privat fönster i webbläsaren. Gå igenom varje sida, också genom att klistra in adressen till en sida som ska kräva inloggning.
4
Prova som A och som B. Var och en ska se sin egen rad och inte den andras. Prova också att ändra den egna raden, så att du inte bara provar läsning.
5
Jämför och städa. Stämmer en ruta inte, skriv till Bolt vad du gjorde, vad du såg och vad som ska gälla. Ta bort testkonton och provrader när du är klar.
VemTabell som bara ska läsasFormulärPrivata order
UtloggadSer alla inlägg, kan inte ändraKan skicka in, ser inte andrasSer ingen order
Inloggad ASammaSammaSer Provorder A, inte B
Inloggad BSammaSammaSer Provorder B, inte A

Facit ovan är ett påhittat exempel. Din app kan ha andra regler, och då ska facit se annorlunda ut. Felet kan också gå åt andra hållet: visar rutan att något ska fungera men appen ger ett behörighetsfel är rättigheten för snäv, och då är första önskemålet i listan rätt väg.

Vad provet inte visar

Provet ser bara appens skärmar. Enligt Bolt kan vem som helst som besöker en sida skicka förfrågningar direkt till databasen utan att gå via skärmarna. Att en rad inte syns på sidan bevisar alltså inte att databasen vägrar lämna ut den. Därför behövs också säkerhetssidan, som finns på alla planer:

1
Öppna den. Logga in i projektet, klicka på databasikonen högst upp i mitten och välj Security. Sidan heter Security Audit.
2
Läs varningarna. De märks Error, Warning eller Info, med det allvarligaste först. Bolt visar RLS Policy Always True även när öppen åtkomst är det du vill ha, så avgör om åtkomsten är avsedd innan du trycker på något.
3
Rätta vid behov. Knappen Ask Bolt to fix syns bara om du kan redigera projektet och Bolt har hittat minst ett problem.
4
Öppna sidan igen. Bolt råder dig att göra det varje gång databasen har ändrats. Gör därefter provet om.

Säkerhetssidan har sin egen gräns. Den kontrollerar bara databasen, inte hela projektet och dess kod. Vår tolkning är också att en tom lista inte kan säga att Provorder A är rätt persons rad, för det vet bara du. Därför behöver du både sidan och provet. Fler fallgropar i appar du inte har skrivit själv finns i guiden om säkerhet och personuppgifter.

Definition av klart

Du har ett skrivet facit per tabell. Utloggad, A och B ser det facit säger, och den egna raden går att ändra. Säkerhetssidan är öppnad efter den senaste databasändringen, och varje kvarvarande RLS Policy Always True gäller data du kan låta alla besökare ändra eller ta bort. Testkonton och provrader är borttagna.

FAQ

Beror alla behörighetsfel i Bolt på ändringen?

Inte nödvändigtvis. Bolt skriver att ett behörighetsfel kan höra ihop med ändringen, inte att det alltid gör det. Ändringen gäller nya tabeller skapade efter den 30 oktober 2026.

Berörs mina befintliga databaser?

Enligt Bolt berörs inte befintliga databaser. Hur en ny tabell i en befintlig databas behandlas står inte uttryckligen i notisen, så prova den tabellen.

Hur ber jag Bolt rätta felet utan att öppna för alla?

Nämn sidan och tabellen, be Bolt rätta rättigheterna bara för den tabellen och säg vad besökare ska få göra. Öppna sedan säkerhetssidan igen och gör provet med utloggad och inloggad besökare.

Vad betyder varningen RLS Policy Always True?

En policy saknar villkor som begränsar vem som når en rad. Bolt skriver att varningen bara är acceptabel om du kan leva med att varje besökare kan ändra eller ta bort den datan.


Officiella källor · kontrollerade 6 nov 2026

Redaktionen har inte kört Bolt eller provat stegen i något projekt. Sakuppgifterna bygger enbart på Bolts två sidor, som kan ändras. Önskemålen, provet och det påhittade facit är våra och märkta i texten.