Added authentication got Marti API TLS config fetching

This commit is contained in:
2026-08-06 15:01:08 -03:00
parent 980107e00b
commit d35ccd58e1
+8 -2
View File
@@ -84,7 +84,12 @@ fn response_error_details(response: reqwest::blocking::Response) -> String {
} }
} }
fn fetch_enrollment_config(host: &str, enroll_port: &str) -> Result<EnrollmentConfig, String> { fn fetch_enrollment_config(
host: &str,
enroll_port: &str,
username: &str,
password: &str,
) -> Result<EnrollmentConfig, String> {
let url = format!( let url = format!(
"https://{}:{}/Marti/api/tls/config", "https://{}:{}/Marti/api/tls/config",
host.trim(), host.trim(),
@@ -94,6 +99,7 @@ fn fetch_enrollment_config(host: &str, enroll_port: &str) -> Result<EnrollmentCo
let response = enrollment_http_client()? let response = enrollment_http_client()?
.get(&url) .get(&url)
.basic_auth(username.trim(), Some(password.to_string()))
.send() .send()
.map_err(|e| format!("failed to fetch {}: {}", url, e))?; .map_err(|e| format!("failed to fetch {}: {}", url, e))?;
@@ -228,7 +234,7 @@ pub fn enroll_and_connect(
host, enroll_port, server_name, normalized_client_uid host, enroll_port, server_name, normalized_client_uid
); );
let enrollment_config = fetch_enrollment_config(host, enroll_port)?; let enrollment_config = fetch_enrollment_config(host, enroll_port, username, password)?;
let (ca_cert_pem, client_cert_pem, client_key_pem) = enroll_client_certificate( let (ca_cert_pem, client_cert_pem, client_key_pem) = enroll_client_certificate(
host, host,
enroll_port, enroll_port,