-
-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Authentication WIP #224
Authentication WIP #224
Conversation
@Caznix @haywoodspartan @WilliamAnimate Thoughts on handling the player authentication in the link middleware like I have done here? I'm thinking it should be a reasonable way to handle that, but we will need to add a DB URL to the link config JSON file if we go this route. I had it as it's own plugin but I think its best to keep plugin types that we have a hard dependency on (such as link) to a minimum. |
@Caznix Does this look right to you? |
Added some new base FNs to the plugin spec for the new API version
static ref AUTHENTICATED_USERS: Arc<RwLock<HashMap<Sid, AuthState>>> = | ||
Arc::new(RwLock::new(HashMap::new())); | ||
|
||
// TODO: Obviously, this is not secure. This is just for testing purposes, |
Check notice
Code scanning / devskim
A "TODO" or similar was left in source code, possibly indicating incomplete functionality Note
New plugin api version
…erver-that-the-client-is-really-the-correct-game-client
This will serve as auth until the horizon_network_api crate is created to replace link plugins. This Will not be the final auth system and is in no way bullet-proof but merely establishes the beginnings of the API. |
This pull request's primary goal is adding authentication features to the
community_link_plugin
and cleaning up dependencies in Cargo.toml files. Notable changes include adding authentication structures and logic, modifying thePluginConstruct
implementation, and updating theListner
struct to handle authentication events.Authentication Features:
plugins/community_link_plugin/src/lib.rs
: AddedAuthCredentials
andAuthState
structures to handle user authentication data.plugins/community_link_plugin/src/lib.rs
: Implemented authentication logic, including storing authenticated users and validating credentials.plugins/community_link_plugin/src/lib.rs
: Modified theListner
struct to handle authentication events and replicate auth state across servers.Dependency Management:
backends/stars_beyond/Cargo.toml
: Addedserde
dependency.plugins/chronos_plugin/Cargo.toml
: Removed auto-generated plugin dependencies.