Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mfa multitenancy #122

Merged
merged 16 commits into from
Oct 26, 2023
Merged

Mfa multitenancy #122

merged 16 commits into from
Oct 26, 2023

Conversation

sattvikc
Copy link
Collaborator

@sattvikc sattvikc commented Oct 13, 2023

Summary of change

(A few sentences about this PR)

Related issues

Checklist for important updates

  • Changelog has been updated
  • Changes to the version if needed
    • In build.gradle
  • Had installed and ran the pre-commit hook
  • Issue this PR against the latest non released version branch.
    • To know which one it is, run find the latest released tag (git tag) in the format vX.Y.Z, and then find the latest branch (git branch --all) whose X.Y is greater than the latest released tag.
    • If no such branch exists, then create one from the latest released branch.

Remaining TODOs for this PR

  • Item1
  • Item2

@sattvikc sattvikc self-assigned this Oct 13, 2023
Base automatically changed from mfa-cleanup to feat/mfa October 16, 2023 11:43
@sattvikc sattvikc marked this pull request as ready for review October 18, 2023 09:03
@rishabhpoddar rishabhpoddar merged commit 0017637 into feat/mfa Oct 26, 2023
0 of 2 checks passed
@rishabhpoddar rishabhpoddar deleted the mfa-multitenancy branch October 26, 2023 06:01
rishabhpoddar added a commit that referenced this pull request Mar 13, 2024
* adds interface for multi tenancy

* changes storage layer to take json instead of config file path

* adds new interface to indentify a user pool

* exception throwing change

* adds function to get connection pool ID

* changes to interface

* changes to initstorage interface function

* adds function so that the core can create multiple user pools during testing across dbs

* adds tenantidentifier class

* adds more functions to interface

* removes unused exception

* small change

* adds new functions

* adds deletion functions for multitenancy

* few changes

* updates exception class

* simplifies delete of app and connectionuridomain

* adds getters for certain tenant config props

* adds equals functions for tenantconfig types

* adds constructors for thirdparty config objects

* changes equals for tenantconfig

* removes nullable annotation from primitive type

* adds tenantIdentifier for emailpassword and useridmapping recipes

* adds extra comment

* adds comment

* changes to incorporate tenantIndetifier for key value storage

* changes to session receipe to add tenantIdentifier

* introduces the concept of appIdentifier vs tenantIdentifier

* adds a few more functions

* adds appidentifier to user metadata functions

* modifes user roles functions to add tenantidentifier and appidentifiers

* changes to emailpassword functions

* changes to a few functions

* adds appidentifier to email verfication

* adds tenant identifier to third party

* adds tenantidentifier to passwordless

* function name changes

* fix: changes for multi-tenancy impl (#55)

* fix: pr comments

* fix: pr comments

* fix: new exceptions (#56)

* fix: pr comments

* fix: pr comments

* fix: added few more exceptions

* fix: pr comments

* fix: userInfoMap consistent with db

* fix: non null

* fix: changes for random test (#57)

* fix: pr comments

* fix: pr comments

* fix: added few more exceptions

* fix: pr comments

* fix: userInfoMap consistent with db

* fix: non null

* fix: update for random test

* makes dashboard interface per app

* fix: storage in AppIdentifier and TenantIdentifier (#61)

* fix: storage in AppIdentifier and TenantIdentifier

* fix: pr comments

* fix: changes for delete user

* fix: changes for delete user

* fix: revert

* fix: updated exception msg

* fix: pr comment

* fix: adding tenant or app not found exceptions

* fix: adding tenant or app not found exceptions

* fix: fixed pless interface (#64)

* fix: to support PR comments on core (#65)

* fix: from core pr comments

* fix: TenantIdentifierWithStorage and AppIdentifierWithStorage

* fix: made storage private

* fix: added storages to appIdentifierWithStorage (#66)

* fix: Multitenant userroles (#67)

* fix: user roles impl

* fix: handling fkey

* Update src/main/java/io/supertokens/pluginInterface/userroles/sqlStorage/UserRolesSQLStorage.java

---------

Co-authored-by: Rishabh Poddar <[email protected]>

* fix: Multitenant usermetadata (#68)

* fix: user roles impl

* fix: handling fkey

* fix: usermetadata impl

* fix: user metadata impl

* fix: ep storage (#69)

* fix: Multitenant uidmapping storage (#70)

* fix: uid mapping storage

* fix: SQL check

* fix: Multitenant passwordless storage (#71)

* fix: passwordless storage

* fix: passwordless storage

* fix: thirdparty storage (#72)

* fix: Multitenant thirdparty changes for update email (#73)

* fix: thirdparty storage

* fix: thirdparty changes

* fix: Multitenant emailverification storage (#74)

* fix: thirdparty storage

* fix: emailverification storage

* fix: making tokens tenant specific (#75)

* comment modification

* fix: Multitenant session (#76)

* fix: session changes

* fix: session changes

* fix: adding tenant or app not found exceptions

* merges with latest (#77)

* small change

* fix: jwt changes (#78)

* fix: Multitenant Authrecipe changes (#79)

* fix: auth recipe storage

* fix: added session storage

* fix: Multitenant dashboard (#80)

* fix: dashboard storage

* fix: updated exception

* fix: Multitenant totp (#81)

* fix: removed unused throw

* fix: handling fk

* merges (#82)

* adds new config (#83)

* fix: multitenancy changes (#84)

* fix: multitenancy

* fix: interface update

* fix: added db protection flag

* fix: add userId to tenant

* fix: updated as per CDI

* fix: removed unused func

* fix: protected fields

* fix: pr comment

* fix: better serialization

* fix: base tenant (#85)

* feat: Introduce MFA recipe

* chores: Mention MFA recipe in the CHANGELOG

* fix: Tenantid in userobjects (#86)

* fix: adding tenant ids to user objects

* fix: create user type

* fix: refactor ep and tp

* fix: refactor pless

* fix: tenant id in loadConfig (#88)

* fix: delete non auth user (#89)

* feat: Improvements for EE features and removing MFA info when deleting the user

* fix: nonAuthRecipeuserData to take tenantIdentifier (#90)

* fix: pr comment

* fix: config validation (#91)

* feat: Add function to delete user from a tenant

* fix: reload resources (#93)

* fix: added setLogLevels (#95)

* Use deleteMfaInfoForuser and overload it to handle app as well as tenant identifier

* fix: Active user storage to extend NonAuthRecipeStorage (#97)

* fix: fixed base class

* fix: added throws

* refactor: Replace TotpNotEnabledError with UnknownUserIdTotpError (#106)

* refactor: Replace totp not enabled error with unknown device error

* chores: Update CHANGELOG

* refactor: Remove totp not enabled exception

* feat: Add UnknownUserIdException

* Replace TotpNotEnabledError with UnknownUserIdTotpError

* chores: Update CHANGELOG

* fix: rename exception

* fix: changelog

* fix: new functions for create device

---------

Co-authored-by: Sattvik Chakravarthy <[email protected]>

* fix: refactor transaction functions (#120)

* fix: mfa cleanup (#121)

* fix: mfa cleanup (#123)

* Mfa multitenancy (#122)

* fix: mfa multitenancy

* fix: mfa cleanup

* fix: mfa first factor type

* fix: mfa first factor type

* fix: tenant config json

* fix: interfaces changes

* fix: tests

* fix: config changes

* fix: empty line

* fix: pr comment

* fix: refactor

* fix: pr comments

* fix: PR comments

* fix: ordering in comparision

* fix: add createdat to totp device (#130)

* fix: mfa stats (#131)

* fix: version and changelog

* fix: version

* fix: Mfa changes (#135)

* fix: remove totp config and rename fields in tenant config

* fix: updated json

* feat: Add support to update the signing key type of a session (#136)

* feat: make refresh update the signing key type of sessions

* chore: update changelog

* merge latest (#141)

* fix: fixes storage handling for non-auth recipes (#140)

* fix: non auth stuff

* fix: AppIdentifier

* fix: interface changes

* fix: multitenancy storage

* fix: update add user role

* fix: cleanup

* fix: user role storage updates

* fix: user roles

* fix: version and changelog

* adding dev-v5.0.0 tag to this commit to ensure building

---------

Co-authored-by: rishabhpoddar <[email protected]>

* Remaining changes (#144)

* fix: pass appId to getUserIdMappingForSuperTokensIds

* fix: versions

* fix: changelog

* merge 5.0 (#145)

* fix: fixes storage handling for non-auth recipes (#140)

* fix: non auth stuff

* fix: AppIdentifier

* fix: interface changes

* fix: multitenancy storage

* fix: update add user role

* fix: cleanup

* fix: user role storage updates

* fix: user roles

* fix: version and changelog

* adding dev-v5.0.0 tag to this commit to ensure building

---------

Co-authored-by: rishabhpoddar <[email protected]>

---------

Co-authored-by: rishabhpoddar <[email protected]>
Co-authored-by: Sattvik Chakravarthy <[email protected]>
Co-authored-by: Sattvik Chakravarthy <[email protected]>
Co-authored-by: Mihály Lengyel <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants