summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGalen Guyer <galen@galenguyer.com>2022-12-28 15:48:29 -0800
committerGalen Guyer <galen@galenguyer.com>2022-12-28 15:48:29 -0800
commitb4eeb12bbb7327bc0a9055a8c2f9312f91091bb8 (patch)
treeaf487e8afdf918120dea80b4ddab1a07c8b7294e
parenta9c3095339e10f53fd9fba9e04efa75dbf05ef8a (diff)
Remove displayName because that's stupid
-rw-r--r--Dockerfile2
-rw-r--r--migrations/2022-04-09-create-schema.sql1
-rw-r--r--src/db/models.rs1
-rw-r--r--src/db/strings.rs8
-rw-r--r--src/db/users.rs2
-rw-r--r--src/extractors.rs2
-rw-r--r--src/routes/v1/requests.rs1
-rw-r--r--src/routes/v1/users.rs5
8 files changed, 8 insertions, 14 deletions
diff --git a/Dockerfile b/Dockerfile
index b71d809..2341def 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM rust:1.62-bullseye AS builder
+FROM rust:1.66-bullseye AS builder
WORKDIR /src/
RUN cargo init --bin
COPY Cargo.toml Cargo.lock ./
diff --git a/migrations/2022-04-09-create-schema.sql b/migrations/2022-04-09-create-schema.sql
index 8e47e60..1bf62b5 100644
--- a/migrations/2022-04-09-create-schema.sql
+++ b/migrations/2022-04-09-create-schema.sql
@@ -6,7 +6,6 @@ CREATE TABLE IF NOT EXISTS users (
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
email varchar(255) NOT NULL UNIQUE,
password varchar(255) NOT NULL,
- display_name varchar(255),
created_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT (now() AT TIME ZONE 'UTC'),
modified_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT (now() AT TIME ZONE 'UTC'),
admin boolean NOT NULL DEFAULT false,
diff --git a/src/db/models.rs b/src/db/models.rs
index 64b9290..b222615 100644
--- a/src/db/models.rs
+++ b/src/db/models.rs
@@ -9,7 +9,6 @@ pub struct User {
pub email: String,
#[serde(skip_serializing)]
pub password: String,
- pub display_name: Option<String>,
pub created_at: DateTime<Utc>,
pub modified_at: DateTime<Utc>,
pub admin: bool,
diff --git a/src/db/strings.rs b/src/db/strings.rs
index b8812e5..8d5832f 100644
--- a/src/db/strings.rs
+++ b/src/db/strings.rs
@@ -2,16 +2,16 @@ use lazy_static::lazy_static;
lazy_static! {
pub(crate) static ref GET_USER: &'static str = r"
- SELECT id,email,password,display_name,created_at,modified_at,admin,enabled,totp_secret
+ SELECT id,email,password,created_at,modified_at,admin,enabled,totp_secret
FROM users
WHERE email = $1
";
pub(crate) static ref GET_ALL_USERS: &'static str = r"
- SELECT id,email,password,display_name,created_at,modified_at,admin,enabled,totp_secret
+ SELECT id,email,password,created_at,modified_at,admin,enabled,totp_secret
FROM users
";
pub(crate) static ref CREATE_USER: &'static str = r"
- INSERT INTO users(email,password,display_name) VALUES ($1, $2, $3) RETURNING *
+ INSERT INTO users(email,password) VALUES ($1, $2) RETURNING *
";
pub(crate) static ref CREATE_ZONE: &'static str = r"
INSERT INTO zones(id,owner_uuid) VALUES ($1, $2) RETURNING *
@@ -38,7 +38,7 @@ lazy_static! {
FROM records WHERE zone_id = $1
";
pub(crate) static ref GET_USER_FROM_API_KEY: &'static str = r"
- SELECT users.id,email,password,display_name,users.created_at,modified_at,admin,enabled,totp_secret FROM api_keys
+ SELECT users.id,email,password,users.created_at,modified_at,admin,enabled,totp_secret FROM api_keys
JOIN users
ON users.id = api_keys.owner_uuid
WHERE api_keys.token_hash = $1
diff --git a/src/db/users.rs b/src/db/users.rs
index 4606d21..0b1b4df 100644
--- a/src/db/users.rs
+++ b/src/db/users.rs
@@ -27,13 +27,11 @@ pub async fn create_user(
pool: &Pool<Postgres>,
email: &str,
password: &str,
- display_name: &Option<String>,
) -> Result<User, sqlx::Error> {
let mut transaction = pool.begin().await?;
let user = sqlx::query_as::<_, User>(&strings::CREATE_USER)
.bind(email)
.bind(bcrypt::hash(password, BCRYPT_COST).unwrap())
- .bind(display_name)
.fetch_one(&mut transaction)
.await?;
transaction.commit().await?;
diff --git a/src/extractors.rs b/src/extractors.rs
index 23a0d6c..de5384b 100644
--- a/src/extractors.rs
+++ b/src/extractors.rs
@@ -85,7 +85,7 @@ where
sub: user.id,
iat: 0,
exp: 0,
- dn: user.display_name.unwrap_or_else(|| "".to_owned()),
+ dn: user.email.to_owned(),
email: user.email.to_owned(),
admin: user.admin,
};
diff --git a/src/routes/v1/requests.rs b/src/routes/v1/requests.rs
index aba7c00..76b3453 100644
--- a/src/routes/v1/requests.rs
+++ b/src/routes/v1/requests.rs
@@ -3,7 +3,6 @@ use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Debug)]
pub struct Signup {
pub email: String,
- pub display_name: Option<String>,
pub password: String,
}
diff --git a/src/routes/v1/users.rs b/src/routes/v1/users.rs
index fe932cf..684880e 100644
--- a/src/routes/v1/users.rs
+++ b/src/routes/v1/users.rs
@@ -37,8 +37,7 @@ pub async fn create_user(
Json(json!({"error": "Password must be at least 12 characters"})),
);
}
- let user =
- db::users::create_user(&pool, &signup.email, &signup.password, &signup.display_name).await;
+ let user = db::users::create_user(&pool, &signup.email, &signup.password).await;
match user {
Ok(user) => (StatusCode::OK, Json(json!({ "token": issue_jwt(user) }))),
Err(err) => match err {
@@ -154,7 +153,7 @@ fn issue_jwt(user: User) -> String {
let exp = (chrono::Utc::now() + chrono::Duration::hours(24))
.timestamp()
.to_string();
- let dn = user.display_name.unwrap_or_else(|| user.email.clone());
+ let dn = user.email.clone();
let admin = user.admin.to_string();
let sub = user.id.to_string();