fix: use configured DN
This commit is contained in:
parent
10d5a1c515
commit
c824c62929
@ -14,6 +14,7 @@
|
|||||||
//
|
//
|
||||||
// You should have received a copy of the GNU General Affero Public License
|
// You should have received a copy of the GNU General Affero Public License
|
||||||
// along with the WebLDAPPasswd. If not, see <https://www.gnu.org/licenses/>.
|
// along with the WebLDAPPasswd. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
use handlebars::Handlebars;
|
||||||
use ldap3::LdapConn;
|
use ldap3::LdapConn;
|
||||||
use ldap3::exop::PasswordModify;
|
use ldap3::exop::PasswordModify;
|
||||||
use ldap3::result::{LdapError, Result};
|
use ldap3::result::{LdapError, Result};
|
||||||
@ -21,6 +22,7 @@ use rocket_contrib::json::Json;
|
|||||||
|
|
||||||
use rocket::post;
|
use rocket::post;
|
||||||
use serde_derive::{Deserialize, Serialize};
|
use serde_derive::{Deserialize, Serialize};
|
||||||
|
use serde_json::json;
|
||||||
|
|
||||||
use crate::context::Context;
|
use crate::context::Context;
|
||||||
|
|
||||||
@ -45,7 +47,10 @@ pub struct Response {
|
|||||||
|
|
||||||
fn change_password(data: Json<PasswordData>,
|
fn change_password(data: Json<PasswordData>,
|
||||||
context: rocket::State<Context>) -> Result<()> {
|
context: rocket::State<Context>) -> Result<()> {
|
||||||
let dn = format!("uid={},ou=People,dc=fiveop,dc=de", &data.username);
|
|
||||||
|
let dn = Handlebars::new()
|
||||||
|
.render_template(&context.dn, &json!({"username" : &data.username}))
|
||||||
|
.expect("Unexpected DN template error. Was tested in config.rs");
|
||||||
|
|
||||||
let mut ldap = LdapConn::new(&context.ldap_url)?;
|
let mut ldap = LdapConn::new(&context.ldap_url)?;
|
||||||
ldap
|
ldap
|
||||||
|
@ -5,8 +5,9 @@ use serde_json::json;
|
|||||||
use crate::config::Config;
|
use crate::config::Config;
|
||||||
|
|
||||||
pub struct Context {
|
pub struct Context {
|
||||||
pub ldap_url: String,
|
pub dn: String,
|
||||||
pub index_html: String,
|
pub index_html: String,
|
||||||
|
pub ldap_url: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Context {
|
impl Context {
|
||||||
@ -19,7 +20,10 @@ impl Context {
|
|||||||
config.headline
|
config.headline
|
||||||
))?;
|
))?;
|
||||||
|
|
||||||
Ok(Context{ldap_url: config.ldap_url.clone(),
|
Ok(Context{
|
||||||
index_html})
|
dn: config.dn.clone(),
|
||||||
|
index_html,
|
||||||
|
ldap_url: config.ldap_url.clone(),
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user