1
0
mirror of https://github.com/bitwarden/server.git synced 2025-04-08 06:28:14 -05:00

32 Commits

Author SHA1 Message Date
Addison Beck
5ec37b96b4
Organization User Accepted Invite Email Notifications (#1465) 2021-07-16 13:49:27 -04:00
Matt Gibson
ee66d64c99
Avoid sql connection timeout (#1409)
* Read known emails to memory so we can close connection.

* Use ICollection as return

* Fix null reference if ip and date aren't set
2021-06-24 14:31:03 -05:00
Oscar Hinton
d4cf6d929a
Bulk Confirm (#1345)
* Add support for bulk confirm

* Add missing sproc to migration

* Change ConfirmUserAsync to internally use ConfirmUsersAsync

* Refactor to be a bit more readable

* Change BulkReinvite and BulkRemove to return a list of errors/success

* Refactor

* Fix removing owner preventing removing non owners

* Add another unit test

* Use fixtures for OrganizationUser and Policies

* Fix spelling
2021-05-25 19:23:47 +02:00
Matt Gibson
785e788cb6
Support large organization sync (#1311)
* Increase organization max seat size from 30k to 2b (#1274)

* Increase organization max seat size from 30k to 2b

* PR review. Do not modify unless state matches expected

* Organization sync simultaneous event reporting (#1275)

* Split up azure messages according to max size

* Allow simultaneous login of organization user events

* Early resolve small event lists

* Clarify logic

Co-authored-by: Chad Scharf <3904944+cscharf@users.noreply.github.com>

* Improve readability

This comes at the cost of multiple serializations, but the
 improvement in wire-time should more than make up for this
 on message where serialization time matters

Co-authored-by: Chad Scharf <3904944+cscharf@users.noreply.github.com>

* Queue emails (#1286)

* Extract common Azure queue methods

* Do not use internal entity framework namespace

* Prefer IEnumerable to IList unless needed

All of these implementations were just using `Count == 1`,
which is easily replicated. This will be used when abstracting Azure queues

* Add model for azure queue message

* Abstract Azure queue for reuse

* Creat service to enqueue mail messages for later processing

Azure queue mail service uses Azure queues.
Blocking just blocks until all the work is done -- This is
how emailing works today

* Provide mail queue service to DI

* Queue organization invite emails for later processing

All emails can later be added to this queue

* Create Admin hosted service to process enqueued mail messages

* Prefer constructors to static generators

* Mass delete organization users (#1287)

* Add delete many to Organization Users

* Correct formatting

* Remove erroneous migration

* Clarify parameter name

* Formatting fixes

* Simplify bump account revision sproc

* Formatting fixes

* Match file names to objects

* Indicate if large import is expected

* Early pull all existing users we were planning on inviting (#1290)

* Early pull all existing users we were planning on inviting

* Improve sproc name

* Batch upsert org users (#1289)

* Add UpsertMany sprocs to OrganizationUser

* Add method to create TVPs from any object.

Uses DbOrder attribute to generate.
Sproc will fail unless TVP column order matches that of the db type

* Combine migrations

* Correct formatting

* Include sql objects in sql project

* Keep consisten parameter names

* Batch deletes for performance

* Correct formatting

* consolidate migrations

* Use batch methods in OrganizationImport

* Declare @BatchSize

* Transaction names limited to 32 chars

Drop sproc before creating it if it exists

* Update import tests

* Allow for more users in org upgrades

* Fix formatting

* Improve class hierarchy structure

* Use name tuple types

* Fix formatting

* Front load all reflection

* Format constructor

* Simplify ToTvp as class-specific extension

Co-authored-by: Chad Scharf <3904944+cscharf@users.noreply.github.com>
2021-05-17 09:43:02 -05:00
Oscar Hinton
e2f633dace
Bulk re-invite of org users (#1316)
* Add APIs for Bulk reinvinte

* Resolve review comments.
2021-05-12 11:18:25 +02:00
Vincent Salucci
70f5fd5030
[Policy] Personal Ownership (#1013)
* Initial commit of disable personal vault policy

* Added new sproc // updated policy check (was missing conditionals)

* Updated DeMorgan's law logic
2020-12-11 10:45:26 -06:00
Vincent Salucci
09aea4ed38
[Bug] Improve SSO user provision flow (#1022)
* Initial commit of provisioning updates

* Updated strings

* removed extra BANG

* Separated orgUsers db lookup - prioritized existing user Id

* Updated create sso record method // Added sproc for org/email retrieval
2020-12-04 16:45:54 -06:00
Addison Beck
e872b4df9d
Only org policy (#962)
* added OnlyOrg to PolicyType enum

* blocked accepting new org invitations if OnlyOrg is relevant to the userOrg

* blocked creating new orgs if already in an org with OnlyOrg enabled

* created email alert for OnlyOrg policy

* removed users & sent alerts when appropriate for the OnlyOrg policy

* added method to noop mail service

* cleanup for OnlyOrg policy server logic

* blocked confirming new org users if they have violated the OnlyOrg policy since accepting

* added localization strings needed for the OnlyOrg policy

* allowed OnlyOrg policy configuration from the portal

* used correct localization key for onlyorg

* formatting and messaging changes for OnlyOrg

* formatting

* messaging change

* code review changes for onlyorg

* slimmed down a conditional

* optimized getting many orgUser records from many userIds

* removed a test file

* sql formatting

* weirdness

* trying to resolve git diff formatting issues
2020-10-20 02:48:10 -04:00
Kyle Spearrin
00f3c476ae apis for getting user details 2019-03-05 23:22:43 -05:00
Kyle Spearrin
d03421fe4b fix to user already exists checks 2017-11-13 10:06:54 -05:00
Kyle Spearrin
8ba3e27a7d allow user delete if they are not the only owner 2017-10-25 11:36:54 -04:00
Kyle Spearrin
21d1cd6adc collection user refactor 2017-05-11 14:52:35 -04:00
Kyle Spearrin
f0d7dc8023 Group access & sproc/model refactoring. 2017-05-11 10:32:25 -04:00
Kyle Spearrin
7a4d20ac1f group user assignment apis 2017-05-09 19:04:01 -04:00
Kyle Spearrin
628a72b13f handle user delete scenarios when part of org 2017-04-27 17:28:39 -04:00
Kyle Spearrin
c6ac82dadd renaming subvault => collection 2017-04-27 09:19:30 -04:00
Kyle Spearrin
1cf38397f3 leave org apis 2017-04-12 10:07:27 -04:00
Kyle Spearrin
51e8d3f1a7 added max subvault count. check max org users. 2017-04-07 16:41:04 -04:00
Kyle Spearrin
7497d5ca6f Org admin cleanup
- Added sproc to check if org admin for free org create
- Removed old proeprties not in user from org and subvault
- Added more cascade deletes
2017-04-07 14:52:31 -04:00
Kyle Spearrin
c4ab901098 remove admin checks from services for ctrl context 2017-04-05 16:29:46 -04:00
Kyle Spearrin
a474449354 added user orgs to claims 2017-04-05 15:31:33 -04:00
Kyle Spearrin
f1fc7832a0 subvault user apis 2017-04-03 12:27:02 -04:00
Kyle Spearrin
95fdfeb519 orgs must have one owner checks 2017-03-29 21:26:19 -04:00
Kyle Spearrin
472a4ade8f org invite validation and email tweaks 2017-03-28 21:16:19 -04:00
Kyle Spearrin
da29160218 filter status 2017-03-25 21:53:32 -04:00
Kyle Spearrin
cfb4d1453c org user subvaults apis 2017-03-11 22:42:27 -05:00
Kyle Spearrin
4a9206b992 get subvaults for organization user 2017-03-11 15:34:57 -05:00
Kyle Spearrin
bd0c960e9f move domains to Models.Table 2017-03-08 21:45:08 -05:00
Kyle Spearrin
7ca8629a13 org user details apis 2017-03-06 20:51:13 -05:00
Kyle Spearrin
5ac2113cac org user management apis 2017-03-04 21:28:41 -05:00
Kyle Spearrin
29e3605576 organization signup apis and data model changes 2017-03-03 00:07:11 -05:00
Kyle Spearrin
0b87e2c57e Org API controller and supporting data access 2017-03-02 00:15:05 -05:00