Load a list of clients
This commit is contained in:
10
src/main.rs
10
src/main.rs
@ -12,10 +12,11 @@ use basic_oidc::constants::{
|
||||
DEFAULT_ADMIN_PASSWORD, DEFAULT_ADMIN_USERNAME, MAX_INACTIVITY_DURATION, MAX_SESSION_DURATION,
|
||||
SESSION_COOKIE_NAME,
|
||||
};
|
||||
use basic_oidc::controllers::{admin_controller, settings_controller};
|
||||
use basic_oidc::controllers::assets_controller::assets_route;
|
||||
use basic_oidc::controllers::login_controller::{login_route, logout_route};
|
||||
use basic_oidc::controllers::settings_controller;
|
||||
use basic_oidc::data::app_config::AppConfig;
|
||||
use basic_oidc::data::client::ClientManager;
|
||||
use basic_oidc::data::entity_manager::EntityManager;
|
||||
use basic_oidc::data::user::{hash_password, User};
|
||||
use basic_oidc::middlewares::auth_middleware::AuthMiddleware;
|
||||
@ -71,6 +72,9 @@ async fn main() -> std::io::Result<()> {
|
||||
let listen_address = config.listen_address.to_string();
|
||||
|
||||
HttpServer::new(move || {
|
||||
let clients = ClientManager::open_or_create(config.clients_file())
|
||||
.expect("Failed to load clients list!");
|
||||
|
||||
let policy = CookieIdentityPolicy::new(config.token_key.as_bytes())
|
||||
.name(SESSION_COOKIE_NAME)
|
||||
.secure(config.secure_cookie())
|
||||
@ -82,6 +86,7 @@ async fn main() -> std::io::Result<()> {
|
||||
.app_data(web::Data::new(users_actor.clone()))
|
||||
.app_data(web::Data::new(bruteforce_actor.clone()))
|
||||
.app_data(web::Data::new(config.clone()))
|
||||
.app_data(web::Data::new(clients))
|
||||
|
||||
.wrap(Logger::default())
|
||||
.wrap(AuthMiddleware {})
|
||||
@ -108,6 +113,9 @@ async fn main() -> std::io::Result<()> {
|
||||
.route("/settings", web::get().to(settings_controller::account_settings_details_route))
|
||||
.route("/settings/change_password", web::get().to(settings_controller::change_password_route))
|
||||
.route("/settings/change_password", web::post().to(settings_controller::change_password_route))
|
||||
|
||||
// Admin routes
|
||||
.route("/admin/clients", web::get().to(admin_controller::clients_route))
|
||||
})
|
||||
.bind(listen_address)?
|
||||
.run()
|
||||
|
Reference in New Issue
Block a user