Add env based config for LDAP addr
This commit is contained in:
parent
ca45203392
commit
467a449457
14
src/main.rs
14
src/main.rs
|
@ -7,6 +7,7 @@ extern crate tokio;
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
extern crate serde_derive;
|
extern crate serde_derive;
|
||||||
|
|
||||||
|
use std::env;
|
||||||
use std::str::{
|
use std::str::{
|
||||||
FromStr,
|
FromStr,
|
||||||
from_utf8,
|
from_utf8,
|
||||||
|
@ -32,6 +33,7 @@ pub enum AuthError {
|
||||||
Parse,
|
Parse,
|
||||||
Decode,
|
Decode,
|
||||||
LdapBind,
|
LdapBind,
|
||||||
|
LdapConfig,
|
||||||
LdapConnection,
|
LdapConnection,
|
||||||
LdapSearch,
|
LdapSearch,
|
||||||
}
|
}
|
||||||
|
@ -63,7 +65,11 @@ struct LdapUser {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn auth_user(auth: &BasicAuthentication) -> Result<LdapUser, AuthError> {
|
fn auth_user(auth: &BasicAuthentication) -> Result<LdapUser, AuthError> {
|
||||||
let ldap = match LdapConn::new("ldap://192.168.122.61:389") {
|
let ldap_server_addr = match env::var("LDAP_SERVER_ADDR") {
|
||||||
|
Ok(addr) => addr,
|
||||||
|
_ => return Err(AuthError::LdapConfig),
|
||||||
|
};
|
||||||
|
let ldap = match LdapConn::new(&ldap_server_addr) {
|
||||||
Ok(conn) => conn,
|
Ok(conn) => conn,
|
||||||
Err(_err) => return Err(AuthError::LdapConnection),
|
Err(_err) => return Err(AuthError::LdapConnection),
|
||||||
};
|
};
|
||||||
|
@ -187,7 +193,11 @@ fn router_service() -> Result<RouterService, std::io::Error> {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
let addr = "0.0.0.0:3000".parse().expect("Bad Address");
|
let addr_str = match env::var("LISTEN_ADDR") {
|
||||||
|
Ok(addr) => addr,
|
||||||
|
_ => "0.0.0.0:3000".to_string(),
|
||||||
|
};
|
||||||
|
let addr = addr_str.parse().expect("Bad Address");
|
||||||
let server = Server::bind(&addr)
|
let server = Server::bind(&addr)
|
||||||
.serve(router_service)
|
.serve(router_service)
|
||||||
.map_err(|e| eprintln!("server error: {}", e));
|
.map_err(|e| eprintln!("server error: {}", e));
|
||||||
|
|
Loading…
Reference in New Issue