Commit graph

259 commits

Author SHA1 Message Date
Sebastian Pravda
1049f1fd4d chore: add serde dependency 2022-11-06 18:58:23 +01:00
EETagent
281ca22886 refactor: massive admin & candidate sessions rework, put admin back to own table 2022-11-06 15:17:21 +01:00
EETagent
5ef966341f feat: improve error handling, add crypto errors 2022-11-05 17:25:29 +01:00
EETagent
0a33695210 feat: remove structs in favor of function arguments, tokio::join for async encryption 2022-11-05 17:03:25 +01:00
EETagent
2833d9850b feat: parent mutation 2022-11-05 17:03:25 +01:00
EETagent
8b3305dae7 feat: admin query 2022-11-05 17:03:25 +01:00
EETagent
7bdec2482e fix: update hash, remove structs 2022-11-05 17:03:25 +01:00
Sebastian Pravda
2bd112beb8
feat: test put_user_data 2022-11-04 19:06:37 +01:00
Sebastian Pravda
713d978f2c
feat: put encrypted user personal data 2022-11-04 19:06:37 +01:00
Sebastian Pravda
4d4beeb686
fix: application_id in tests 2022-11-04 18:51:57 +01:00
Sebastian Pravda
36f751b36e
refactor: change variable names 2022-11-04 17:22:17 +01:00
Sebastian Pravda
ed783859b7
feat: validate application_id 2022-11-04 17:19:13 +01:00
Sebastian Pravda
702a79d1cf
feat: AdminService struct 2022-11-04 12:26:27 +01:00
Sebastian Pravda
9a422a17cd
refactor: session service
visible only in services mod
2022-11-04 12:26:26 +01:00
Sebastian Pravda
3b9bf7cdda
refactor: session auth public only in crate 2022-11-04 12:26:26 +01:00
Sebastian Pravda
05369b977a
feat: improve error handling
return status codes, messages
2022-11-04 12:26:26 +01:00
Sebastian Pravda
56f64a43c8
refactor: errors, services 2022-11-04 12:26:26 +01:00
Sebastian Pravda
b582d2e8e1
refactor: session service 2022-11-04 12:26:25 +01:00
Vojtěch Jungmann
eb04334081
Merge pull request #26 from EETagent/guards_routes_upload
WIP: Guards & Routes
2022-11-04 12:23:56 +01:00
Sebastian Pravda
891d498e76
style: comments 2022-11-01 17:32:51 +01:00
EETagent
493e3a3077 refactor: massive refactoring of query and mutation 2022-11-01 11:35:05 +01:00
EETagent
b142b3711f feat: improve argon2 security, (0.01s execution time in release mode, still fast) 2022-10-31 13:01:59 +01:00
EETagent
f77cd2aa1c chore: AES information 2022-10-30 22:02:33 +01:00
Sebastian Pravda
0731700f17
fix: use aes decrypt in test 2022-10-30 13:46:09 +01:00
Sebastian Pravda
8b26c14e8c
refactor: use aes encrypt function 2022-10-30 13:40:08 +01:00
Sebastian Pravda
c417abaa6a
Merge branch 'master' into refactor_requests 2022-10-30 13:27:03 +01:00
Sebastian Pravda
9f54417dcc
chore: remove unused serde dependency 2022-10-30 13:14:30 +01:00
Sebastian Pravda
e09a347d49
fix: create_candidate parameters in tests 2022-10-30 13:13:46 +01:00
Sebastian Pravda
d0825b80d5
feat: PIdN not null 2022-10-30 13:06:45 +01:00
Sebastian Pravda
79ab4d0ed4
fix: candidate tests json 2022-10-30 13:06:07 +01:00
EETagent
b561714697 fix: aes256 key convert early return 2022-10-30 08:20:36 +01:00
EETagent
33ee9a50a2 feat: use more secure AES implementation 2022-10-30 01:28:57 +02:00
EETagent
764f762bc5 refactoring: formatting & aes key test improvement 2022-10-30 01:09:13 +02:00
EETagent
9221ed0d64 feat: ultra fast AES encryption 2022-10-30 00:49:43 +02:00
Sebastian Pravda
a36290987d
feat: encrypted PIDN in db 2022-10-29 22:52:46 +02:00
EETagent
9cffa8db9f fix: improve test_random_8_char_string 2022-10-29 21:10:39 +02:00
EETagent
1d871fbcc1 chore: remove unused webtoken dependency 2022-10-29 21:08:56 +02:00
EETagent
8e3d939d05 fix: tests in core 2022-10-29 21:07:56 +02:00
Vojtěch Jungmann
ed0ef793e0
Merge pull request #20 from EETagent/session_improvements
Improve session managment
2022-10-29 20:55:20 +02:00
Sebastian Pravda
9b10b86a3d
feat: add pub, encrypted privkey to db 2022-10-29 19:56:09 +02:00
Sebastian Pravda
137039df44
feat: limit n of sessions in db
save client's ip address
2022-10-29 18:33:37 +02:00
Vojtěch Jungmann
dd7386882b
Merge pull request #18 from EETagent/small_dependencies_refactoring
Small dependencies refactoring
2022-10-29 13:02:58 +02:00
Sebastian Pravda
98e506e5ff
Merge pull request #17 from refresh_token_auth 2022-10-29 12:50:30 +02:00
EETagent
515d4d1298 chore: refactor dependencies 2022-10-29 12:34:10 +02:00
Sebastian Pravda
7fdb0de11b
refactor: remove jwt completely 2022-10-29 12:31:39 +02:00
Sebastian Pravda
98110dcf96
refactor: change ip address inet type to string 2022-10-29 12:24:45 +02:00
Vojtěch Jungmann
3bc9f8c089
Merge pull request #16 from EETagent/age_file_io
I/O file functions with age encryption
2022-10-29 12:23:28 +02:00
Sebastian Pravda
5e36b7b3c8
refactor: session entity structure 2022-10-29 12:13:17 +02:00
Sebastian Pravda
59e028b0ed
refactor: rename get_session to new_session 2022-10-29 11:32:14 +02:00
Sebastian Pravda
433e45e315
feat: sync all in encrypt decrypt test 2022-10-29 11:27:32 +02:00
EETagent
96be1f4d83 feat: async tempfile for tests 2022-10-28 23:49:33 +02:00
EETagent
e55c182d9b fix: fix bug in test 2022-10-28 23:32:33 +02:00
Sebastian Pravda
fa74688ca3
feat: session tests 2022-10-28 23:26:25 +02:00
EETagent
761f769a48 feat: decrypt to buffer 2022-10-28 23:25:40 +02:00
Sebastian Pravda
1ba4c68602
Merge branch 'candidate_tests' into refresh_token_auth 2022-10-28 23:25:27 +02:00
EETagent
fbeed2d432 feat: add file decrypt 2022-10-28 23:14:10 +02:00
EETagent
9e9dbcc038 refactor: massive refactoring of age key encryption/decryption functions 2022-10-28 23:02:32 +02:00
EETagent
0d5cf755c8 chore: file writing test 2022-10-28 22:34:55 +02:00
EETagent
1704564b61 refactor: use native path type 2022-10-28 22:04:51 +02:00
EETagent
18c6b33f17 feat: direct writing to file 2022-10-28 22:02:44 +02:00
EETagent
58491ad5d0 feat: add filetype identification using infer library 2022-10-28 19:53:10 +02:00
Sebastian Pravda
fb27fcff60
feat: session authentication instead of jwt 2022-10-28 19:33:30 +02:00
Sebastian Pravda
82f9098ed5
feat: candidate refresh token auth 2022-10-28 18:48:08 +02:00
EETagent
1f0b9c94db fix: update candidate tests to new async implementations 2022-10-28 18:21:11 +02:00
Vojtěch Jungmann
0e510d0789
Merge pull request #14 from EETagent/candidate_tests
Candidate service tests
2022-10-28 18:12:59 +02:00
EETagent
2ae22c7ec7 feat: generate AGE keys 2022-10-28 15:24:07 +02:00
EETagent
3abf84e163 chore: remove todos for argon2 spawn_blocking error handling 2022-10-28 15:03:22 +02:00
EETagent
9fd161b0e8 feat: use random salt for argon2, better security 2022-10-28 15:02:59 +02:00
EETagent
7b53891007 refactor: remove forgotten print 2022-10-28 14:41:30 +02:00
EETagent
b760560b1a refactor: use std:Error or compatible type in crypto.rs 2022-10-28 14:41:07 +02:00
EETagent
a7251e668e feat: file encryption & formatting 2022-10-28 14:30:55 +02:00
EETagent
bd72aa1a6f feat: tests for crypto functions 2022-10-28 13:43:40 +02:00
Sebastian Pravda
b82092e323
feat: find_candidate_by_id_test 2022-10-28 12:39:02 +02:00
Sebastian Pravda
37c418d8cd
refactor: candidate tests location 2022-10-28 12:16:22 +02:00
Sebastian Pravda
69b5a4fabf
feat: find session by uuid 2022-10-28 12:11:23 +02:00
EETagent
7623bc80c2 feat: age key encryption 2022-10-28 12:00:31 +02:00
EETagent
0a7b0c9028 fix: update code calling hash verify 2022-10-28 11:08:53 +02:00
EETagent
0636a92b01 feat: async even for verify 2022-10-28 11:08:35 +02:00
Sebastian Pravda
9378dcbead
feat: get refresh token 2022-10-28 10:36:14 +02:00
Sebastian Pravda
a58cf73acc
chore: add sha2 dependency 2022-10-28 10:35:46 +02:00
EETagent
1d5352a168 fix: update mutation to use new async hash 2022-10-27 23:21:12 +02:00
EETagent
19341192bb feat: async, fajnovka 2022-10-27 23:20:56 +02:00
EETagent
6646e825c1 feat: age password encryption (instead of AES256) 2022-10-27 22:12:37 +02:00
Sebastian Pravda
1262b99781
feat: candidate service tests 2022-10-26 19:30:35 +02:00
Sebastian Pravda
0c84d67952
chore: add serde_json (for easier testing)
remove mock test
2022-10-26 19:29:45 +02:00
Sebastian Pravda
6a425d3f7a
fix: imports 2022-10-26 11:23:24 +02:00
Sebastian Pravda
ecc9b54ce5
feat: authenticate user from jwt 2022-10-26 11:22:42 +02:00
Sebastian Pravda
04bc69501f
feat: application_id in jwt 2022-10-26 10:55:53 +02:00
Sebastian Pravda
e3c5052ffc
refactor: test name 2022-10-26 10:36:31 +02:00
Sebastian Pravda
2d4eb87d27
feat: test 2022-10-26 10:30:28 +02:00
Sebastian Pravda
50706c3298
fix: unused imports 2022-10-26 10:30:17 +02:00
Sebastian Pravda
a2d1447c2d
refactor: use generate_candidate_token 2022-10-25 22:00:48 +02:00
Sebastian Pravda
497345f2e9
feat: improve error handling 2022-10-25 19:34:30 +02:00
Sebastian Pravda
4ab6f16774
feat: errors 2022-10-25 19:07:55 +02:00
Sebastian Pravda
28686a127a
feat: login 2022-10-25 18:42:31 +02:00
Sebastian Pravda
32c266e366
feat: user login service 2022-10-25 17:35:03 +02:00
EETagent
4a852fa915 refactor: dry decode token 2022-10-25 16:44:08 +02:00
EETagent
44b4310ddf feat: token vylepšení 2022-10-25 15:50:46 +02:00
Sebastian Pravda
e059719172
feat: gen, decode, verify jwt 2022-10-25 14:52:18 +02:00
Sebastian Pravda
a3e87e0b27
chore: jsonwebtoken dependency 2022-10-25 14:51:08 +02:00
Sebastian Pravda
6c98b7e7ce
style: typo 2022-10-24 22:14:57 +02:00
Sebastian Pravda
3c35762455
style: typo 2022-10-24 22:05:22 +02:00
Sebastian Pravda
15205e8ec4
feat: foolproof random string function 2022-10-24 21:37:47 +02:00
Sebastian Pravda
29ff462ef9
style: code cleanup 2022-10-24 20:39:36 +02:00
EETagent
50abef29e3 feat: nový argon2, vracení result 2022-10-24 19:54:36 +02:00
Sebastian Pravda
00e050986e fix: unable to insert kvůli primary key
- using insert instead of save
2022-10-24 19:20:07 +02:00
Sebastian Pravda
d44082d3d8 feat: create candidate & generate code,
s autoincrementem application id uchazeče normalne funguje
2022-10-24 19:20:07 +02:00
Sebastian Pravda
c47dfbb1f9
Refactoring aby to šlo spustit (#4)
* db: candidate entity

* chore: candidate migrace

* chore: import candidate migrace

* fix: default value pro citizenship

* fix: unique pro evideční číslo přihlášky

* chore: parent migrace

* fix: unique pro evideční číslo přihlášky

* chore: sample fill admin table

* fix: chybějící serde pro admin entitu

* chore: remove mock tests

* remove all post entity imports

Co-authored-by: EETagent <vojta.jungmann@gmail.com>
2022-10-24 15:00:49 +02:00
EETagent
63c7307e43 chore: project setup 2022-10-23 18:43:12 +02:00