Gebruikersrechten beheer

Status
Niet open voor verdere reacties.

dropl

Verenigingslid
Lid geworden
14 jan 2006
Berichten
1.370
Hoi, ik ben bezig met een projectje in C++. Het moet een server applicatie worden waarbij gebruikers accounts met gespecificeerde rechten moeten kunnen hebben. Het geheel ondersteunt laadbare externe modules. Daar ligt nou ook een beetje het probleem. Als je een klasse, laat ik zeggen, User hebt dan staat die ergens op de heap. Omdat modules in dezelfde address space draaien zouden die dus, al is misschien een beetje ver gezocht, die User kunnen veranderen.
Nou heb ik daar hetvolgende op bedacht. Een User krijgt een array met pointers naar rechten die met een enum statisch incompileerd worden, zodat deze in read only geheugen zitten. Die array met pointers worden met een private RSA key gesigned en de User krijgt de public key toegewezen. De private key maak ik op de stack en bestaat dus maar korte tijd. Zo kan de integriteit van de User altijd gecontroleerd worden.
Blijft mijn vraag nog over: is dit achterlijk onhandig? Of weet iemand een verbetering, want ook die public key en signature leven op de heap en kunnen ook nog overschreven worden. En, ohja, voor het gemak: de hele bende moet ook nog cross-platform zijn. Daarvoor gebruik ik wxWidgets

Groeten en alvast bedankt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan