summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorKjetil Orbekk <kj@orbekk.com>2022-09-24 14:23:44 -0400
committerKjetil Orbekk <kj@orbekk.com>2022-09-24 14:23:44 -0400
commit96ac24a0c5ef16c817322a629d0fcbc485d86948 (patch)
treec24d5e010d2a6a34829a7f027d52a889648f0a24 /server
parent112d6d5063d1c6ef8ddf4d827decbfaf0639dbc7 (diff)
Add initial server project
Diffstat (limited to 'server')
-rw-r--r--server/.env1
-rw-r--r--server/Cargo.toml12
-rw-r--r--server/Rocket.toml4
-rw-r--r--server/src/main.rs35
4 files changed, 52 insertions, 0 deletions
diff --git a/server/.env b/server/.env
new file mode 100644
index 0000000..a7bcd3f
--- /dev/null
+++ b/server/.env
@@ -0,0 +1 @@
+RUST_LOG=debug
diff --git a/server/Cargo.toml b/server/Cargo.toml
new file mode 100644
index 0000000..7c149ca
--- /dev/null
+++ b/server/Cargo.toml
@@ -0,0 +1,12 @@
+[package]
+name = "server"
+version = "0.1.0"
+edition = "2021"
+
+[dependencies]
+anyhow = "1.0.65"
+dotenv = "0.15.0"
+log = "0.4.17"
+env_logger = "0.8.4"
+openidconnect = "2.3.2"
+rocket = "0.5.0-rc.2"
diff --git a/server/Rocket.toml b/server/Rocket.toml
new file mode 100644
index 0000000..30cfa17
--- /dev/null
+++ b/server/Rocket.toml
@@ -0,0 +1,4 @@
+[development]
+address = "localhost"
+port = 11120
+secret_key = "1SmYoERqnfzf8dhTNEMp1VYrK7UCYhCbijQtSaF5LOI="
diff --git a/server/src/main.rs b/server/src/main.rs
new file mode 100644
index 0000000..b60f699
--- /dev/null
+++ b/server/src/main.rs
@@ -0,0 +1,35 @@
+#[macro_use] extern crate rocket;
+
+#[get("/")]
+fn index() -> &'static str {
+ "Hello, World!"
+}
+
+#[rocket::main]
+async fn main() -> Result<(), anyhow::Error> {
+ dotenv::dotenv().ok();
+ env_logger::init();
+ log::debug!("hello");
+
+ use openidconnect::core::{
+ CoreAuthenticationFlow, CoreClient, CoreProviderMetadata, CoreResponseType,
+ CoreUserInfoClaims,
+ };
+ use openidconnect::{
+ AccessTokenHash, AuthenticationFlow, AuthorizationCode, ClientId, ClientSecret, CsrfToken,
+ IssuerUrl, Nonce, PkceCodeChallenge, RedirectUrl, Scope,
+ };
+
+ use openidconnect::reqwest::async_http_client;
+ use openidconnect::url::Url;
+
+ // // Use OpenID Connect Discovery to fetch the provider metadata.
+ use openidconnect::{OAuth2TokenResponse, TokenResponse};
+ let provider_metadata = CoreProviderMetadata::discover_async(
+ IssuerUrl::new("https://auth.orbekk.com/realms/test".to_string())?,
+ async_http_client,
+ ).await?;
+ log::debug!("{:?}", provider_metadata);
+ rocket::build().mount("/", routes![index]).launch().await;
+ Ok(())
+}