Commit Graph

190 Commits

Author SHA1 Message Date
gearnode
c06b436576 Enable pg_statement
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 17:01:18 +01:00
gearnode
d3ca8cc60d Fix graphql playground url
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 16:07:15 +01:00
gearnode
9a7da091fa Fix missing tls config
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 15:02:08 +01:00
gearnode
3e0c748fc9 Add smtp tls support
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 14:41:41 +01:00
gearnode
9e950b1ba0 Add SMTP auth support
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 14:31:15 +01:00
gearnode
1f9c5aeadb Fix tenant not found when creating new organinzation
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 14:02:18 +01:00
gearnode
3762d56173 Add timeout to mailer send
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 14:01:18 +01:00
gearnode
1a6e68f13c Add email confirmation
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 12:17:21 +01:00
gearnode
cd5e3ef478 Add statelesstoken pkg
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 11:36:56 +01:00
gearnode
01af3812c4 Enforce allowed tenant in each request
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 10:14:49 +01:00
gearnode
7c8beb74ec Fix duplicated in key in context
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 10:08:08 +01:00
gearnode
9edb5f31d0 Add mailer system
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-12 09:04:51 +01:00
gearnode
9688f51bc5 Style
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:37:45 +01:00
gearnode
df2795069b Fix signup session already expired
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:37:28 +01:00
gearnode
8035085331 Fix duplicated ctx key
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:37:14 +01:00
gearnode
a6f8673b89 Fix update policies
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:04:45 +01:00
gearnode
33f72bceaa Fix vendor update failed
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:03:01 +01:00
gearnode
8a094f1bd2 Fix update session failed
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:02:52 +01:00
gearnode
9640e4266a Refactor probo service
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 17:02:28 +01:00
gearnode
b41f417af6 Fix unauthenticate user not redirect to login page
fix #31

Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 14:33:24 +01:00
gearnode
cc1c843d0a Refactor session loading management
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 12:36:49 +01:00
gearnode
019f76ecfd Refactor authentication handler
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 12:28:51 +01:00
gearnode
1f4675f692 Rename session and user tables
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 09:44:08 +01:00
gearnode
5bdc474aef Move coredata outside probo service
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 09:38:36 +01:00
gearnode
3c1a0c9d6d Fix broken user manager migration
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 09:14:08 +01:00
gearnode
51fb5c9510 Update gqlgen code
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 09:14:01 +01:00
gearnode
c2bf3a42ed Simplify database schema
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-11 09:03:13 +01:00
gearnode
7d80557d71 Fix missing sql argument
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 15:11:37 +01:00
gearnode
12020659a4 Fix missing tenant_id argument in sql query
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 14:33:57 +01:00
gearnode
7fe0774442 Reduce the size of the tenant id
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 14:33:44 +01:00
gearnode
58eda95d93 Rewrite the global id system to include tenant id
The API should be aware of the tenant they are working on. Many solution
is possible like passing a header, adding the tenant id in each function
call, encode the tenant id in the GID.

I consider the header as a hack it force the client to keep in mind to
pass this header, having to returns an error in case of not defined
header and add a non standard header make the API more harder to use.

Passing the tenant id everywhere will be a good option but since Relay
impose to have node(id: ID!) Node interface it is not possible or by
hacking by wrapping node(id: ID!) Node in top query who getting the
tenant_id.

I finish by simpliy encode the tenant id directly in the object id, it
what AWS do too, it allow to always have the information, and it ensure
a right data isolation.

Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 13:54:55 +01:00
gearnode
b2b1305abe Fix bootstrap organization failed
We use organization id as tenant id, so the organization insert cannot
take scope as it self scoped tenant.

Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 10:29:10 +01:00
gearnode
a4611f5433 Force scope usage even for insert
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 10:27:30 +01:00
gearnode
dc2cac9317 Remove unused omitempty
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-10 10:27:01 +01:00
gearnode
0b3bd6fd67 Fix missing aws config
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-09 15:39:16 +01:00
gearnode
3bd4762e12 Remove CORS configuration by default
Since the frontend is embded it's not needed to have CORS by default.

Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-09 15:32:33 +01:00
gearnode
92826c40f5 Fix malformed filename
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-09 15:31:18 +01:00
gearnode
123a538d82 Embded frontend inside go binary
This will simplify the self hosting of the platform.

Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-09 15:30:28 +01:00
gearnode
93801e1d11 Add support of postgresql TLS configuration
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-08 21:11:27 +01:00
gearnode
4d1305f192 Fix panic on configuration load
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-08 11:26:38 +01:00
gearnode
65f2245167 Fix migration organization ref
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-06 10:21:33 +01:00
gearnode
b539abf5f0 Fix migration error
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-06 10:20:13 +01:00
gearnode
d4723024a0 Use signed cookie
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-06 08:33:38 +01:00
gearnode
13153e8f85 Add cookie signer helpers
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-05 17:35:03 +01:00
gearnode
8e09774958 Sign session cookie to avoid tapping
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-05 17:34:42 +01:00
gearnode
9526061861 Add data to session and floating duration
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-05 17:26:07 +01:00
gearnode
b214b0930c Add policy owner
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-05 11:25:08 +01:00
gearnode
c69b988ba1 Add policy review date
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-05 11:05:59 +01:00
gearnode
312474354c Add policies
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-04 12:09:22 +01:00
gearnode
cf12d3966e Replace pgx.NamedArgs to pgx.StrictNamedArgs
Signed-off-by: gearnode <bryan@frimin.fr>
2025-03-02 08:48:52 +01:00