Konsollen er et privilegium: hvorfor den kræver sin egen tilladelse

En konsol ligner en skærm, men er en skal. Og "må ændre indstillinger" og "må åbne en skal" er to forskellige magter; at tage den ene for den anden er at dele root ud.

AtlasPVE ·

Denne artikel besvarer

  • proxmox konsoltilladelse
  • hvad er sys.console i proxmox
  • proxmox give bruger skaladgang
  • proxmox rollerettigheder
  • proxmox vnc adgangsret

En konsol ligner en skærm. Du åbner den, et vindue dukker op, tekst løber i det. Det føles som "jeg kigger bare".

Men en konsol er en skal. Og serverens skal er den højeste ret, der findes på den maskine.

To forskellige magter

At ændre indstillinger. Du kan gøre det, fladen tillader. Grænserne er klare, for det er fladen, der trækker dem.

At åbne en skal. Du kan gøre hvad som helst. Også det, fladen ville nægte, og det, fladen aldrig har hørt om.

Disse to magter rummer ikke hinanden. At have den ene kræver ikke den anden, og vigtigere: at tildele den ene bør ikke betyde at tildele den anden.

Skellet er ægte og ses i de indbyggede roller

Proxmox binder konsollen til sin egen tilladelse, ikke til det almene "må ændre". At det er ægte, ses i de indbyggede roller: rollen som systemadministrator bærer revisions-, konsol- og logrettighederne og indeholder ingen ændringsret.

Det er altså en gyldig opsætning at give nogen retten til at åbne en konsol uden retten til at ændre indstillinger. Og omvendt også.

Den almindelige situation, der gør dette vigtigt

Proxmox tillader egne roller, og sådan en rolle er meget almindelig: en operatør, der må ændre netværksindstillinger, men ikke skal nå serverens skal.

Det er et rimeligt ønske. At redigere netværksopsætningen og at køre en hvilken som helst kommando på serveren er ikke det samme.

Men ræsonnerer et produkt "må vedkommende ændre, må vedkommende også åbne konsollen", giver det den operatør en rodskal uden at bemærke det. Vedkommende får gennem panelet det, vedkommende ikke ville få i Proxmox.

Det almene princip, der følger

En rettighedsmodel skal kopiere platformens egen definition, ikke omskrive den.

En port, der siger "omtrent det samme", virker rigtigt i almindelige opsætninger, og ingen bemærker noget. Hullet åbner sig den dag, en usædvanlig rolle bliver skabt. Og når den dag kommer, husker ingen en tilnærmelse skrevet år tidligere.

Samme overligger gælder filadgang

Endnu en detalje, for den overses ofte: adgang til serverens filsystem svarer til en skal, selv når den kun er læsende.

Grunden er enkel: adgangskodefiler, nøgler og klyngehemmeligheder ligger i det filsystem. Den, der med en kun læsende ret kan læse filer, kan allerede få alt at vide.

Filadgang kan altså ikke tildeles med en ret til at "kigge"; den kræver samme overligger som en skal.

Hvad Atlas gør

I Atlas er konsollen, fjernskallen og filadgangen bundet til kun konsoltilladelsen. Ændringsretten alene åbner ikke disse flader.

Sådan har det ikke altid været, og artiklen må slutte ærligt: før accepterede disse flader også ændringsretten. Kommentaren i koden sagde det rigtige, den sagde "modstykket er konsoltilladelsen", men koden gjorde noget andet.

Det blev fundet ved at måle mod Proxmox' egen definition, og det blev rettet. Måleresultatet var tydeligt: Proxmox binder skallen kun til konsoltilladelsen og accepterer ikke ændringsretten.

Den virkelige vægt bør også siges, som den er: det kunne ikke udnyttes med indbyggede roller, for den eneste indbyggede rolle, der indeholder ændringsretten, har også konsoltilladelsen. Risikoen lå i egne roller, altså i eksemplet med netværksoperatøren ovenfor.

Den lære, der følger, gælder også produktet selv: at en kommentar har ret, betyder ikke, at koden har ret. De to skal måles hver for sig.

Kilder

Proxmox’ egen dokumentation. På engelsk, og den har det sidste ord i dette spørgsmål.

Relaterede artikler

Hvordan ser det ud inde i Atlas?

Gå til produktsiden