Grábrók · Borg
Hlaðvarpsklefi þar sem auðkenni er hönnunarákvörðun, ekki aðgangshlið
Opinn klefi í háskólabyggingu þjónar tvenns konar notendum sem ekki verður sinnt með sömu innskráningunni. Grábrók keyrir því tvær leiðir — og setur ábyrgðina þar sem hún á heima, ekki á innskráningarvegg.
“Spurningin var aldrei hvernig við bætum við innskráningu, heldur hvar auðkennið þarf að festast — og hvar það er einfaldlega fyrir.

Áskorunin
Grábrók stendur í almenningsrými í Háskólanum á Akureyri og þjónar tveimur hópum sem stangast á. Starfsfólk og nemendur vilja að upptakan sé bundin auðkenni sínu: að hún rati sjálfkrafa til þeirra, að hægt sé að fylgja henni eftir og að einhver beri ábyrgð á því sem sagt er. Gestir hafa ekkert slíkt auðkenni og eiga ekki að þurfa það — fyrirlesari í heimsókn, verðandi nemandi, foreldri á göngu um háskólasvæðið. Báðar einföldu lausnirnar duga skammt. Ef öllum er gert að skrá sig inn deyr gestanotkunin, og í klefa sem snýr að almenningi er hún oft mikilvægari en hin. Sé auðkenningu sleppt liggur efni á vélbúnaði háskólans, fer út í nafni hans og verður ekki rakið til nokkurrar manneskju.
Nálgunin
Klefinn keyrir tvær aðskildar leiðir í stað einnar málamiðlunar. Skráður notandi skannar QR-kóða af skjá klefans með símanum sínum, skráir sig inn með auðkenni háskólans og staðfestir svo sjálfur að tengja skuli klefann. Ekkert gerist í kyrrþey: pörunin verður ekki til nema notandinn samþykki hana sjálfur. Klefinn sækir þá skammlífa klefalotu — afmarkaða aðgangsheimild sem gildir fyrir þessa einu upptökulotu og ekkert annað — og tekur upp í hans nafni. Síminn sér um auðkenninguna, sem er kjarni málsins: enginn slær inn lykilorð á lyklaborði sem allir snerta, og klefinn þarf aðeins sönnun, einu sinni, fyrir því að hann sé að tala við réttu lotuna. Gestur ýtir aftur á móti á einn takka. Engin innskráning, enginn sími, enginn notandaaðgangur — sérstakt gestaauðkenni stendur að baki lotunni í stað raunverulegs notanda. Ekkert sem tekið er upp í klefanum fer sjálfkrafa í almenna birtingu, hvort sem notandinn er skráður inn eða ekki: upptökur úr klefanum eru vistaðar sem drög og manneskja tekur ákvörðunina um að birta þær. Ábyrgðin er þannig varðveitt með yfirferð á réttum stað, ekki með innskráningarvegg framan við mann sem hefur ekkert að fela. Miðlarinn sannreynir alltaf aðgangsheimildina, aldrei forritið sjálft, og hvorki eigandi né uppruni upptöku ræðst nokkru sinni af því sem klefinn segir um sjálfan sig.
Niðurstöður
Grábrók er hlaðvarpsklefi Háskólans á Akureyri, og verkefnið er tvær einingar sem vinna saman. Annars vegar skjáforritið inni í klefanum: sérsmíðað forrit á eigin vél sem tekur upp hljóðið, birtir QR-kóðann og stýrir öllu sem gerist á staðnum. Hins vegar Borg, bakendinn sem ég byggði — Next.js, Prisma og PostgreSQL — sem geymir upptökurnar, sannreynir auðkenni gegnum innskráningarkerfi háskólans og hýsir viðmót notenda og umsjónarfólks.
Það sem gerir verkefnið áhugavert er hvorki hljóðið né birtingin. Tveir einstaklingar geta notað sama klefann sömu klukkustundina og aldrei séð sama innskráningarskjáinn. Annar parar sig við auðkenni háskólans. Hinn þarf ekkert.
Tvær leiðir, ekki ein málamiðlun
Freistingin í svona kerfi er að finna eina leið sem á að duga öllum. Hún dugar engum. Ég hafnaði báðum einföldu útgáfunum af ásettu ráði og hannaði út frá því hvar auðkennið hefur raunverulegt hlutverk.
- Skráður notandi: QR-kóði á skjánum, skönnun með síma, innskráning með auðkenni háskólans og staðfesting notandans sjálfs á að tengja skuli klefann. Klefinn sækir klefalotuna við næstu fyrirspurn og tekur upp í réttu nafni.
- Gestur: einn takki á skjánum. Upptaka hefst strax. Sérstakt gestaauðkenni stendur að baki lotunni, engin manneskja er skráð fyrir henni, og upptakan er vistuð sem drög.
Rökin fyrir QR-pöruninni eru einföld. Enginn á að slá lykilorð inn á sameiginlegt lyklaborð í almenningsrými. Síminn er þegar auðkennistækið; hann sér um innskráninguna og klefinn fær aðeins staðfestingu, einu sinni, á því að hann sé að tala við réttu lotuna. Klefalotan er skammlíf, bundin við eina upptöku, og miðlarinn sannreynir hana alltaf. Klefanum er aldrei treyst fyrir því að segja hver notandinn er.
Hvar ábyrgðin situr
Gestaleiðin er ekki gat í kerfinu — hún er hin hliðin á sömu ákvörðun. Ekkert sem tekið er upp í klefanum fer sjálfkrafa í almenna birtingu, hvort sem notandinn er skráður inn eða ekki: upptökur úr klefanum eru vistaðar sem drög um leið og þær verða til, og manneskja tekur ákvörðunina um að birta þær. Ábyrgðin færist þannig frá innskráningarveggnum yfir á yfirferðina, þangað sem hún gerir gagn.
Sá sem tók upp sem gestur fær sína eigin upptöku strax í hendur: QR-kóða á skjánum eða tengil í tölvupósti — tengil sem vísar beint á þessa einu upptöku og ekkert annað. Sá sem skráði sig inn fær hana eftir annarri leið: upptakan fer sjálfkrafa í Borg um leið og hljóðnemanum er sleppt, og notandinn fær sjálfur tilkynningu þegar hún er komin. Hún birtist ekki aðeins á stjórnborði umsjónarfólks.
Það sem notandinn kenndi mér
Eldri útgáfa spurði notandann hvað ætti að gera við upptökuna áður en hún var send — hvort ætti að senda hana strax eða geyma hana í klefanum. Það aukaskref kostaði notanda upptöku. Skrefið var tekið út.
Því færri ákvarðanir sem klefinn krefst af manneskju í miðri upptöku, því betri er hann.
Sama hugsun ræður smáatriðunum. QR-kóðinn á biðskjánum endurnýjast sjálfkrafa svo hann sé aldrei útrunninn meðan enginn er í klefanum. Skýringarskjárinn spyr hvora leiðina eigi að útskýra í stað þess að bjóða upp á einn vegg af texta. Klefinn skráir sig sjálfur út eftir þriggja mínútna aðgerðaleysi og hreinsar allt staðbundið ástand — en útskráningin frestast ef upptaka eða sending stendur yfir, því ekkert kerfi á að henda gögnum til að standast eigin tímamörk.
Yfirbragðið
Biðskjárinn er heilsíðuljósmynd af Grábrókargígnum, gígnum sem klefinn dregur nafn af, dempuð og dekkt svo rauði litur háskólans og hvítt letur njóti sín ofan á. Skipulagið er tvískipt: nafn og leiðbeiningar vinstra megin, QR-kóði og tvær leiðir inn hægra megin. Hönnunin þjónar því að valið sé læsilegt, ekki því að skjárinn sé skrautlegur.
Bakgrunnsmynd á biðskjá: Jakub Hałun, Wikimedia Commons, CC BY-SA 4.0.
Uppruni og yfirtaka
Verkefnið er ekki mitt frá grunni. Fyrsta útgáfan varð til innan háskólans og var flutt í nýja kóðageymslu í ársbyrjun 2026, þar sem hún lá óhreyfð í rúma fimm mánuði. Ég tók formlega við í maí, gerði fullt stöðumat áður en ég breytti nokkurri hegðun og vann út frá því. Í framhaldinu skrifaði ég trausts- og auðkenningarlíkanið upp á nýtt fremur en að lagfæra það: upphaflega kerfið var hugsað út frá öðrum forsendum um hver ætti að sanna hver hann er, og þær forsendur voru það sem þurfti að breytast. Hugmyndin sjálf og fyrsta form viðmótsins lifa áfram, og upprunalegu höfundanna er getið í verkefninu sjálfu.
Það sem heldur kerfinu í skefjum
- Próf: 54 sjálfvirk próf eru skrifuð sérstaklega fyrir Grábrókarhlutann, innan heildarsafns prófa í Borg sem keyrir við hverja innsenda breytingu. Bregðist lotugeymslan er beiðninni hafnað í stað þess að treysta því sem klefinn segir.
- Geymslutími: upptökur úr klefanum eru tímabundnar. Næturkeyrsla eyðir þeim tíu dögum eftir að þær eru fyrst sóttar, eða tuttugu dögum eftir upptöku hafi enginn sótt þær. Upptökur sem gerðar eru í vafra og birtir þættir eru varanlegir.
- Aðgangur: allar leiðir sem breyta gögnum krefjast virkrar innskráningar, og umsjón klefaupptaka er bundin sérstöku, þröngt afmörkuðu hlutverki fremur en fullum stjórnandaréttindum í Borg.
Það sem ég tek með mér
Kerfi sem stendur í almenningsrými verður að þola tvenns konar fólk. Þar er auðkenni ekki hlið sem sett er framan á flæðið, heldur ákvörðun um staðsetningu — og sú ákvörðun kostaði margfalt meiri hugsun en upptakan sjálf. Hún reyndist vera allt verkefnið.
Tæknistaflinn
Myndir

Lærdómar
- Auðkenning er ekki eiginleiki sem bætt er framan á flæði, heldur ákvörðun um staðsetningu. Hver staður þar sem hún festist að óþörfu kostar notanda sem maður vildi fá.
- Sameiginlegri vél á að treysta fyrir sem allra minnstu. Með því að færa innskráninguna í síma notandans og gefa klefanum aðeins skammlífa aðgangsheimild, sem miðlarinn sannreynir, þurfti ekki að verjast heilum flokki vandamála — hann varð einfaldlega ekki til.
- Ábyrgð þarf ekki að birtast sem innskráningarveggur. Hún getur setið í yfirferðinni: upptaka sem er merkt drög um leið og hún verður til er ábyrgari en innskráning sem fælir gestinn frá.
- Því færri ákvarðanir sem klefinn krefst af manneskju í miðri upptöku, því betri er hann. Staðfestingarskref sem virtist saklaust kostaði notanda upptöku og var tekið út.
Tengd verkefni
Sjá öll verkefni →
BORG
Öruggur og samþættur gervigreindarvettvangur Háskólans á Akureyri. Sameinar ytri gervigreindarþjónustur og öfluga vinnslugetu innanhúss til að tryggja gagnafullveldi háskólans.

Þekkingarnet stofnunar
Litlar stofnanir ganga fyrir ósýnilegri byggingu — stjórnskipulagi, kerfum, stefnum og innbyrðis háðum sem búa fyrst og fremst í höfðum fólks. Hér er aðferðin til að gera þá byggingu spyrjanlega: Neo4j, JSON-LD, SHACL og leiðsla sem alltaf er óhætt að keyra aftur.

Sumarhús
Eigin innviðir og erindrekasamfélag: eigin vélar, eigin gögn, eigið efni. Erindrekarnir vinna verkin, mannshöndin ákveður.