Commit Graph

129 Commits

Author SHA1 Message Date
melohagan 49a4e252c6
Allow an account holder to login to account-portal if the tenant has been deleted. (#14547)
* Add email to session for populate user

* Add email param

* use param object

* Type fix for tests

* Fix test

* Temporarily remove account-portal tests
2024-09-12 08:38:11 +00:00
melohagan f07ebc18db
Make sure to delete SSO ID doc as well (#14307) 2024-08-05 12:54:36 +01:00
Adria Navarro abbe9deb1c Add test command 2024-03-19 23:28:03 +01:00
Adria Navarro d1ffe24269 Invalidate session on password update 2023-12-29 16:54:47 +01:00
Adria Navarro f74264c1c8 Add tests 2023-12-29 16:37:34 +01:00
Adria Navarro dcacd6bf17 Add basic test 2023-12-29 16:07:26 +01:00
Adria Navarro f722f9e2d6 Invalidate reset code once used 2023-12-29 15:06:04 +01:00
mike12345567 7fb6c0927a Moving things around to get rid of cyclics created by moving invite/passwordReset into backend-core - also updating currentapp test case to mock a bit better. 2023-11-17 16:20:10 +00:00
Sam Rose 4c7c10b121
Set Redis initialisation back to how it was before I started messing with it. 2023-11-10 16:17:18 +00:00
Sam Rose d98e217c6c
Fix backend-core redis imports. 2023-11-10 11:21:36 +00:00
Sam Rose b29cfc600c
Move Invite and PasswordReset code into backend-core. 2023-11-09 14:51:07 +00:00
Sam Rose a6a75b533c
Reject inviting the same user twice. 2023-11-09 11:15:44 +00:00
Sam Rose 3f69b17c94
Fully type the worker redis utils file. 2023-11-09 11:05:42 +00:00
mike12345567 7a74ce98f1 Moving user functions in UserDB to fully static as none of the class properties ever change - simplifying currying. 2023-07-31 18:46:21 +01:00
mike12345567 812f1af5ca Moving app builder API into pro, along with the changes involved with achieving this. 2023-07-27 18:46:55 +01:00
mike12345567 eefac0fe08 Quick updates based on latest lerna version, as well as some fixes after running through flows (post refactoring). 2023-07-26 18:13:18 +01:00
mike12345567 8253ad0a2e Merge branch 'develop' of github.com:Budibase/budibase into feature/BUDI-7052 2023-07-26 14:24:29 +01:00
mike12345567 66fbdfe4e8 Breaking out pro components back into the worker user SDK, and attempting to separate the pro components as much as possible from the user SDK itself, so that it can be easily re-created in other services. 2023-07-25 18:39:40 +01:00
mike12345567 90371b9d69 Refactoring users core to move into backend, allowing app builder endpoints to move into pro. 2023-07-25 17:48:57 +01:00
Rory Powell 143e6597db Fix issues with tests when running with pro from npm 2023-07-25 13:18:56 +01:00
mike12345567 85dea47a31 Moving user admin/builder functions to shared-core for frontend to use. 2023-07-19 16:19:34 +01:00
mike12345567 39746e0bf0 Main body of work to handle the new approach of per app builders support. 2023-07-18 16:57:48 +01:00
Rory Powell 972e2257b7 [draft] Pricing/fixes (#10424)
* Fix qa core suite

* Update package.json

* Lint

* Handle conflict on account metadata

* Fix issue adding users via csv import when on paid plan

* Fix user invites

* Lint
2023-04-27 08:25:53 +01:00
Rory Powell ec06f13aa6 Per user pricing (#10378)
* Update pro version to 2.4.44-alpha.9 (#10231)

Co-authored-by: Budibase Staging Release Bot <>

* Track installation and unique tenant id on licence activate (#10146)

* changes and exports

* removing the extend

* Lint + tidy

* Update account.ts

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>

* Type updates for loading new plans (#10245)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS` (#10247)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete + migration (#10250)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Lint

* Types and structures for user subscription quantity sync (#10280)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing for licensing (#10346)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing

* Lint

* Pricing/billing page (#10353)

* bbui updates for billing page

* Require all PlanTypes in PlanMinimums for compile time safety

* fix test package utils

* Incoming user limits warnings (#10379)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* Types and test updates for subscription quantity changes in account-portal (#10372)

* Add chance extensions for `arrayOf`. Update events spies with license events

* Add generics to doInTenant response

* Update account structure with quota usage

* User count limits (#10385)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* user limit messaging on add users modal

* user limit messaging on import users modal

* update licensing store to be more generic

* some styling updates

* remove console log

* Store tweaks

* Add startDate to Quota type

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>

* Lint

* Support custom lock options

* Reactivity fixes for add user modals

* Update ethereal email creds

* Add warn for getting invite from code error

* Extract disabling user import condition

* Handling unlimited users in modals logic and adding start date processing to store

* Lint

* Integration testing fixes (#10389)

* lint

---------

Co-authored-by: Mateus Badan de Pieri <mateuspieri@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Peter Clement <PClmnt@users.noreply.github.com>
2023-04-24 09:31:48 +01:00
Michael Drury 941947f04c Merge branch 'develop' of github.com:Budibase/budibase into fix/BUDI-6754 2023-04-14 22:42:02 +01:00
mike12345567 b36702ca72 Merge branch 'master' of github.com:Budibase/budibase into develop 2023-04-14 17:32:04 +01:00
adrinr e1279ffecd Use proper errors instead of string throwing 2023-04-11 13:39:13 +01:00
mike12345567 a2cabb01d5 Removing user app sync calls from worker - no longer required. 2023-04-04 13:53:30 +01:00
Rory Powell 5eecb6e686 Remove loop for get account during user bulk import (#10203) 2023-04-04 10:14:20 +01:00
Adria Navarro e1669c8260 Merge pull request #10022 from Budibase/feature/scim
Feature - SCIM endpoints
2023-04-03 13:22:01 +02:00
mike12345567 70d91acc41 Adding a check for the tenant ID - to make sure it is a real tenant before forcing the user out of the platform based on it. 2023-03-29 14:19:54 +01:00
adrinr 4f2696ed32 Use ctx.identity instead of passing it as param 2023-03-28 16:46:22 +01:00
adrinr 2072664294 Move user search to core 2023-03-28 16:46:22 +01:00
Rory Powell e116941750 Rotatable secrets (#9982)
* Rotatable secrets

* Set new api encryption key var

* Lint

* Use fallback keys instead of array

* Point api encryption key to dedicated value

* Add API_ENCRYPTION_KEY to cli

* Lint + add api encryption key to env files
2023-03-13 15:02:59 +00:00
Rory Powell b92d9c60ca Don't require password on update if user doesn't have one (#9941) 2023-03-08 12:00:02 +00:00
Dean f622c84ebc Review feedback 2023-03-07 16:39:26 +00:00
Dean 5b9fbbc3b4 Various fixes for update self behaviour 2023-03-07 13:35:18 +00:00
Rory Powell 4c43ba2943 Bypass password onboarding for enforced sso (#9851) 2023-03-01 21:56:30 +00:00
Rory Powell c83684ed83 Prevent showing user exists for password disabled actions 2023-03-01 14:49:44 +00:00
Dean dd08845a44 Merge remote-tracking branch 'origin/develop' into feature/app-user-onboarding-ux 2023-02-28 09:38:15 +00:00
Dean 61ed62e6c4 Builder user onboarding 2023-02-28 09:37:03 +00:00
mike12345567 2fb33e2cf3 Merge branch 'develop' of github.com:Budibase/budibase into feature/audit-logs 2023-02-27 14:51:33 +00:00
Rory Powell 2c46109e7d Enforceable SSO (#9787)
* Add ENFORCEABLE_SSO feature flag

* First draft of enforce sso configuration / show single sign on url

* Reading and writing isSSOEnforced + integration with login page

* Enable CI + lint

* Set correct base branch for CI

* Test fix for expected string changed

* Use tenant aware platform url as SSO link

* Bring in latest pro changes

* Lint

* Add useEnforceableSSO mock helper function

* Update configs.spec.ts with coverage for public settings

* Update users.spec.ts with additional tests for isPreventPasswordActions

* Lint

* Update refresh OAuthToken to use correct enum and add case statement
2023-02-27 13:42:51 +00:00
Dean 234e2fe3f3 Merge remote-tracking branch 'origin/develop' into feature/app-user-onboarding-ux 2023-02-23 11:19:29 +00:00
Dean b4c88bd545 Merge commit to dev 2023-02-23 10:38:03 +00:00
mike12345567 ef30c03fa6 Merge branch 'develop' of github.com:Budibase/budibase into feature/audit-logs 2023-02-21 17:26:24 +00:00
Rory Powell a84665c199 Re-order deprovisioning sequence to fix platform user removal 2023-02-21 13:36:14 +00:00
Rory Powell cacf275a99 Prevent SSO users from setting / resetting a password (#9672)
* Prevent SSO users from setting / resetting a password

* Add support for ENABLE_SSO_MAINTENANCE_MODE

* Add typing to self api and build out user update sdk

* Integrate sso checks with user sdk. Integrate user sdk with self api

* Test fixes

* Move self update into SDK

* Lock down maintenance mode to admin user

* Fix typo

* Add health status response and return type signature to accounts.getStatus

* Remove some unnecessary comments

* Make sso save user function non optional

* Remove redundant check on sso auth details provider

* Update syncProfilePicture function name to getProfilePictureUrl

* Update packages/worker/src/sdk/users/events.ts

Co-authored-by: Adria Navarro <adria@revityapp.com>

* Add ENABLE_EMAIL_TEST_MODE flag

* Fix for logging in as sso user when existing user has password already

* Hide password update and force reset from ui for sso users

* Always disable sso maintenance mode in cloud

---------

Co-authored-by: Adria Navarro <adria@revityapp.com>
2023-02-21 08:23:53 +00:00
Rory Powell a57f0c9dea Merge branch 'develop' into rory/february 2023-02-20 09:57:17 +00:00
Rory Powell b34b5fc5bb Fix tenant creation on user save (#9725) 2023-02-17 09:16:11 +00:00