* Updated CollectionService.GetOrganizationCollections to check if the user has permissions to view all collections
Co-authored-by: Vincent Salucci <26154748+vincentsalucci@users.noreply.github.com>
* Added migration script to alter ProviderOrganizationOrganizationDetailsView to add new columns UserCount, Seats and Plan
* Modified EF query ProviderOrganizationOrganizationDetailsReadByProviderIdQuery
* Modified model to output new view columns
* Updated view to count only active users
* Filtering the organization user count by only confirmed users
* [fix] Clear the page on Stripe Subscription search change
[SG-404]
* [fix] Ensure page is null when selecting all Stripe Subscriptions for an action
[SG-404]
* [feat] Allow Stripe Subscriptions to be filtered by a test clock
[SG-404]
* [ENG-71] updated release job to have Github deployment
* [ENG-71] Updated to use commit instead of v2.
* [ENG-71] Updated to track each server deployment.
Co-authored-by: Todd Martin <>
* Added nullable OrganizationId to EventModel
* Added EventType Organization_ClientExportedVault
* Updated CollectController to save the event Organization_ClientExportedVault
* Added OrganizationExportResponseModel to encapsulate Organization Export data
* Added OrganizationExportController to have a single endpoint for Organization vault export
* Added method GetOrganizationCollections to ICollectionService to get collections for an organization
* Added GetOrganizationCiphers to ICipherService to get ciphers for an organization
* Updated controllers to use new methods in ICollectionService and ICipherService
* Upgrade AspNetCoreRateLimiter and enable redis distributed cache for rate limiting.
- Upgrades AspNetCoreRateLimiter to 4.0.2, which required updating NewtonSoft.Json to 13.0.1.
- Replaces Microsoft.Extensions.Caching.Redis with Microsoft.Extensions.Caching.StackExchangeRedis as the original was deprecated and conflicted with the latest AspNetCoreRateLimiter
- Adds startup task to Program.cs for Api/Identity projects to support AspNetCoreRateLimiters breaking changes for seeding its stores.
- Adds a Redis connection string option to GlobalSettings
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Cleanup Redis distributed cache registration
- Add new AddDistributedCache service collection extension to add either a Memory or Redis distributed cache.
- Remove distributed cache registration from Identity service collection extension.
- Add IpRateLimitSeedStartupService.cs to run at application startup to seed the Ip rate limiting policies.
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Add caching configuration to SSO Startup.cs
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Add ProjectName as an instance name for Redis options
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Use distributed cache in CustomIpRateLimitMiddleware.cs
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Undo changes to Program.cs and launchSettings.json
* Move new service collection extensions to SharedWeb
* Upgrade Caching.StackExchangeRedis package to v6
* Cleanup and fix leftover merge conflicts
* Remove use of Newtonsoft.Json in distributed cache extensions
* Cleanup more formatting
* Fix formatting
* Fix startup issue caused by merge and fix integration test
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Linting fix
Signed-off-by: Shane Melton <smelton@bitwarden.com>
* Using correct ILogger on FreshdeskController
* Submitting custom fields to Freshdesk
* Set up FreshdeskController to use IHttpClientFactory
* Added unit test for FreshdeskController
* Moved ControllerCustomizeAttribute and ControllerCustomization to Common
* Modified FreshdeskController to use FreshdeskWebhookModel; Edited unit tests to use AutoFixture