Sartre - An existential framework. It doesn't get in your way; it just is.
- Authenticity: A Standalone Token-based Authentication Server Framework (sorta OAuth-ishy)
- RPC Javascript->Python
- Remote Filesystem w/Editor
- Pub/Sub
- Key/Value Store
sh install.sh
or
source install.sh
or
. install.sh
python -mauthenticity.auth_core
python -msartre.websvr
(actually the websocket server serves up static files, too)
Designed to be a mostly-dependency free, standalone, token-based authentication server that's sorta OAuth-ishy. Since OAuth is more of a guideline instead of a protocol, interop doesn't really exist.
Originally, I used bottle for this but I eventually just used straight WSGI for ease of use.
Authenticity uses a pluggable backend. It defaults to an in-memory backend.
Standalone: exists in its own package, seperate from the rest of sartre.
These two will be the most frequently used calls:
-
u = username
-
p = password
If you authenticate, returns (access_token,username,userinfo)
If you fail, returns ('','',{})
-
t = access token
-
g = group name
Returns: [bool] whether your token is authorized for the group group name
These two are used less often:
-
t = token
What the auth server giveth, it can also taketh away. Note: This just invalidates the token, it doesn't end sessions or free any other resources.
Returns: {}
-
t = token
Reget the user info using the token.
You can use this to switch backends (Auth objects)
-
a = auth object
sets the default backend (Auth object) to a
returns: None
Returns: default backend (Auth object)
TBD
TBD
TBD
TBD
- JSON-RPC2 influenced protocol
- uses websockets
- async
- load(filename)
- fs_load(filename)
- save(filename,filedata)
- fs_save(filename,filedata)
- filesystem_walk(filename,filedata)
- fs_walk(filename,filedata)
- pub(channel,message)
- sub(channellist)