Commit Graph

283 Commits

Author SHA1 Message Date
mike12345567 55ff798803 Linting. 2021-08-03 15:41:51 +01:00
mike12345567 54e765a182 Implementing some changes to how context gets set for tenancy, after testing, as well as updating server. 2021-08-03 15:32:25 +01:00
mike12345567 75ae7ac8d6 Linting. 2021-08-02 18:36:32 +01:00
mike12345567 7a69dcef78 re-write, to use the ideas that Rory put in place, still WIP, un-tested but all implemented. 2021-08-02 18:34:43 +01:00
Rory Powell 1dbf7fa3b7 Fix import 2021-07-29 14:51:35 +01:00
Rory Powell 298cf4965c Sync profile picture when using SSO 2021-07-29 14:43:23 +01:00
mike12345567 a21fd3e0ee Limiting use of query string to a few select endpoints for determining tenant ID. 2021-07-27 18:02:59 +01:00
mike12345567 9174615821 Fixing an issue where you could accidentally end up on org/admin page due to the reactivity statements firing all the time. 2021-07-27 17:56:39 +01:00
mike12345567 b73b20cdbb Linting. 2021-07-27 16:24:39 +01:00
mike12345567 fb562908ee Fixing some issues with public endpoints causing logout loop. 2021-07-27 16:17:02 +01:00
mike12345567 1df08ffe35 Fixing some issues with org not being correctly detected. 2021-07-27 15:35:26 +01:00
mike12345567 669685580f Linting. 2021-07-26 13:20:42 +01:00
mike12345567 5c58630ed7 Fixing up everything found when testing with Cypress. 2021-07-26 13:19:47 +01:00
mike12345567 e76c44000b Fixing test case. 2021-07-23 20:08:16 +01:00
mike12345567 cfea184633 Linting. 2021-07-23 20:03:11 +01:00
mike12345567 a384cc059d Changing how apps are retrieved to be more efficient. 2021-07-23 20:01:53 +01:00
mike12345567 93f5419072 Adding use of the tenancy ID. 2021-07-23 17:41:00 +01:00
mike12345567 36e1ddf423 Merge branch 'master' of github.com:Budibase/budibase into develop 2021-07-23 17:02:33 +01:00
mike12345567 b5d7e76ec2 Merge branch 'fix/lucene-filtering' of github.com:Budibase/budibase into feature/multi-tenants 2021-07-23 16:10:59 +01:00
mike12345567 9f06b180a8 Adding concept of version to APIs. 2021-07-23 15:29:14 +01:00
mike12345567 155e30965f Fixing test cases and bugs that they raised. 2021-07-22 22:36:16 +01:00
mike12345567 190798d4ee Swapping admin -> global in worker to reduce confusion in API url naming. 2021-07-22 12:56:47 +01:00
mike12345567 e62c858a8d Adding mechanism to disable org functionality when multi-tenancy disabled. 2021-07-21 17:52:42 +01:00
mike12345567 f99f077cdc Fixing saving of oidc and google auth, neither should require the callbackURL property with the tenancy update. 2021-07-21 11:10:26 +01:00
mike12345567 7afce332c8 Fixing some issues discovered with logging in. 2021-07-20 17:46:41 +01:00
mike12345567 2182645339 Merge branch 'develop' of github.com:Budibase/budibase into feature/multi-tenants 2021-07-20 15:56:12 +01:00
mike12345567 8241df2581 Fixing some tenancy issues. 2021-07-19 12:57:52 +01:00
mike12345567 c248844a24 Adding organisation page. 2021-07-16 18:24:32 +01:00
mike12345567 037dce5016 Further work, tenancy now working but some more work to be done. 2021-07-16 18:04:49 +01:00
mike12345567 f0f9736c0b Updating auth to utilise the tenant system. 2021-07-16 15:08:58 +01:00
mike12345567 5ffe3c7935 First version of multi-tenancy, work still to be done. 2021-07-15 17:57:02 +01:00
Rory Powell 70601b7cc5 Store OIDC config in cookie instead of URL 2021-07-15 16:20:31 +01:00
Rory Powell 90c0e7b2c1 Merge branch 'develop' into feature/oidc-support 2021-07-15 14:05:30 +01:00
Rory Powell 9e24bc14e7 Add database test configuration to auth package 2021-07-15 12:55:35 +01:00
mike12345567 f2c2ead3fc Cleaning up deployments into the app DB, moving API keys to be in global DB (which will be tenancy managed) and adding concept of platform info DB. 2021-07-14 16:29:32 +01:00
Rory Powell 356a765c92 Invert logos config naming to prevent conflict 2021-07-14 15:48:29 +01:00
mike12345567 e296a67b50 Renaming groups to workspaces. 2021-07-13 17:27:04 +01:00
Peter Clement 2900743545 Add UUID to each oidc config to distinguish each provider 2021-07-13 15:52:21 +01:00
Rory Powell 0982968f79 Setup common test data 2021-07-13 12:08:58 +01:00
Rory Powell 4c9308462e Remove redundant check on requireLocalAccount 2021-07-13 10:46:27 +01:00
Rory Powell d25d9edda1 Test google auth strategy 2021-07-13 10:17:14 +01:00
Rory Powell 4f397740e0 Add jest to auth package + test oidc strategy 2021-07-13 10:02:08 +01:00
Andrew Kingston a9d4f09782
Merge pull request #1953 from Budibase/client-feature-flags
Client library updating and client library feature awareness
2021-07-09 16:52:45 +01:00
Rory Powell 97a62594ed Update clientId -> clientID 2021-07-09 16:21:42 +01:00
Rory Powell 94aa6b3711 Remove review comment 2021-07-09 09:37:52 +01:00
Rory Powell 63b13fc360 Merge branch 'develop' into feature/oidc-support 2021-07-08 20:15:16 +01:00
Rory Powell 87f05e7d06 Always maintain original user id. No longer remove old user during sync 2021-07-08 16:49:07 +01:00
Rory Powell 8bea18e696 sync third party profile on every login 2021-07-08 16:11:48 +01:00
Rory Powell 7db8658518 remove duplicate scope definition
scope can be defined both within the strategy declaration or when invoking passport
2021-07-08 15:21:54 +01:00
Rory Powell db9078cebe Linting 2021-07-08 13:12:25 +01:00
Rory Powell aa601f3701 Integrate with configuration ui / support for email usernames 2021-07-08 13:04:04 +01:00
Andrew Kingston 08578af4ba Add application/json as a known file type 2021-07-08 12:55:51 +01:00
Rory Powell ef8b9b40c1 Save email from third party user 2021-07-08 11:54:16 +01:00
Rory Powell 238d31e922 Merge branch 'feature/oidc-support' of github.com:Budibase/budibase into feature/oidc-support 2021-07-08 11:12:45 +01:00
Rory Powell 5ec79acabf Merge google/oidc user authentication and surface user relevant error messages during authentication 2021-07-08 11:12:34 +01:00
mike12345567 2fc606f5b5 Linting. 2021-07-07 23:30:14 +01:00
mike12345567 cc67e2caa6 Adding sessions API. 2021-07-07 23:29:19 +01:00
Peter Clement 4b518af605 Merge branch 'feature/oidc-support' of https://github.com/Budibase/budibase into oidc-config-management 2021-07-07 17:42:31 +01:00
mike12345567 7581360e9e Merge branch 'develop' of github.com:Budibase/budibase into feature/user-session 2021-07-07 17:17:16 +01:00
mike12345567 79b7747714 Fixing session issues after testing a bit. 2021-07-07 17:15:53 +01:00
Peter Clement 8426ffc036 Fix for icon upload issue 2021-07-07 16:18:18 +01:00
Rory Powell 1c39c2f063 Fallback to ID token to retrieve email when not available in passport profile (oidc userinfo) 2021-07-07 14:58:14 +01:00
Peter Clement b5f398da4d Allow user uploaded icons in oidc config 2021-07-07 13:41:09 +01:00
Martin McKeaveney 93b562e2df make logged in users basic by default, prevent allowing users to be assigned as default in the UI 2021-07-06 18:43:04 +01:00
mike12345567 36c0e45761 WIP - first version of user sessions. 2021-07-06 18:10:04 +01:00
Martin McKeaveney 6af078a546 public role in builder backend UI 2021-07-06 17:19:53 +01:00
Martin McKeaveney 561f824606 default to public in UI 2021-07-06 17:19:03 +01:00
Martin McKeaveney 4e8b140c52 default users without roles to public role 2021-07-06 17:13:02 +01:00
Rory Powell 0745eedbcc Improve error handling on openid-configuration request 2021-07-06 10:03:40 +01:00
Rory Powell 624dd20522 Use configuration url to retrieve oidc endpoints
The /.well-known/openid-configuration endpoint can be used to
retrieve the majority of configuration needed for oidc

Additionally refactor the callback url to be generated on the server
side as this is a fixed endpoint.

Add linting fixes
2021-07-06 10:03:40 +01:00
Bernhard Hayden 65c436145a Proof of concept OIDC implementation 2021-07-06 10:03:40 +01:00
Peter Clement f61c5b8143 Add validation to backend for OIDC configuration 2021-07-05 14:27:19 +01:00
mike12345567 c17bfa34f5 Fixing issue with Redis which was causing CPU peaking if couldn't connect. 2021-06-25 15:32:59 +01:00
mike12345567 44c6b77c55 Fixing issues discovered by cypress tests. 2021-06-21 18:37:14 +01:00
mike12345567 fc9e48e8e7 Fixing authentication with API key issue. 2021-06-21 17:13:06 +01:00
Martin McKeaveney c88244fd34
Merge pull request #1667 from Budibase/fix/stability-bugfixes
Fix/stability bugfixes
2021-06-08 19:40:41 +01:00
mike12345567 5a9c8daf7b Formatting. 2021-06-08 18:06:56 +01:00
mike12345567 8cffe5c9ff Fixing a collection of issues, specifically users being exported/imported and issues with database import causing weirdness (metadata doc being wrong). 2021-06-08 18:06:16 +01:00
Martin McKeaveney f33c570b1d remove builder role from google auth, only allow google sign in if local account exists 2021-06-08 14:46:18 +01:00
mike12345567 ef057910e1 Merge branch 'master' of github.com:Budibase/budibase into fix/cypress-fixes 2021-06-07 13:22:27 +01:00
mike12345567 9d3c28ecbf Fixing issue with builder not always having the correct roles to view an app - global builders are now admins in all apps. 2021-06-04 12:13:29 +01:00
Martin McKeaveney ae1753a654 set content type on client lib upload 2021-06-03 21:33:44 +01:00
Martin McKeaveney 0166c48d40 removing superfluous controllers 2021-06-01 20:22:56 +01:00
Martin McKeaveney 7a0bbfdb84 Merge branch 'master' of https://github.com/Budibase/budibase into lab-day-2705 2021-06-01 19:24:24 +01:00
mike12345567 0792370f03 Merge branch 'master' of github.com:Budibase/budibase into fix/cypress-fixes 2021-06-01 15:25:37 +01:00
Martin McKeaveney ec9ea0e841 remove log 2021-06-01 15:03:19 +01:00
Martin McKeaveney 887426fe34 merge google accounts, improve connection pooling for RDBMS 2021-06-01 15:00:28 +01:00
Martin McKeaveney a453f6cac2 adding watchtower to docker config 2021-05-28 10:09:32 +01:00
mike12345567 be7736afb7 Fixing app cypress test cases. 2021-05-25 13:25:42 +01:00
Martin McKeaveney f3198aec98 sanitizing client lib URL 2021-05-24 21:30:46 +01:00
mike12345567 8200f2a4e8 Fixing issue with redis updates in tests. 2021-05-24 17:05:46 +01:00
mike12345567 bd0f78e38e Changing how connection is waited for. 2021-05-24 16:31:50 +01:00
mike12345567 ec85f13d5a Adding an initial connection timeout of 5 seconds which after it will retry again. 2021-05-24 16:30:24 +01:00
mike12345567 2abe543cb1 Linting and fixing an issue with the dev pass through. 2021-05-24 16:20:02 +01:00
mike12345567 428a9e5ba3 Formatting. 2021-05-24 14:56:23 +01:00
mike12345567 292d520b30 Adding some changes for to redis library, allowing reconnection. 2021-05-24 14:54:47 +01:00
mike12345567 18cbb02bf9 Updating administration middleware so that internal requests allowed through automatically. 2021-05-21 16:43:01 +01:00
mike12345567 4653471412 Updating UI to use the updated at. 2021-05-21 14:38:58 +01:00
mike12345567 f56250824c Adding a debounced updated at timestamp to applications. 2021-05-21 13:07:10 +01:00
mike12345567 8c68f1c134 Fixing issues with the user table within the apps. 2021-05-19 15:55:00 +01:00
mike12345567 6d6eee2a93 Adding the ability to get all apps, with the status attached. 2021-05-19 15:09:57 +01:00
Martin McKeaveney d5fb542589 lint 2021-05-17 21:43:50 +01:00
mike12345567 19b1310c60 Merge branch 'feature/draft-apps' of github.com:Budibase/budibase into feature/draft-apps 2021-05-17 14:24:36 +01:00
mike12345567 dd4a963c3e Updating role system to never think about the dev app. 2021-05-17 14:20:19 +01:00
Martin McKeaveney 6dc288fcc3 merge 2021-05-16 21:29:07 +01:00
Martin McKeaveney 0ed0550e73 revert functionality working 2021-05-16 21:25:37 +01:00
mike12345567 ac0f620b38 Formatting. 2021-05-14 16:32:51 +01:00
mike12345567 c45fdefb48 Adding administration roles API. 2021-05-14 16:31:07 +01:00
mike12345567 2d0122f7d6 A general re-work of some parts of the auth lib, as well as moving roles/permissions around to make it possible to build an admin API which has role knowledge. 2021-05-14 15:43:41 +01:00
Martin McKeaveney 0ee83a2e60 set up live replication between prod and dev instances 2021-05-13 17:24:32 +01:00
mike12345567 e560390d8a Fixing an issue with portal calls causing the app to be re-locked. 2021-05-13 15:32:03 +01:00
mike12345567 86000b1714 Fixing issues with redis keys, however still not removing lock. 2021-05-13 14:34:04 +01:00
mike12345567 f4e3e1d196 Altering object store so that all writes/reads to the object store have the dev app prefix replaced with standard app. 2021-05-13 13:29:53 +01:00
Martin McKeaveney 61a5b109f5 dev mode E2E 2021-05-13 11:06:08 +01:00
mike12345567 f6fbeb4858 Putting together redis lock system. 2021-05-12 17:37:09 +01:00
mike12345567 fed94bea70 Merge branch 'next' of github.com:Budibase/budibase into feature/draft-apps 2021-05-12 12:49:42 +01:00
mike12345567 c9d903a92f General cleanup, doing away with the concept of hosting in the builder and the generally confusing difference between cloud, self hosting and running locally - server is simply always a server now. 2021-05-11 17:49:26 +01:00
mike12345567 2ea05c44b4 Changing INTERNAL_KEY to INTERNAL_API_KEY. 2021-05-11 15:23:03 +01:00
mike12345567 7d78d7b15a Some updates, working towards supporting automation send smtp email also removing the styling template, adding to base. 2021-05-11 12:02:29 +01:00
Martin McKeaveney b415fb2089 pull template type from body instead of params 2021-05-10 14:41:52 +01:00
mike12345567 902119c39c Updating with a tested and functional API for uploading files for configs. 2021-05-07 13:55:30 +01:00
Michael Drury cf762f8dcd Some general backend cleanup. moving packages around, removing some traces of electron, and prepping for standardised object store library. 2021-05-06 19:27:24 +01:00
Martin McKeaveney 23cb160a69 merge with next 2021-05-06 11:56:53 +01:00
mike12345567 02a270a24d Making some changes to how configs are scoped. 2021-05-06 10:51:21 +01:00
Martin McKeaveney 4377b41f40 endpoint for budibase configuration checklist 2021-05-05 20:58:31 +01:00
mike12345567 2f0c3562ac Merge branch 'next' of github.com:Budibase/budibase into feature/password-reset 2021-05-05 18:00:22 +01:00
mike12345567 96f036b720 Updating testing system across the board after playing around with it, having the worker tests run when top level test is ran, fixing environment in worker when testing, removing the use of redis (replacing with ioredis-mock) when in test. 2021-05-05 17:49:34 +01:00
mike12345567 f1650105f4 Finalising the usage of redis in the password reset and invitation systems. 2021-05-05 15:10:28 +01:00
mike12345567 e31eb5d3d2 Fleshed out fully all redis interactions for invitations and password resets. 2021-05-05 12:11:06 +01:00
Martin McKeaveney d8c3ab7d79 lint and tidy 2021-05-04 18:14:13 +01:00
mike12345567 66341473ca Fixing issues with Redis/Bull and the integration with new redis module. 2021-05-04 18:13:44 +01:00
Martin McKeaveney 88a5660bc3 google oauth UI 2021-05-04 17:31:06 +01:00
mike12345567 89310c0879 Merge branch 'next' of github.com:Budibase/budibase into feature/password-reset 2021-05-04 15:21:53 +01:00
Andrew Kingston 556236ebce Add explicit prettier options 2021-05-04 11:32:22 +01:00
Keviin Åberg Kultalahti 4ec2e7d01f lint:fix 2021-05-03 09:31:09 +02:00
mike12345567 3e2da63822 Updating auth middleware to accomodate public endpoints for the server properly and some refactoring. 2021-04-28 18:13:21 +01:00
mike12345567 6a0f80f25e Fixing login issue. 2021-04-28 14:28:25 +01:00
mike12345567 01a9db76c8 Formatting. 2021-04-27 17:30:19 +01:00
mike12345567 129b827d9f Adding a redis client to the auth system, as part of work towards the reset password flow. 2021-04-27 17:29:05 +01:00
mike12345567 d985d338ec Updating test cases and some re-work of the email system. 2021-04-23 18:07:39 +01:00
mike12345567 46c9df6245 Adding testing to worker, still WIP. 2021-04-23 14:58:06 +01:00
Martin McKeaveney 83f9e00aff fix imports 2021-04-22 15:27:09 +01:00
Martin McKeaveney 17d20b3faf only keep userId in payload 2021-04-22 14:53:19 +01:00
Martin McKeaveney ad63faf448 tidy up 2021-04-22 14:07:00 +01:00
Martin McKeaveney 9a12239e62 scoped configuration management 2021-04-22 13:46:54 +01:00
Martin McKeaveney 737e9dba47 config specificity 2021-04-22 11:45:22 +01:00
Martin McKeaveney 1c7689e694 google login reading from couch 2021-04-21 21:08:04 +01:00
Martin McKeaveney 1da29900c7 merge 2021-04-21 18:43:20 +01:00
Martin McKeaveney 1f831f1281 custom google middleware 2021-04-21 18:40:32 +01:00
mike12345567 e057217b48 Initial CRUD interface for templates. 2021-04-21 18:15:57 +01:00