diff --git a/src/Api/Vault/AuthorizationHandlers/OrganizationUsers/OrganizationUserAuthorizationHandler.cs b/src/Api/Vault/AuthorizationHandlers/OrganizationUsers/OrganizationUserAuthorizationHandler.cs index 38297bb5c7..e7c4f64927 100644 --- a/src/Api/Vault/AuthorizationHandlers/OrganizationUsers/OrganizationUserAuthorizationHandler.cs +++ b/src/Api/Vault/AuthorizationHandlers/OrganizationUsers/OrganizationUserAuthorizationHandler.cs @@ -1,4 +1,5 @@ -using Bit.Core; +#nullable enable +using Bit.Core; using Bit.Core.Context; using Bit.Core.Enums; using Bit.Core.Exceptions; @@ -57,29 +58,27 @@ public class OrganizationUserAuthorizationHandler : AuthorizationHandler sutProvider, CurrentContextOrganization organization) { + organization.Type = OrganizationUserType.User; + organization.LimitCollectionCreationDeletion = true; + organization.Permissions = new Permissions(); + var context = new AuthorizationHandlerContext( new[] { OrganizationUserOperations.ReadAll(organization.Id) }, new ClaimsPrincipal(), @@ -64,18 +69,21 @@ public class OrganizationUserAuthorizationHandlerTests } [Theory] - [BitAutoData(true, false, false, false)] - [BitAutoData(false, true, false, false)] - [BitAutoData(false, false, true, false)] - [BitAutoData(false, false, false, true)] + [BitAutoData(true, false, false, false, true)] + [BitAutoData(false, true, false, false, true)] + [BitAutoData(false, false, true, false, true)] + [BitAutoData(false, false, false, true, true)] + [BitAutoData(false, false, false, false, false)] public async Task CanReadAllAsync_WhenCustomUserWithRequiredPermissions_Success( - bool editAnyCollection, bool deleteAnyCollection, bool manageGroups, bool manageUsers, + bool editAnyCollection, bool deleteAnyCollection, bool manageGroups, + bool manageUsers, bool limitCollectionCreationDeletion, SutProvider sutProvider, CurrentContextOrganization organization) { var actingUserId = Guid.NewGuid(); organization.Type = OrganizationUserType.Custom; + organization.LimitCollectionCreationDeletion = limitCollectionCreationDeletion; organization.Permissions = new Permissions { EditAnyCollection = editAnyCollection, @@ -114,8 +122,7 @@ public class OrganizationUserAuthorizationHandlerTests EditAnyCollection = false, DeleteAnyCollection = false, ManageGroups = false, - ManageUsers = false, - AccessImportExport = false + ManageUsers = false }; var context = new AuthorizationHandlerContext(