From 365f2695ded5a8035fb151be1483500a66aed03a Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Tue, 29 Jun 2021 17:20:01 +0200 Subject: [PATCH] WIP: authentication --- src/caosdbcli.cpp | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/src/caosdbcli.cpp b/src/caosdbcli.cpp index d73eb44..e283088 100644 --- a/src/caosdbcli.cpp +++ b/src/caosdbcli.cpp @@ -27,6 +27,7 @@ #include "caosdb/info/v1alpha1/main.pb.h" #include "constants.h" #include "connection.h" +#include "authentication.h" #include "utils.h" auto main() -> int { @@ -36,24 +37,19 @@ auto main() -> int { << caosdb::LIBCAOSDB_VERSION_PATCH << ")" << std::endl; std::cout << "We don't miss the H of caos." << std::endl; - const auto pem_file_path = - caosdb::utils::get_env_var("CAOSDB_SERVER_CA_PEM", std::string()); - std::string pem = caosdb::utils::load_string_file(pem_file_path); + const auto pem_file = caosdb::utils::get_env_var("CAOSDB_SERVER_CA_PEM", std::string()); + const auto host = caosdb::utils::get_env_var("CAOSDB_SERVER_HOST", "localhost"); + const auto port_str = caosdb::utils::get_env_var("CAOSDB_SERVER_PORT", "8000"); + const auto port = std::stoi(port_str); - std::cout << "PEM" << pem << "\n"; - const std::string host = - caosdb::utils::get_env_var("CAOSDB_SERVER_HOST", "localhost"); - const std::string port_str = - caosdb::utils::get_env_var("CAOSDB_SERVER_PORT", "8000"); - const int port = std::stoi(port_str); - - auto cacert = std::make_shared<caosdb::PemCACertProvider>(pem); + auto auth = std::make_shared<caosdb::authentication::PlainPasswordAuthenticator>("tf", "vuY36moa"); + auto cacert = std::make_shared<caosdb::PemFileCACertProvider>(pem_file); auto config = - std::make_shared<caosdb::SslCaosDBConnectionConfig>(host, port, cacert); + std::make_shared<caosdb::SslCaosDBConnectionConfig>(host, port, cacert, auth); caosdb::CaosDBConnection connection(config); std::cout << std::endl << connection << std::endl; const auto &v_info = connection.getVersionInfo(); - const auto &build = v_info.build(); + // const auto &build = v_info.build(); // std::cout << "BUILD(" << build[0] << ")" << std::endl; std::cout << "VersionInfo(" << v_info.major() << "." << v_info.minor() << "." << v_info.patch() << ")" << std::endl; -- GitLab