summaryrefslogtreecommitdiff
path: root/src/services/secrets.rs
diff options
context:
space:
mode:
authormrw1593 <botahamec@outlook.com>2023-06-04 13:41:32 -0400
committermrw1593 <botahamec@outlook.com>2023-06-04 13:41:32 -0400
commit47fb9177c7d9d6d3b4e75aeb55a94ef236c807a6 (patch)
tree13cf376fb4a33ef6e22aac7e5b498bb8d988107a /src/services/secrets.rs
parentd8d5650cc4d232215dce109f8aa3f0161079bf42 (diff)
Setup JWT utility
Diffstat (limited to 'src/services/secrets.rs')
-rw-r--r--src/services/secrets.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/services/secrets.rs b/src/services/secrets.rs
index 9f8af54..241b2c5 100644
--- a/src/services/secrets.rs
+++ b/src/services/secrets.rs
@@ -1,6 +1,8 @@
use std::env;
use exun::*;
+use hmac::{Hmac, Mac};
+use sha2::Sha256;
/// This is a secret salt, needed for creating passwords. It's used as an extra
/// layer of security, on top of the salt that's already used.
@@ -14,3 +16,9 @@ pub fn pepper() -> Result<Box<[u8]>, RawUnexpected> {
pub fn database_url() -> Result<String, RawUnexpected> {
env::var("DATABASE_URL").unexpect()
}
+
+pub fn signing_key() -> Result<Hmac<Sha256>, RawUnexpected> {
+ let key = env::var("PRIVATE_KEY")?;
+ let key = Hmac::<Sha256>::new_from_slice(key.as_bytes())?;
+ Ok(key)
+}