Started as a rewrite of the core of AllianceAuth but has ballooned to a standalone auth system.
A major shift in project direction is in progress for two reasons:
- CCP released their own version of an ACL system with CREST endpoints on the way.
- I want to release a multitude of apps, many of which share functional components.
One means a complete rewrite of the access management system with the goal of mirroring the in-game system for an easy crossover. Imagine a world where you can import and export your auth ACL with citadels...
Two means repackaging all the functions into little lego blocks I can play with to create a range of apps quickly and easily.
This app is responsible for storing SSO tokens for use with CREST-capable apps. It handles redirects and callbacks, and is able to filter tokens by granted scopes.
This app will house all the EVE-related models: characters, corps, alliances, API keys. It needs to be able to update model information and understand when they're no longer needed.
API keys need to be sorted by granted masks. I'll probably do this in a manner similar to SSO scopes, with pre-defined Mask models.
This app will house Access Lists. It will depend on the EVE Model Management app.
It will have to provide a model mixin for determining if a character has access.
This app will populate ACLs from standings, either API keys or CREST. It will depend on the SSO Management and EVE Model Management apps.
Standings will have to update automatically and trigger ACL reassessment upon change.
This app will house the ExtendedGroup models. Maybe with an ACL mixin.
This app will be the abstract base from which every other service is constructed.
It will contain a generic base service with the required functions (Add, Remove users).
Further abstract base services will include dabatase support and API support.
Another mixin will provide group functionality.
No true models will be created here, but will serve as a template for every service to come.
As apps are written, they will be integrated into this repo to form Voltron Adarnauth.
- Character
- Fetch from public API
- Async update task
- Determine owning user
- Handle character deletion
- Corp
- Fetch from public API
- Async update task
- Handle corp closure
- Alliance
- Fetch from public API
- Async update task
- Handle alliance closure
- API Key
- Update from authorized API
- Populate characters
- Populate corp
- API verified permission
- Verify via SSO
- Standings
- Pull from authorized API
- Character
- Auto-populate
- Corp
- Auto-populate
- Alliance
- Auto-populate
- Standing
- Auto-populate
- Site access permission
- Extend Group Model
- Owner/Admin/Member tiers
- Nesting (parent/child)
- Auto Assignment
- Process SSO callback
- Generate missing user accounts
- Owner hash matching
- Internal redirect
- Hash matching
- Session identity verification
- View redirect
- Auto-cleanup
- Mumble
- Base service functions
- Group mapping
- Front-end creation
- Signals
- Openfire
- Base service functions
- Broadcast
- Group mapping
- Front-end creation
- Signals
- Phpbb3
- Base service functions
- Group mapping
- Front-end creation
- Signals
- Discord
- Base service functions
- Broadcast
- Group mapping
- Front-end creation
- Signals
Tolerate users pushing buttons on the admin site I might not like.
- access
- authentication
- eveonline
- groupmanagement
- ldap_service
- mumble
- openfire
- phpbb