aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-03-23Use async verify for Yubikey (#4448)Daniel García
2024-03-23Update Rust and crates (#4445)Mathijs van Veluw
- Updated Rust to v1.77.0 - Updated several crates The `reqwest` update included `trust-dns` > `hickory-dns` changes. Also, `reqwest` v0.12 is not working correctly for us, that is something to investigate. - Fixed a new clippy warning
2024-03-19Update chrono and sqlite (#4436)Mathijs van Veluw
- Updated sqlite crate - Updated chrono crate The latter needed a lot of changes done, mostly `Duration` to `TimeDelta`. And some changes on how to use Naive.
2024-03-19fix: typos (#4440)guangwu
Signed-off-by: guoguangwu <[email protected]>
2024-03-17automatically use email address as 2fa provider (#4317)Stefan Melmuk
2024-03-17Fix #3624: fix manager permission within groups (#3754)Matlink
* Fix #3624: fix manager permission within groups * Query returns UUID only * Fix issue when user is manager and in a group having access to all collections * optimize condition check * fix(groups): renaming and optimizations * fix: wrong organization group membership detection * Simplify group membership check Co-authored-by: Stefan Melmuk <[email protected]> * Remove unused statement * improve check if the user has access via groups instead of returning the two lists of member ids and later checking if they contain the uuid of the current user, we really only care if the current user has full access via a group or if they have access to a given collection via a group * improve comments for get_org_collections_details * small refactor to make it easier to review * fix(groups): query full access via group only when necessary Co-authored-by: Mathijs van Veluw <[email protected]> * chore(fmt): apply rustfmt --------- Co-authored-by: Stefan Melmuk <[email protected]> Co-authored-by: Stefan Melmuk <[email protected]> Co-authored-by: Mathijs van Veluw <[email protected]>
2024-03-17Change timestamp data type. (#4355)gzfrozen
Co-authored-by: Daniel García <[email protected]>
2024-03-17Small improvements around email change (#4415)Jacques B
2024-03-17refactor: replace panic with a graceful exit (#4402)Helmut K. C. Tessarek
* refactor: replace panic with a graceful exit * fix: clippy errors * fix: typo * Update src/main.rs Co-authored-by: Stefan Melmuk <[email protected]> --------- Co-authored-by: Stefan Melmuk <[email protected]>
2024-03-17Remove custom WebSocket code (#4001)Mathijs van Veluw
* Remove custom WebSocket code Remove our custom WebSocket code and only use the Rocket code. Removed all options in regards to WebSockets Added a new option `WEBSOCKET_DISABLED` which defaults too `false`. This can be used to disable WebSockets if you really do not want to use it. * Addressed remarks given and some updates - Addressed comments given during review - Updated crates, including Rocket to the latest merged v0.5 changes - Removed an extra header which should not be sent for websocket connections * Updated suggestions and crates - Addressed the suggestions - Updated Rocket to latest rc4 Also made the needed code changes - Updated all other crates Pinned `openssl` and `openssl-sys` --------- Co-authored-by: Daniel García <[email protected]>
2024-03-17Improve JWT key initialization and avoid saving public key (#4085)Daniel García
2024-03-17Fix comment in events.rs (#4408)Krapp
I think ` // Collection events` was repeated twice
2024-03-17Signed-off-by: one230six <[email protected]> (#4422)one230six
Signed-off-by: one230six <[email protected]>
2024-03-17Update cratesDaniel García
2024-03-02fix: web API call for jquery 3.7.1 (#4400)1.30.5Calvin Li
2024-02-25Update crates, GHA and a Python/JS scripts (#4357)1.30.4Mathijs van Veluw
- Update all crates - Update GHA - Update Global Domains script to use main instead of master Also fixed some Python linting warnings - Updated Admin JS and CSS libraries
2024-02-19Fix env templateto ensure compatibility with systemd's EnvironmentFile ↵seiuneko
parsing (#4315) * fix: update env template for systemd compatibility Adjust env template to ensure compatibility with systemd's EnvironmentFile parsing, which only recognizes line-starting comment symbols. * Refactor SMTP and Rocket settings in .env.template - Simplify the SMTP_SECURITY and SMTP_PORT options by providing a list of choices and default values - Clarify the ROCKET_PORT default value depending on the environment (Docker or not)
2024-02-10Change the codegen-units for low resources (#4336)Mathijs van Veluw
It seems (as disscusses here #4320) a single codegen unit makes it still crash. This sets it to the default 16 Rust uses for the release profile.
2024-02-08Update Rust, crates and web-vault (#4328)Mathijs van Veluw
- Updated Rust to v1.76.0 - Updated crates - Updated web-vault to v2024.1.2b - Fixed some Clippy lints - Moved lint check configuration Cargo.toml - Fixed issue with Reset Password Enrollment when logged-in via device
2024-02-03Update GHA Workflows (#4309)Mathijs van Veluw
- Update the workflow GH Actions. - Configured the release workflow to always run on main/tag as discussed in #4226 Closes #4226
2024-02-02Add Kubernetes environment detection (#4290)Mathijs van Veluw
Also check if we are running within a Kubernetes environment. These do not always run using Docker or Podman of course. Also renamed all the functions and variables to use `container` instead of `docker`.
2024-02-02Update crates to fix new builds (#4308)Mathijs van Veluw
Because handlebars yanked a version which was there for a few days, we need to downgrade this crate. In this process update all the others. Fixes #4307
2024-01-31Fix healthcheck when using .env file (#4299)1.30.3Mathijs van Veluw
It seems Debian based images see the `.env` file in the `pwd` path, but sourcing it via `. .env` breaks. It does work if you provide the full path `/.env`. Changed the default to `/.env`. Alpine does not have an issue with both ways.
2024-01-31fix push device registration (#4297)Stefan Melmuk
don't try to register a push device when the device is new it will be registered when the push token is saved fixes #4296
2024-01-30Update env template file (#4276)1.30.2gzfrozen
* update env template to fit the config.rs * Categorize env template settings * Fix a wrong setting * Fix wrong icon redirect code * Fix ICON_DOWNLOAD_TIMEOUT default value Co-authored-by: Daniel <[email protected]> * Move related settings together. Merge Yubikey, Duo, Email 2FA sections into one. Other minor fixes. * Minor fix of some settings position * Add some comment * Minor fix. --------- Co-authored-by: Daniel <[email protected]>
2024-01-30register missing push devices at login (#3792)Stefan Melmuk
save the push token of new device even if push notifications are not enabled and provide a way to register the push device at login unregister device if there already is a push token saved unless the new token has already been registered. also the `unregister_push_device` function used the wrong argument cf. https://github.com/bitwarden/server/blob/08d380900b540f8d1a734c7abccaf80e59a91ced/src/Core/Services/Implementations/RelayPushRegistrationService.cs#L43
2024-01-28err on invalid feature flag (#4263)Stefan Melmuk
* err on invalid feature flag * print all invalid flags and improve error message
2024-01-28Fix attachment upload size check (#4282)Mathijs van Veluw
The min/max were reversed with the `add` and `sub` functions. This caused the files to always be out of bounds in the check. Fixes #4281
2024-01-27Improve file limit handling (#4242)Daniel García
* Improve file limit handling * Oops * Update PostgreSQL migration * Review comments --------- Co-authored-by: BlackDex <[email protected]>
2024-01-26Return 404 when user public_key is empty (#4271)Jacques B
2024-01-26Update crates, web-vault and GHA (#4275)Mathijs van Veluw
- Update GitHub Actions - Updated crates - Updated web-vault to v2024.1.2
2024-01-25prevent side effects if groups are disabled (#4265)Stefan Melmuk
2024-01-25fix: use black text for update badge (better contrast) (#4245)Helmut K. C. Tessarek
2024-01-25Fix bulk collection deletion (#4257)Mathijs van Veluw
The bulk collection delete seems to have removed the extra org_id in the posted data. Now we only use the org_id from the path. Fixes #4253
2024-01-25Bump h2 from 0.3.23 to 0.3.24 (#4260)dependabot[bot]
Bumps [h2](https://github.com/hyperium/h2) from 0.3.23 to 0.3.24. - [Release notes](https://github.com/hyperium/h2/releases) - [Changelog](https://github.com/hyperium/h2/blob/v0.3.24/CHANGELOG.md) - [Commits](https://github.com/hyperium/h2/compare/v0.3.23...v0.3.24) --- updated-dependencies: - dependency-name: h2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-12Update crates and fix icon issue (#4237)Mathijs van Veluw
- Fix icon download issue by removing the deflate feature - Updated all the crates - Updated Handlebars code Fixes #4224
2024-01-10improve emergency access when not enabled (#4227)Stefan Melmuk
* improve emergency access when not enabled * display note that emergency access is disabled
2024-01-01Update README.mdDaniel García
2024-01-01enforce 2FA policy on removal of second factor and login (#3803)Stefan Melmuk
* enforce 2fa policy on removal of second factor users should be revoked when their second factors are removed. we want to revoke users so they don't have to be invited again and organization admins and owners are aware that they no longer have access. we make an exception for non-confirmed users to speed up the invitation process as they would have to be restored before they can accept their invitation or be confirmed. if email is enabled, invited users have to add a second factor before they can accept the invitation to an organization with 2fa policy. and if it is not enabled that check is done when confirming the user. * use &str instead of String in log_event() * enforce the 2fa policy on login if a user doesn't have a second factor check if they are in an organization that has the 2fa policy enabled to revoke their access
2024-01-01US or EU Data Region Selection (#3752)THONY
* add selection of data region for push * fix cargo check + rewrite config + add check url * fix clippy error * add comment in .env.template, adapt config.rs * Update .env.template Co-authored-by: William Desportes <[email protected]> * Update .env.template Co-authored-by: William Desportes <[email protected]> * Revert "Update .env.template" This reverts commit 5bed974ba7b9f481792d2228834585f053d47dc3. * Revert "Update .env.template" This reverts commit 0760eff95dfaf2a9cf97bb25f6cf7660bdf55173. * fix /connect/token to push identity * fix /connect/token to push identity * Fixed formatting when solving merge conflicts --------- Co-authored-by: William Desportes <[email protected]> Co-authored-by: Daniel García <[email protected]>
2024-01-01Fix #3413: push to users accessing the collections using groups (#3757)Matlink
* Fix #3413: push to users acessing the collections using groups * Notify groups only when enabled
2024-01-01Allow customizing the featureStates (#4168)Philipp Kolberg
* Allow customizing the featureStates Use a comma separated list of features to enable using the FEATURE_FLAGS env variable * Move feature flag parsing to util * Fix formatting * Update supported feature flags * Rename feature_flags to experimental_client_feature_flags Additionally, use a caret (^) instead of an exclamation mark (!) to disable features * Fix formatting issue. * Add documentation to env template * Remove functionality to disable feature flags * Fix JSON key for feature states * Convert error to warning when feature flag is unrecognized * Simplify parsing of feature flags * Fix default value of feature flags in env template * Fix formatting
2024-01-01Fix Single Org Policy check (#4207)Mathijs van Veluw
There was an error in the single org policy check to determine how many users there are in an org. The `or` check was at the wrong location in the DSL. This is now fixed. Fixes #4205
2024-01-01Update Rust and Crates (#4211)Mathijs van Veluw
- Updated Rust to v1.75.0 - Updated all the crates - Fixed warning generated by latest version of Rust
2023-12-24Update web-vault to v2023.12.0 (#4201)Mathijs van Veluw
2023-12-18Add additional build target which optimizes for size (#4096)Chris
OpenWRT is a project which builds and distributes firmware for embedded devies like routers, access points, and so on. These devices are usually very limited in terms of storage. Therefore, optimizing binaries for size at the cost of execution speed is usually desired. This PR adds an additional build-target, namely "release-micro", which implements several parameters which optimize in favor of binary size. The following parameters were chosen: - opt-level "z": Optimize for size with disabled loop vectorization - strip "symbols": Strip debuginfo and symbols from binary - lto "fat": Enable link-time optimizations across all crates - codegen-units 1: Disable parallelization of code generation to allow for additional optimizations - panic "abort": Abort on Panic() instead of unwinding All these build parameters significantly reduce the binary size from >40MB to <15MB - the actual amount depends on the target architecture. We would like to upstream this new build target to keep our build environment simple. Other projects which deploy vaultwarden on size-constrained environments may benefit from this change too. Signed-off-by: Christian Lachner <[email protected]>
2023-12-18Update crates (#4173)Mathijs van Veluw
Update all crates instead of only the zerocopy from dependabot. Closes #4170
2023-12-13Decrease JWT Refresh/Auth token (#4163)Mathijs van Veluw
Large JWT's could cause issue because of header or body sizes of the HTTP request could get too large when you are a member of a lot of organizations. This PR removes these specific keys since they are not used either client side or server side. Because Bitwarden does add these in there JWT's i would suggest to keep the code we had but then commented out as a reference. Removing it and searching for this when needed would be a waist of time. Fixes #4156
2023-12-09Fix the version string (#4153)Mathijs van Veluw
For some reason still not known, the `.git` directory was not copied into the container. I think buildkit (buildx) did this by default before, and stopped this with newer versions. This PR fixes this by also touching `build.rs` besides `src/main.rs`. This PR also updates Rust to v1.74.1 and some crates, including the latest version of Alpine 3.19. Fixes #4150
2023-12-09Several small fixes for open issues (#4143)Mathijs van Veluw
* Fix BWDC when re-run with cleared cache Using the BWDC with a cleared cache caused invited users to be converted to accepted users. The problem was a wrong check for the `restore` function. Fixes #4114 * Remove useless variable During some refactoring this seems to be overlooked. This variable gets filled but isn't used at all afterwards. Fixes #4105 * Check some `.git` paths to force a rebuild When a checked-out repo switches to a specific tag, and that tag does not have anything else changed in the files except the tag, it could happen that the build process doesn't see any changes, while it could be that the version string needs to be different. This commit ensures that if some specific paths are changed within the .git directory, cargo will be triggered to rebuild. Fixes #4087 * Do not delete dir on file delete Previously during a `delete_file` check we also tried to delete the parent directory and ignored all errors, like not being empty for example. Since this function is called `delete_file` and does not mention anything in regards to a directory i have removed that code and it will now only delete the file and leave the rest as-is. If this somehow is still needed or wanted, which i do not think we want, then we should create a new function. Fixes #4081 * Fix healthcheck when using an ENV file If someone is using a `.env` file or configured the `ENV_FILE` variable to use that as it's configuration, this was missed by the healthcheck. So, `DOMAIN` and `ROCKET_TLS` were not seen, and not used in these cases. This commit fixes this by checking for this file and if it exists, then it will load those variables first. Fixes #4112 * Add missing route While there was a function and a derive, this endpoint wasn't part of the routes. Since Bitwarden does have this endpoint ill add the route instead of deleting it. Fixes #4076 Fixes #4144 * Update crates to update the openssl crate Because of a bug in the openssl-sys crate we pinned the version to an older version. This issue has been fixed and was released 2 days ago. This commit updates the openssl crates including others. This should also fix the issues with building Vaultwarden using newer versions of LibreSSL. Fixes #4051