În sistemele de operare ale computerelor și în alte cadre software, un token de acces este orice structură de date care conține informațiile de securitate necesare unui proces pentru a accesa un obiect securizat sau un alt proces care necesită autorizare. Obiectele securizate sunt de obicei date din sistemul de fișiere cu privilegii de citire și scriere definite, iar un proces este orice alt program sau serviciu care necesită autorizare pentru a-și accesa funcțiile. În timp ce un token de acces este pur și simplu un container capabil să dețină orice informație, este de obicei folosit pentru a stoca privilegiile utilizatorului.
Conceptul de token de acces a fost conceput și utilizat în primul rând de sistemele și programele de operare Microsoft®, dar utilitatea lor le-a dus în altă parte. Interfața de programare a aplicației (API) pentru Google descrie o metodă de utilizare a jetoanelor de acces în timpul programării aplicațiilor care trebuie să acceseze datele asociate cu contul unui utilizator Google. Unele dintre marile platforme de rețele sociale folosesc, de asemenea, jetoane de acces în API-ul lor.
Practic, atunci când un utilizator se autentifică într-un sistem de operare sau într-un cadru de sistem software, sistemul verifică utilizatorul și parola într-o bază de date de securitate și este creat un token de acces care identifică utilizatorul la orice obiect sau proces din sistem. Orice proces – cum ar fi aplicațiile, programele sau serviciile – care sunt pornite de utilizator va purta jetonul de acces cu ele. Tokenul de acces, deci, trebuie să stocheze mai multe biți de date pe care un alt program sau obiect verifică pentru a acorda acces.
Tokenurile de acces conțin identificatorii de securitate (SID), de obicei coduri numerice, pentru utilizator, orice grup de utilizatori din care face parte utilizatorul și sesiunea curentă de conectare. Tokenul conține, de asemenea, o listă cu toate privilegiile pe care utilizatorul sau grupurile le sunt permise. Există câteva tipuri diferite de jetoane de acces, așa că token-ul trebuie să-și identifice și tipul, fie primar, fie uzurpare. Un simbol de acces primar este tipul standard utilizat, dar un simbol de uzurpare a identității poate fi creat și pentru a acționa în numele utilizatorului.
Când un token de acces este chemat să-și facă treaba, acesta întâlnește un monitor de referință de securitate (SRM), un serviciu care monitorizează accesul la obiecte și procese din sistem. SRM trage în sus descriptorul de securitate al obiectului sau al procesului pentru comparare cu jetonul de acces. Descriptorul de securitate conține o listă de control al accesului (ACL), unde fiecare intrare de control al accesului (ACE) definește anumite permisiuni pentru acel obiect sau proces. De exemplu, în cazul unui fișier din sistem, descriptorul de securitate conține informații despre utilizatorii sau grupurile care au permisiunea de a citi sau scrie în fișier. Dacă jetonul de acces care solicită acces pentru deschiderea sau editarea fișierului nu se potrivește cu permisiunile din descriptorul de securitate, accesul eșuează și utilizatorului i se interzice accesul la fișier.