summaryrefslogtreecommitdiff
path: root/src/services/secrets.rs
diff options
context:
space:
mode:
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)
+}