Bryan Frimin
23084a72a2
Add OIDC login support for Google and Microsoft providers
...
Implements OpenID Connect authentication flow with PKCE, JWT verification, and enterprise-only account restrictions. Adds OIDC service with JWKS caching and state management, HTTP handlers for login/callback flows, GraphQL query for available providers, and sign-in UI integration.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-23 14:17:43 +01:00
Bryan Frimin
7b320916af
Add audit log feature for recording all actions
...
Adds audit logging that records all authorized actions performed by
users and API keys. The audit log is automatically populated whenever
the authorizer approves an action, and is queryable via GraphQL, MCP,
and CLI interfaces. Permission checks are excluded via a dry-run flag
to avoid phantom entries on page loads.
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-03-21 19:16:19 +01:00
Émile Ré
85ed5296e7
Fix safe ssoLoginURL params after activation + resolver error
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-12 17:24:27 +04:00
Émile Ré
1d54f22cd9
Add ssoLoginURL in activate account outputs
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-12 17:24:27 +04:00
Émile Ré
af17afeffb
Catch account already activated error and redirect
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-11 17:08:43 +04:00
Émile Ré
355e6b81b8
Add an account activation step in the signing request flow when needed
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-11 17:08:42 +04:00
Émile Ré
17c9f2eded
Fix profiles default filter
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-10 18:19:16 +04:00
Émile Ré
0d1bcd21aa
Rework people list and trust center access list + edit dialog
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-05 14:32:28 +04:00
Émile Ré
3c70b1e3eb
Generate go files after gqlgen & mcpgen upgrades
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-03-03 12:54:43 +04:00
Émile Ré
f75bde75f1
Remove unused schema fields
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-20 18:24:57 +04:00
Émile Ré
aca1b781e9
Fix do not display inactive profiles on home page
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 17:48:06 +04:00
Émile Ré
aaa2d77d40
Sign out any other account when activating via mail token
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:13:03 +04:00
Émile Ré
cfb81ca154
Fix e2e again
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:13:02 +04:00
Émile Ré
776af96170
Fix bot review
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:13:02 +04:00
Émile Ré
ab5fe8e5e2
Fix e2e tests
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:13:01 +04:00
Émile Ré
7971f88fcd
Create flow to add password after account activation
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:58 +04:00
Émile Ré
5ab5d2cc4c
Implement activate account page
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:58 +04:00
Émile Ré
47aba96b69
Reimplement invitations
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:58 +04:00
Émile Ré
a42fc4fa61
Reimplement remove / create in console
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:57 +04:00
Émile Ré
f931bda10f
Reimplement remove and invite user
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:56 +04:00
Émile Ré
196738f876
Implement create user
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:56 +04:00
Émile Ré
56ec0ab3c3
Move source and state from membership to profile
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:55 +04:00
Émile Ré
ec3d8fad40
Fix console app graphQL queries
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:54 +04:00
Émile Ré
baeb758a4f
Implement resolvers
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:53 +04:00
Émile Ré
c115e2c9dc
Update graphql schema
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-19 16:12:53 +04:00
Émile Ré
5684984755
Fix bot review
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-18 18:20:45 +04:00
Émile Ré
00cc91c102
Fix assume SAML required error redirect
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-18 15:16:00 +04:00
Émile Ré
3a459f1992
Rework console pages and implement profile update
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 16:21:12 +04:00
Émile Ré
8d20220c86
Fix e2e tests
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 16:21:11 +04:00
Émile Ré
e46c1d4894
Rename redirect-path to continue + handle redirection on forbidden from wrong org assume
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:07 +04:00
Émile Ré
e0bb27bff4
Various fixes
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:06 +04:00
Émile Ré
a8d1ce0097
Implement redirect path for saml
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:06 +04:00
Émile Ré
bdb70c5cac
Add comment regarding error handling when opening child session on sign in
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:05 +04:00
Émile Ré
5fa4477d5d
Create assume page to redirect to when AssumptionRequired catched in boundary
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:04 +04:00
Émile Ré
039ff7c5f0
Reuse existing session when signing in in for assume
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-12 09:37:03 +04:00
Sacha Al Himdani
1494707cb5
Exclude users from google workspace bridge
...
Signed-off-by: Sacha Al Himdani <sacha@getprobo.com >
2026-02-10 12:42:24 +01:00
Émile Ré
a388aa4999
Redirect when already authenticated
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-02-05 11:49:33 +04:00
Bryan Frimin
bc5bbdae81
Add scim bridge with connector
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-02-02 09:14:38 +01:00
Émile Ré
6395dc47fa
Fix invitationResolver.Organization authorize check
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-20 10:41:12 +04:00
Émile Ré
d92e893bfd
Use authn.Cookie for SAML SSO
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-19 15:17:11 +04:00
Émile Ré
ac65c05488
Clear cookie on sign out
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-19 12:55:04 +04:00
Émile Ré
1daf1a64f8
Change membershipResolver.Profile to authz from membership
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-19 11:14:07 +04:00
Bryan Frimin
56a2073547
Fix 5xx on profile request
...
Signed-off-by: Bryan Frimin <bryan@getprobo.com >
2026-01-18 09:12:08 -08:00
Émile Ré
3669df3f8a
Handle membership deletions and role updates in iam policies
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:36:49 -08:00
Émile Ré
ca4ae96f31
Rename authz.WithSesion to authz.WithSkipAssumptionCheck since we only used it with a nil arg
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:26 -08:00
Émile Ré
7322201dab
Plug trust center part 1
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:23 -08:00
Émile Ré
663400c4f6
Extract cookie config into authn pkg
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:04 -08:00
Émile Ré
1257347df9
Extract authn & authz utils
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:03 -08:00
Émile Ré
cfcbda4519
Fix uneeded assume + assume after invite accept
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:02 -08:00
Émile Ré
c6094ff572
Implement organization assumption check in authorization layer
...
Signed-off-by: Émile Ré <emile@getprobo.com >
2026-01-17 12:34:01 -08:00