[cap-talk] Ok, I'm being a bit cheeky here. I'm half way through designing a new
Jed at Webstart
donnelley1 at webstart.com
Tue Nov 21 19:43:38 CST 2006
At 06:49 AM 11/21/2006, Sarah Crowther wrote:
>Ok, I'm being a bit cheeky here. I'm half way through designing a
>new MUD system, details available on request, and I found I needed a
>good access control system. I was pointed towards Capability Systems
>as a solution, and they look perfect. Only problem - I have no idea
>how to implement one, even less in the system I am putting in place
>for my MUD (should be relatively easy, if I knew what I was doing).
>I would appreciate any pointers, and/or people rushing to help me
>code to get their name up in lights (or more likely hidden in little
>letters in the source code for a MUD which will never achieve
>anything other than a listing on MudConnector and an average user
>base of high fives, low sixes).
>Feel free to ignore me, shout me down, point me to a more
>appropriate place to ask, and/or flame me mercilessly until I cry
>like a little girl.
The notion of a "capability" is simply a permission token that can be
communicated. There many ways to implement them. At the highest
level they can be implemented as either protected descriptors or as
blocks of data (e.g. encrypted).
If you want to distribute capabilities around a network (e.g. the
Internet) then I suggest capabilities as data - e.g. as with:
The capability concept is little more than using good object oriented
programming - where the notion of
an object (e.g. as a parameter that can be communicated) includes
access to the "object".
If you want to communicate object access (capabilities) within a
program or single system then
a descriptor model may be appropriate - e.g. see Toby's suggestion
about the E-language.
Good luck with your MUD project!
More information about the cap-talk