shockrah
bdecf73000
More notes on jwt authentication
2020-12-22 21:52:30 -08:00
shockrah
11251fe6d3
1. adding hmac_secret as a private lazy_static variable
...
This is only initialized once and is read only after the fact so it should be fine
2. Adding a Claim struct that all JWT's will use for their structure. A helpful .new() function is provided
3. AuthReason::ServerIssue(String) is a now a thing
Should help the auth module be more clear in what's going on
4. fn get_jwt_json -> renamed from get_jwt to indicate we're getting something from json payload. Nothing more
5. async fn valid_jwt: Attempts to decode the given token, if successful it then looks if that user has given us an active jwt budget-session-key if (returns boolean)
6. wall_entry now returns an AuthReason without the sql wrapping, since thats db-lib's problem anyway
Also we're collecting all data upfront then verifying it as we go.
7. async fn login_get_jwt::ROUTE
On login_auth here we simply create a JWT for the user, store it in cache, then give it back to the user to use.
Tokens take a week to expire
8. Removed busted tests that weren't doing anything useful for the time being
2020-12-22 21:51:23 -08:00
shockrah
c0f5908089
Tiny auth module for literally just redis and jwt things
...
Also we're doing a really budget version of sessions here so we might change things later but this is fine for now
2020-12-22 21:30:35 -08:00
shockrah
02e6c4145e
now hanlding server issues with auth(since those sometimes happen)
...
also renamed some vars to be more clear
2020-12-22 21:29:43 -08:00
shockrah
47b4b7e35f
Script for generating a smiple hmac value
2020-12-22 21:28:57 -08:00
shockrah
9a3833ea49
sample .env now uses redis
...
Also I'm moving the redis deps to db-lib
Lazy static now added for the sake of holding the only static ref we need/want
the hmac secret
2020-12-22 21:28:38 -08:00
shockrah
c3834e0e66
ignoring a dev file/hmac data file
2020-12-22 21:26:59 -08:00
shockrah
5a5ecfad26
Optimizations for buidling memcacache for our tokens
2020-12-20 19:43:27 -08:00
shockrah
88f6e5b532
skeleton code for jwt things
2020-12-18 13:03:30 -08:00
shockrah
97028f8bd2
better note about configs and added support for config comments
2020-12-15 14:22:29 -08:00
shockrah
2efc163f8e
Script now purges the correct data it seems
2020-12-15 14:05:57 -08:00
shockrah
9b64afc27f
removed old doc
2020-12-12 16:39:10 -08:00
shockrah
b8b6fcbb9a
add license
2020-12-12 16:38:07 -08:00
shockrah
ba13de2064
More background information regarding what can use the help or not
...
* Better wording in readme about chat history
2020-12-12 16:36:40 -08:00
shockrah
f7136c0258
contributing guide
2020-12-12 16:19:36 -08:00
shockrah
f375fb74b7
New reflection on goals
2020-12-12 16:14:09 -08:00
shockrah
ce79d33380
Basically a rewrite of previous docs but this one is super terse
2020-12-12 15:45:13 -08:00
shockrah
275869a6f7
showing options passed to routes in tests
2020-12-12 14:46:09 -08:00
shockrah
4ac696820e
Removing dynamic routes altogether
2020-12-12 14:45:43 -08:00
shockrah
201297f4c1
Checking for valid channel.kind
on /channels/create
2020-12-12 13:51:43 -08:00
shockrah
8e2b52d1c9
Moving passable tests to their own function for now as we'll need some failing tests soon
2020-12-12 13:33:21 -08:00
shockrah
4e657e2710
skeleton code for loading configs into the client at init time
2020-12-12 13:26:02 -08:00
shockrah
26bd2a3af9
better css for the navbar
...
and addinga a better navbar
2020-12-07 22:18:05 -08:00
shockrah
ed3a185689
adding easy cmd line options parser
2020-12-07 22:17:17 -08:00
shockrah
8d00d0cd66
moving logo into client for the meme
2020-12-07 22:16:42 -08:00
shockrah
4aea1b66ce
updating bootstrap and removing purecss
2020-12-06 19:33:13 -08:00
shockrah
2683d5ef15
Basic window now uses the correct css paths for building
2020-12-06 15:26:22 -08:00
shockrah
455f6ed6b3
simple echo server for sake of testing connection-ability
2020-12-06 14:49:46 -08:00
shockrah
27c0af5b8d
adding required backend deps for rtc connections/data handling
2020-12-06 14:48:47 -08:00
shockrah
09f27dd554
! More restructuring changes
...
The client is basically gonna get served from a localhost server via electron. It's a little weird but it has to do for now, also fuck mobile
2020-12-06 14:45:06 -08:00
shockrah
cc1e3e6bc3
Restructuring of previous project files
2020-12-06 14:29:56 -08:00
shockrah
fe96a748ba
WebRTC server project folder
...
This will remain seperate from the client code project folder for now unless there is more reason to merge them together
2020-11-22 12:35:05 -08:00
shockrah
d622236644
Verbose output in build-sass.sh
2020-11-22 12:34:11 -08:00
shockrah
e3c8381cba
Setting up skeleton to start implementing webrtc at the client level
2020-11-22 12:33:58 -08:00
shockrah
13eb58ec06
* Owner perms were not being calculated correctly, this is now fixed
2020-11-21 19:18:40 -08:00
shockrah
063f2c7c48
--create-owner flag now correctly gives back the actual secret value instead of the encrypted value
2020-11-21 19:06:23 -08:00
shockrah
8661bcabe7
Removed redudancies and loud error messages
2020-11-21 19:05:44 -08:00
shockrah
f5f3df2ee2
+ Created testing func which is now super easily configurable
...
! This lets me specify between release and debug testing now yey
2020-11-21 19:05:02 -08:00
shockrah
acbbaab68d
create_admin flag now behaves correctly
2020-11-21 19:04:06 -08:00
shockrah
1c1bb5f3cd
* -c now uses the name parameter given to it
...
* new branch for failure of secret generation
2020-11-21 13:21:44 -08:00
shockrah
b15277348f
Better docs inspired jsdocs in db-lib::Member::add
2020-11-21 13:20:46 -08:00
shockrah
c80a1dab40
* clearer branching and some descriptive comments
2020-11-21 13:20:27 -08:00
shockrah
ea5162d185
+ Better secret generation
...
+ Helper function to clearly encrypt generated secrets
+ New test for auth::valid_secret as a sanity check
! routes::is_open is no longer retarded and behaves as expected
2020-11-21 13:19:52 -08:00
shockrah
812d9a9615
Upgrading bcrypt's version to 0.8 from 0.6
2020-11-21 12:19:44 -08:00
shockrah
5b63f0113b
more accurate api docs to meet with what is currently supported
2020-11-18 16:42:45 -08:00
shockrah
25fb3f5bb2
on delete cascade added to messages which hopefully makes channel deletion a bit better
2020-11-18 00:28:46 -08:00
shockrah
571f3a1630
db-lib::Channel::delete now gives back the actual sql error on failure
2020-11-18 00:28:08 -08:00
shockrah
159262a1f6
Merging cargo fixes from db-interface
2020-11-17 23:47:30 -08:00
shockrah
cd9d676a1e
Removal of unused test
2020-11-17 23:46:40 -08:00
shockrah
eaec922693
New dependancies
...
Fixing a bunch of things that cargo complains about but that really has no effect on me as a person
2020-11-17 23:46:03 -08:00