Commit Graph

1209 Commits (d1ecf03f44f8b94032f3c8b0794088d487c93648)

Author SHA1 Message Date
BlackDex 9466f02696 Recoded TOTP time drift validation
5 years ago
BlackDex 2cde814aaa Fixed a bug with the sqlite backup feature.
5 years ago
BlackDex d989a19f76 Merge branch 'master' of https://github.com/dani-garcia/bitwarden_rs into totp-timedrift
5 years ago
Daniel García d292269ea0
Make the blacklist logic be cached
5 years ago
BlackDex ebf40099f2 Updated authenticator TOTP
5 years ago
BlackDex edc482c8ea Changed HIBP Error message.
5 years ago
BlackDex 6e5c03cc78 Some modification when no HIBP API Key is set
5 years ago
Daniel García 881c1978eb
Error when the URL scheme doesn't match the database type
5 years ago
Daniel García 662bc27523
Updated dependencies and fixed disable_admin_token description
5 years ago
Daniel García e6b763026e
Merge branch 'master' into icon-security
5 years ago
Daniel García c182583e09
Merge pull request #644 from BlackDex/issue-565
5 years ago
Daniel García d821389c2e
Merge pull request #639 from vverst/cors-update
5 years ago
BlackDex be2916333b Fixed issue #565
5 years ago
BlackDex 9124d8a3fb Updated icon blacklisting.
5 years ago
vpl 7b1da527a6 Change CORS headers
5 years ago
Miro Prasil d6e9af909b Remove the unnecessary check for sqlite
5 years ago
Miro Prasil acdd42935b Add sqlite binary into the docker images
5 years ago
vpl 56f12dc982 Use Access-Control-Allow-Method
5 years ago
Daniel García 4c07f05b3a
Remove Result<T, E: Debug> in preparation of deprecation as Rocket responder.
5 years ago
Michael Powers f5f9861a78
Adds support for PostgreSQL which resolves #87 and is mentioned in #246.
5 years ago
Daniel García df8114f8be
Updated client kdf iterations to 100000 and fixed some lints
5 years ago
vpl 5a2f968d7a Set correct response headers, status code
5 years ago
vpl 16d88402cb Initial version of CORS support
5 years ago
Daniel García 7dcf18151d
Fix onsubmit
5 years ago
Daniel García e3404dd322
Use the local scripts instead of cloudflare, remove jquery and update config so disabling a master toggle doesn't remove the values
5 years ago
Daniel García bfc517ee80
Remove unused warning
5 years ago
Daniel García 4a7d2a1e28
Rename static files endpoint
5 years ago
Daniel García c07c9995ea
Merge pull request #555 from vverst/email-codes
5 years ago
ViViDboarder 672a245548 Remove unecessary clone
5 years ago
vpl 5d50b1ee3c Merge remote-tracking branch 'upstream/master' into email-codes
5 years ago
vpl c99df1c310 Compare token using crypto::ct_eq
5 years ago
vpl 591ae10144 Get token from single u64
5 years ago
ViViDboarder 2d2745195e Allow explicitly defined smtp auth mechansim
5 years ago
Daniel García 026f9da035
Allow removing users two factors
5 years ago
Daniel García d23d4f2c1d
Allow editing HIBP key in the admin panel
5 years ago
Daniel García 515b87755a
Update HIBP to v3, requires paid API key, fixes #583
5 years ago
vpl ee7837d022 Add option to require new device emails
5 years ago
Daniel García 07743e490b
Ignore error sending device email
5 years ago
BlackDex e7b6238f43 Added reqwest proxy support
5 years ago
vpl ad2225b6e5 Add configuration options for Email 2FA
5 years ago
vpl 5609103a97 Use ring to generate email token
5 years ago
vpl 6d460b44b0 Use saved token for email 2fa codes
5 years ago
vpl efd8d9f528 Remove some unused imports, unneeded mut variables
5 years ago
vpl 29aedd388e Add email code logic and move two_factor into separate modules
5 years ago
vpl 27e0e41835 Add email authenticator logic
5 years ago
vpl 0b60f20eb3 Add email message for twofactor email codes
5 years ago
Daniel García c9c3f07171
Updated dependencies and fixed panic getting icons
5 years ago
vpl df71f57d86 Move send device email to end of password login
5 years ago
vpl 60e39a9dd1 Move retrieve/new device from connData to separate function
5 years ago
vpl bc6a53b847 Add new device email when user logs in
5 years ago
Daniel García 05a1137828
Move backend checks to build.rs to fail fast, and updated dependencies
5 years ago
Nick Fox 2e300da057
Fix #468 - Percent-encode the email address in invite link
5 years ago
Cubity_First 6989fc7bdb
Corrected Spelling
6 years ago
Daniel García 76f38621de
Update dependencies and remove unwraps from Cipher::to_json
6 years ago
Daniel García 12af32b9ea
Don't print DB URL
6 years ago
Daniel García 9add8e19eb
Update dependencies and remove travis unused feature
6 years ago
Daniel García 5710703c50
Make sure the backup option only appears when using sqlite
6 years ago
Daniel García 1322b876e9
Merge pull request #493 from endyman/feature/initial_mysql_support
6 years ago
Daniel García 9ed2ba61c6
Merge pull request #475 from TheMardy/master
6 years ago
Nils Domrose 62a461ae15 remove syslog from ci, make features flag more clear
6 years ago
Nils Domrose 4859932d35 fixed typo
6 years ago
Nils Domrose dc36f0cb6c re-added sqlite check_db code, cleanup
6 years ago
Nils Domrose ff759397f6 initial mysql support
6 years ago
Emil Madsen 233b48bdad Fix missing joinable in schema
6 years ago
Emil Madsen e22e290f67 Fix key and type variable names for mysql
6 years ago
Emil Madsen ab95a69dc8 Rework migrations for MySQL
6 years ago
Emil Madsen 85c8a01f4a Merge branch 'master' of github.com:Skeen/bitwarden_rs
6 years ago
Emil Madsen 42af7c6dab MySQL database
6 years ago
Daniel García 4f45cc081f
Update ring to 0.14, jwt to 6.0, and u2f
6 years ago
TheMardy ef551f4cc6 Create Backup funcitonality
6 years ago
Daniel García 5521a86693
Change path for served images to avoid collision with vault images
6 years ago
Daniel García 3160780549
Merge pull request #401 from TheMardy/master
6 years ago
TheMardy f0701657a9 Changed to Bitwarden_RS Logo
6 years ago
Daniel García 874f5c34bd
Formatting
6 years ago
Daniel García 253faaf023
Use users duo host when required, instead of always using the global one
6 years ago
Daniel García 3d843a6a51
Merge pull request #460 from janost/organization-vault-purge
6 years ago
janost 03fdf36bf9 Fixed purging organization vault
6 years ago
Daniel García fdcc32beda
Validate Duo credentials when custom
6 years ago
Daniel García bf20355c5e
Merge branch 'duo'
6 years ago
Daniel García 0136c793b4
Implement better user status API, in the future we'll probably want a way to disable users.
6 years ago
Daniel García 2e12114350
Always create the user when inviting from admin panel
6 years ago
ViViDboarder d3a8a278e6 Add new endpoint for retrieving all users
6 years ago
Daniel García 8d9827c55f
Implement selection between global config and user settings for duo keys.
6 years ago
Daniel García cad63f9761
Auto generate akey
6 years ago
Daniel García bf446f44f9
Enable DATA_FOLDER to affect default CONFIG_FILE path
6 years ago
Daniel García 621f607297
Update dependencies and fix some warnings
6 years ago
Daniel García 754087b990
Add global duo config and document options in .env template
6 years ago
Daniel García cfbeb56371
Implement user duo, initial version
6 years ago
Daniel García c5832f2b30
With the latest fern, syslog can be a config option instead of a build flag
6 years ago
Daniel García 2475c36a75
Implement log_level config option
6 years ago
Daniel García c384f9c0ca
Set default log level to Info, we don't use debug anyway and it just fills the logs with other crates info.
6 years ago
BlackDex 6b686c18f7 Fixed long e-mail message extending 1000 lines.
6 years ago
Nick Fox 7976d39d9d
Adjust whitespace
6 years ago
Nick Fox 5ee9676941
Break up long line to stop SMTP from breaking
6 years ago
Daniel García 4b40cda910
Added domain blacklist regex for icons service and improved valid domain check.
6 years ago
Daniel García 4689ed7b30
Changed uppercase deserializer to avoid a clone.
6 years ago
Daniel García 61515160a7
Allow changing error codes and create an empty error.
6 years ago
Daniel García e93538cea9
Add option to use wrapped TLS in email, instead of STARTTLS upgrade
6 years ago
Daniel García b4244b28b6
Update admin page scripts and fixed broken tooltip
6 years ago
Daniel García 43f9038325
Add option to force resync clients in admin panel
6 years ago
Daniel García 339044f8aa
Add warning about config panel values overriding env vars.
6 years ago
Daniel García 0718a090e1
Trim spaces from admin token during authentication and validate that the admin panel token is not empty
6 years ago
Daniel García 9e1f030a80
Explicitly close SMTP connection in case of error.
6 years ago
Daniel García 04922f6aa0
Some formatting and dependency updates
6 years ago
Daniel García 7d2bc9e162
Added option to force 2fa at logins and made some changes to two factor code.
6 years ago
Daniel García 10756b0920
Update dependencies and fix some lints
6 years ago
Frank Petrilli d156170971
Minor typo fix conect => connect
6 years ago
Дамјан Георгиевски 473f8b8e31 remove some unneeded mutability
6 years ago
Daniel García 5794969f5b
Merge pull request #406 from shauder/feature/disable-admin-token
6 years ago
Shane Faulkner 8b5b06c3d1 Allow the Admin token to be disabled in the advanced menu
6 years ago
Daniel García b50c27b619
Print a warning when an env variable is being overriden by the config file, and reorganize the main file a bit.
6 years ago
Daniel García 5ee04e31e5
Updated dependencies, removed some unnecessary clones and fixed some lints
6 years ago
Daniel García bf6ae91a6d
Remove margins on small devices
6 years ago
Daniel García 828e3a5795
Add extra padding when the toolbar collapses in small devices
6 years ago
Daniel García 7b5bcd45f8
Show read-only options in the config panel and the env variable names in the tooltips
6 years ago
Miroslav Prasil 0b903fc5f4 Extended the template file and refer to wiki
6 years ago
Miroslav Prasil 4df686f49e Add an option to not enable WAL (should help in #399)
6 years ago
Daniel García d7eeaaf249
Escape user data from admin panel when calling JS
6 years ago
TheMardy 84fb6aaddb Set correct MIME type
6 years ago
Daniel García a744b9437a
Implemented multiple U2f keys, key names, and compromised checks
6 years ago
Daniel García 6027b969f5
Delete old devices when deauthorizing user sessions
6 years ago
Daniel García 93805a5d7b
Fix Yubikeys deleted on error
6 years ago
TheMardy 8526055bb7 Added images to email templates
6 years ago
TheMardy a79334ea4c Added static email image routes
6 years ago
Daniel García d3773a433a
Removed list of mounted routes at startup by default, with option to add it back. This would get annoying when starting the server frequently, because it printed ~130 lines of mostly useless info
6 years ago
Daniel García 0f0a87becf
Add version to initial message
6 years ago
BlackDex 3b27dbb0aa Added config option for icon download timeout
6 years ago
Daniel García 9636f33fdb
Implement constant time equal check for admin, 2fa recover and 2fa remember tokens
6 years ago
Daniel García 79fdfd6524
Add missing url parameter
6 years ago
Daniel García d086a99e5b
Implemented HTML emails with text alternative
6 years ago
TheMardy 22b0b95209
Added HTML templates (+14 squashed commit)
6 years ago
Daniel García 28d1588e73
Show version in admin panel
6 years ago
Daniel García f3b1a5ff3e
Error when admin panel is disabled
6 years ago
Daniel García 330e90a6ac
Hide secrets in config panel
6 years ago
Daniel García 820c8b0dce
Change use of deserialize_with for Option iterator
6 years ago
Daniel García 8b4a6f2a64
Fixed some clippy lints and changed update_uuid_revision to only use one db query
6 years ago
Daniel García ef63342e20
Add reset user config button
6 years ago
Daniel García 89840790e7
Fix .env path traversal issue
6 years ago
Daniel García a72809b225
Yubico and SMTP enable/disable master switches
6 years ago
Daniel García 9976e4736e
Add groups
6 years ago
Daniel García dc92f07232
Added env variable to select config file. Initial work towards groups and added tooltips with descriptions and nicer names
6 years ago
Daniel García 3db815b969
Implemented config form and fixed config priority
6 years ago
Daniel García ade293cf52
Save config
6 years ago
Daniel García 877408b808
Implement basic config loading and updating. No save to file yet.
6 years ago
Daniel García 86ed75bf7c
Config can now be serialized / deserialized
6 years ago
Daniel García 20d8d800f3
Updated dependencies
6 years ago
Miroslav Prasil 08ca47cadb Update revision when adding or removing cipher from collection
6 years ago
Miroslav Prasil 5272b465cc Update revision of affected users when deleting Collection
6 years ago
Miroslav Prasil 637f655b6f Do not allocate uneccessary Vec
6 years ago
Miroslav Prasil b3f7394c06 Do not update revision at the end, as we already did that
6 years ago
Miroslav Prasil 1a5ecd4d4a cipher does not need to be mutable
6 years ago
Miroslav Prasil bd65c4e312 Remove superfluous cipher.save() call
6 years ago
Miroslav Prasil bce656c787 Retry updating revision - fixes #383
6 years ago
BlackDex 9026cc8d42 Fixed issue when the iconlist is smaller then 5
6 years ago
BlackDex 574b040142 Loop through the iconlist until an icon is found
6 years ago
BlackDex c13f115473 Fixed issue #380
6 years ago
BlackDex bc461d9baa Some small changes on the iter of the cookies
6 years ago
BlackDex 5016e30cf2 Added cookies to the icon download request.
6 years ago
Daniel García f42ac5f2c0
Update web vault error message
6 years ago
Daniel García 2a60414031
Reuse the client between requests, and use the client when downloading the icons themselves
6 years ago
BlackDex feb74a5e86 Changed the way to fix the href
6 years ago
Daniel García c0e350b734
Disable icon downloads, accept optional query after icon href, format and clippy fixes
6 years ago
Daniel García bef1183c49
Only send one notification per vault import and purge, improve move ciphers functions
6 years ago
Daniel García f935f5cf46
Remove local icon extractor
6 years ago
Daniel García 07388d327f
Merge pull request #370 from BlackDex/favicons
6 years ago
BlackDex 4de16b2d17 Removed unwrap and added ?
6 years ago
BlackDex da068a43c1 Moved function call to get_icon_url to prevent error bubbeling
6 years ago
BlackDex 9657463717 Added better favicon downloader.
6 years ago
Daniel García 69036cc6a4
Add disabled user badge (no password) and deauthorize button to admin page.
6 years ago
Daniel García 700e084101
Add 2FA icon to admin panel
6 years ago
Daniel García a1dc47b826
Change config to thread-safe system, needed for a future config panel.
6 years ago
Daniel García 86de0ca17b
Fix editing users from collections menu
6 years ago
Stephen White fc0e239bdf No point calling find_by_uuid now we don't use the result.
6 years ago
Stephen White 928ad6c1d8 Fix the list of users with access to a collection to display correctly.
6 years ago
Daniel García ddd49596ba
Fix invite empty email
6 years ago
Daniel García b8cabadd43
Fix admin page links
6 years ago
Daniel García ce42b07a80
Update Diesel to 1.4 and other dependencies
6 years ago
Daniel García bfd93e5b13
Show organizations in admin panel, implement reload templates option
6 years ago
Daniel García a797459560
Implement HIBP check [WIP].
6 years ago
Daniel García 6cbb683f99
Rename admin templates to match email
6 years ago
Daniel García 92bbb98d48
Created base template
6 years ago
Daniel García 834c847746
Implement admin JWT cookie, separate JWT issuers for each type of token and migrate admin page to handlebars template
6 years ago
Daniel García 97aa407fe4
Move email templates to subfolder
6 years ago
TBK d8116a80df Add Feature-Policy header
6 years ago
Daniel García e0aec8d373
Use new i64::to_be_bytes and remove byteorder dep
6 years ago
Daniel García 1ce2587330
Correct update cipher order: first save cipher, then cipher-folder, then notify
6 years ago
Miroslav Prasil 71a10e0378 Fix sharing the item to organization.
6 years ago
Daniel García 9bf13b7872
Can't return inside multipart closure
6 years ago
Daniel García d420992f8c
Update some function calls to use ?
6 years ago
Daniel García c259a0e3e2
Save recovery code when using yubikey and stop repeating headers.user everywhere
6 years ago
Daniel García 432be274ba
Improve org mismatch check, consider different orgs
6 years ago
Daniel García 484bf5b703
Check that the client is not updating an outdated cipher, that should be part of an org now
6 years ago
Daniel García 4bf32af60e
Fix folder notifications, enable template strict mode and add missing option to env template
6 years ago
Daniel García 0e4a746eeb
Added SMTP_FROM_NAME
6 years ago
Daniel García 2fe919cc5e
Embed the default templates
6 years ago
Daniel García bcd750695f
Default to $data_folder/templates and remove dev option (use `TEMPLATES_FOLDER=src/static/templates` instead)
6 years ago
Daniel García 19b6bb0fd6
Initial stab at templates
6 years ago
Daniel García f571df7367
Revert yubikey feature, not needed anymore
6 years ago
Daniel García de51bc782e
Updated dependencies, removing need for yubico fork
6 years ago
Daniel García c5aef60bd7
Implement unofficial warning message
6 years ago
Daniel García 6f52104324
Fix casing error in Attachment, should fix 'Attachment doesn't exist' errors
6 years ago
Daniel García 1d7f704754
Send CipherUpdate when adding and deleting attachments
6 years ago
Daniel García 1d034749f7
Fix AArch64 build by disabling yubico
6 years ago
Daniel García 320266606e
Implement put collections
6 years ago
Daniel García a0a08c4c5a
Include IP in invalid admin token error
6 years ago
Daniel García 4309df8334
Only create invitations when SMTP is disabled, and ignore invitations if we have a token.
6 years ago
Daniel García f1161c65fb
Make sure an invitation is created when reinviting
6 years ago
Daniel García 50eeb4f651
Remove whitespace before processing tokens
6 years ago
Daniel García 21b85b78b1
Changed reinvite check and removed obsolete comment
6 years ago
Daniel García 673adde9f1
Make the admin retype the user name before deleting
6 years ago
Daniel García c9063a06b4
Print unauthorized error message
6 years ago
Daniel García 5e37471488
Merge pull request #323 from njfox/invite_accepted_email
6 years ago
Nick Fox 0a74e79cea
Refactor generate_invite_claims, make org_name and org_id optional
6 years ago
Nick Fox 7db66f73f0
Refactor invited_by_email check
6 years ago
Nick Fox 2f5bdc23f6
Fix formatting and add vault link to notification emails
6 years ago
Nick Fox cec28a85ac
Update admin page to work with new invitation flow
6 years ago
Daniel García 5f49ecd7f3
Updated dependencies to use u2f crate directly, and some style changes
6 years ago
Nick Fox 736c0e62f2
Send emails to inviters/invitees when invites are accepted/confirmed
6 years ago
Nick Fox 43eb064351
Replace invite/reinvite email functions with generic send_email
6 years ago
Daniel García 30e768613b
Start using rustfmt and some style changes to make some lines shorter
6 years ago
Daniel García adb8052689
Updated Error to implement Display and Debug, instead of using custom methods
6 years ago
Daniel García 1483829c94
Removed invalid todo
6 years ago
Daniel García acb9d1b3c6
Remove config option for admin email, embdedded admin page, managed IO::Error, and added security and cache headers globally
6 years ago
Daniel García 301919d9d4
Modified navigation bar and corrected some comments
6 years ago
Daniel García 2bb0b15e04
Implemented better errors for JWT
6 years ago
Daniel García 250a2b340f
Use new Errors in latest changes
6 years ago
Daniel García b2fc0499f6
Finish invite functionality, and remove virtual organization
6 years ago
Daniel García 6a99849a1e
Implemented proper error handling, now we can do `user.save($conn)?;` and it works.
6 years ago
Daniel García 172f1770cf
Embed the icon in the binary, no need to download when it's not going to change
6 years ago
Daniel García 1b5134dfe2
Fixed delete user when 2FA is enabled, implemented delete user for admin panel, and the front-end part for invite user. Secured admin panel behind a configurable token.
6 years ago
Daniel García 5fecf09631
Initial version of admin panel, list users and reload user list works. No serious auth method yet, password is 'token123'
6 years ago
Daniel García 7d7d8afed9
Merge pull request #318 from njfox/reinvite_endpoint
6 years ago
Nick Fox f20c4705d9
Refactor invite claims and disallow reinvites to virtual_org
6 years ago
Nick Fox 3142d8d01f
Add more detail to invitation not found error
6 years ago
Nick Fox 84fa5a4ed6
Implement reinvite endpoint
6 years ago
Daniel García 004a3f891f
Merge pull request #315 from aksdb/master
6 years ago
Andreas Schneider e7ea5097f4 Restrict join on users_collections to current user (fixes #313)
6 years ago
Miroslav Prasil 8451a70de6 Rewrite find_by_user_uuid to use one query
6 years ago
Nick Fox ec715d78fb
Change log timestamp format so fail2ban can parse it
6 years ago
Nick Fox b0ac640d8b
Use JWT to validate existing user invites
6 years ago
Daniel García 2b24b17609
Merge pull request #295 from njfox/invite_emails
6 years ago
Nick Fox 2cd736ab81
Validate JWT if a user registers with SMTP invites enabled
6 years ago
Nick Fox 99256b9b3a
Prefix unused params with underscore
6 years ago
Nick Fox 26bf7bc12f
Use upstream jslib invite/registration workflow
6 years ago
Daniel García b3ec8f2611
Merge pull request #302 from tycho/icon-cache-ttl
6 years ago
Steven Noonan a55c048a62
icons: implement positive/negative cache TTLs
6 years ago
Steven Noonan 848cd1dbec
add environment variables for ICON_CACHE_TTL and ICON_CACHE_NEGTTL
6 years ago
Daniel García 149e69414f
Merge pull request #293 from dheimerl/patch-1
6 years ago
dheimerl 9a7d3634d5
Changed frame-ancestors to use 'self'
6 years ago
dheimerl 7f7c936049
Fixed web.rs
6 years ago
Nick Fox 9479108fb7
Remove CONFIG.email_invitations
6 years ago
Nick Fox 042c1072d9
Remove CONFIG.email_invitation option
6 years ago
Daniel García 5a9aab1a32
Implement fromform, and ignore case and underscores, fixes #298
6 years ago
dheimerl 037eb0b790
Update web.rs
6 years ago
Nick Fox 4910b14d57
Implement email invitations and registration workflow
6 years ago
Nick Fox d428120ec6
Add email_invitations config option
6 years ago
Nick Fox e2907f4250
Add invite email functionality
6 years ago
Nick Fox 680f5e83d8
Add Invite JWT struct and supporting functions
6 years ago
Daniel García 4e827e4f8a
Implement better retry and use it while saving device
6 years ago
algebro e26e2319da Close #264. Usernames and IP addresses are logged on successful authentication
6 years ago
Daniel García 7adc045b80
Updated IP logging to use client_ip, to match old remote behavior.
6 years ago
Daniel García 19754c967f
More changes to the push token, and filtered multipart logs
6 years ago
Daniel García 738ad2127b
Fixed some clippy linting issues
6 years ago
Daniel García cb930a0858
Remove some required values during login, now uses default values
6 years ago
Daniel García 94810c106a
Migrate to rust 2018 edition
6 years ago
Daniel García 2fde4e6933
Implemented proper logging, with support for file logging, timestamp and syslog (this last one is untested)
6 years ago
Daniel García dc1bb6de20
Update device push token methods to more closely follow the official server response
6 years ago
Daniel García 6364c05789
Fix attachments during key rotation, add individual attachment key
6 years ago
Daniel García f71f10eac6
Implemented key rotation with the latest vault
6 years ago
Daniel García f1acc1e05a
Merge branch 'master' into rocket-0.4
6 years ago
Daniel García 3d36ac4601
Remove unwrap in connection_lost
6 years ago
Daniel García 00abd4c853
Add create endpoint, fixes #253, fixes #261
6 years ago
Daniel García a4550e51ea
Update dependencies and add /ciphers/create
6 years ago
Daniel García 5edbd0e952
Merge branch 'master' into rocket-0.4
6 years ago
Daniel García 17052b665f
Merge pull request #257 from Step7750/fix-nfc-mobile
6 years ago
Stepan Fedorko-Bartos f344dbaad4 Fixes NFC Response for Mobile Login
6 years ago
Daniel García c5c9e3fd65
Merge pull request #254 from Step7750/master
6 years ago
Stepan Fedorko-Bartos aba9c28226 Disable Yubikey 2FA if 0 Keys Provided
6 years ago
Stepan Fedorko-Bartos 82e2b8a8c0 Code style changes
6 years ago
Miroslav Prasil 044cf19913 Prevent accepted user from seeing ciphers until confirmed (fixes #196)
6 years ago
Stepan Fedorko-Bartos 6d735806c0 Ensures Yubico Creds are set when opening Yubikey Modal
6 years ago
Stepan Fedorko-Bartos 2433d39df5 Allows Custom Yubico OTP Server
6 years ago
Stepan Fedorko-Bartos 9e0e4b13c5 Adds Yubikey OTP Support
6 years ago
Stepan Fedorko-Bartos e66436625c Adds Yubico Client ID and Secret Key Env Vars
6 years ago
Daniel García f84cbeaaf8
Merge branch 'master' into rocket-0.4
6 years ago
Miroslav Prasil dd684753d0 Fix gt()
6 years ago
Miroslav Prasil f3e6cc6ffd Set PartialOrd to consider invalid i32 UserOrgType lower than anything
6 years ago
Miroslav Prasil b94f4db52a Fix #242
6 years ago
Miroslav Prasil 66a4c5d48b Implement comparison between i32 and UserOrgType
6 years ago
Daniel García 4638786507
Merge branch 'master' into rocket-0.4
6 years ago
Roman Hargrave 62bc58e145 Clean up after u2f endpoint split
6 years ago
Roman Hargrave 760e0ab805 Initial u2f fix
6 years ago
Daniel García 6eb1c3d638
Fixed change in organizations header, now Request::get_param() are indexed by segment, not dynamic parameter.
6 years ago
Daniel García bc532f54d5
Improve login query parsing
6 years ago
Daniel García c673370103
Updated bw_rs to Rocket version 0.4-rc1
6 years ago
janost c32c65d367 Accept PUT and POST on /settings/domains, returns JsonResult, fixes saving Custom Equivalent Domains
6 years ago
janost daa66b08dc Fix /sync without query string
6 years ago
janost 55fbd8d468 Don't send Domains if excludeDomains=true on /sync
6 years ago
Miroslav Prasil 2e7fa6440b Do not spawn WS thread if it's disabled
6 years ago
Miroslav Prasil 9ecc98c3cc Disable WebSockets negotiation by default
6 years ago
Daniel García 02fd68d63b
Merge pull request #218 from janost/refactor-folder-save
6 years ago
janost e985221b50 User::save() should return QueryResult instead of bool
6 years ago
janost 77cf63c06d Folder::save() should return QueryResult instead of bool
6 years ago
Daniel García faec050a6d
Merge pull request #217 from janost/refactor-device-save
6 years ago
janost 58a78ffa54 Device::save() should return QueryResult instead of bool
6 years ago
janost 64f6c60bfd Organization::save() and UserOrganization::save() should return QueryResult instead of bool
6 years ago
Miroslav Prasil a28caa33ef Implement poor man's admin panel
6 years ago
Daniel García ce4fedf191
Change error response to be closer to upstream
6 years ago
janost 5292d38c73 CollectionCipher::save() and delete() should return QueryResult instead of bool
6 years ago
Daniel García 1049646e27
Merge pull request #210 from janost/cipher-save-refactor
6 years ago
janost 380cf06211 Cipher::save() should return QueryResult instead of bool
6 years ago
janost c29bc9309a Return proper error message for org reinvite
6 years ago
Daniel García 7112c86471
Updated dependencies, removed valid mail check (now done by lettre), and updated global domains file
6 years ago
Daniel García 2aabf14372
Merge pull request #206 from mprasil/collection_revision
6 years ago
Miroslav Prasil d9457e929c Add continuation token when we return object list
6 years ago
Miroslav Prasil 86b49856a7 Handle return value from Collection::save()
6 years ago
Miroslav Prasil 54f54ee845 Update revision for users on collection save
6 years ago
Miroslav Prasil c3c74506a7 Add missing fields to returned Org json
6 years ago
Miroslav Prasil fb4e6bab14 Clean up the share_collection handling
6 years ago
Daniel García 9eaa9c1a17
Add WEBSOCKET_ADDRESS config option (Fixes #199)
6 years ago
Daniel García 3df31e3464
Temp fix for OpenSSL 1.1.1 compatibility
6 years ago
Daniel García ebb66c374e
Implement KDF iterations change (Fixes #195)
6 years ago
Miroslav Prasil f7951b44ba Add alias for DELETE call on accounts
6 years ago
Daniel García b75ba216d1
Return default prelogin values when the user doesn't exist
6 years ago
Daniel García 8651df8c2a
Fixed some lint issues
6 years ago
Daniel García 948554a20f
Added config option for websocket port, and reworked the config parsing a bit.
6 years ago
Daniel García 928e2424c0
Updated dependencies and fixed errors
6 years ago
Daniel García a01fee0b9f
Merge branch 'ws'
6 years ago
Daniel García f397f0cbd0
Implement organization import for admins and owners (Fixes #178)
6 years ago
Daniel García 3e1afb139c
Remove unnecessary return
6 years ago
Daniel García d66d4fd87f Add error message when the proxy doesn't route websockets correctly
6 years ago
Daniel García 1b20a25514
Merge pull request #173 from mprasil/poormans_invites
6 years ago
Miroslav Prasil c1cd4d9a6b Modify User::new to be keyless and paswordless
6 years ago
Daniel García b63693aefb
Merge pull request #137 from stammw/master
6 years ago
Miroslav Prasil ec05f14f5a Implement poor man's invitation via Organization invitation
6 years ago
Jean-Christophe BEGUE 37d88be2be return an error when email adress for password hint is not valid
6 years ago
Jean-Christophe BEGUE 1c641d7635 Special messages when user has no password hint
6 years ago
Jean-Christophe BEGUE e2ab2f7306 Save None instead of empty password hint
6 years ago
Daniel García 69dcbdd3b2 Merge branch 'master' into ws
6 years ago
Miroslav Prasil c58682e3fb Fix the logic in user edditing
6 years ago
Miroslav Prasil db111ae2a0 Check properly the user membership in Organization
6 years ago
Miroslav Prasil 049aa33f17 Fix editing users in Organization
6 years ago
Shane A. Faulkner d8e5e53273 Add notifications for cipher delete and create
6 years ago
Shane A. Faulkner b6502e9e9d Add support for CipherUpdate notifications
6 years ago
Daniel García d70864ac73 Initial version of websockets notification support.
6 years ago
Miroslav Prasil d336d89b83 Fix editing shared cipher (fixes #164)
6 years ago
Baelyk fe473b9e75 `Attachment::save()` returns Result instead of bool (#161)
6 years ago
mprasil 062ae4dd59 Allow non-Admin user to share to collection (fixes #157) (#159)
6 years ago
mprasil 3cfdf9b585 Add DELETE handlers fo cipher and attachment deletion (fixes #158) (#160)
6 years ago
Kumar Ankur 781056152a Support password history #155 (#156)
6 years ago
Baelyk c386b3bcf7 Add IP and Username to failed login attempts
6 years ago
Daniel García 8d1ee859f2 Implemented basic support for prelogin and notification negotiation
6 years ago
Miroslav Prasil 2b2401be19 Update affected users revision on cipher and folder change
6 years ago
Miroslav Prasil 9eea0151ba Update user revision timestamp on Organization changes
6 years ago
Miroslav Prasil 40d09ddd2a Add PUT alias for Organization updates
6 years ago
Daniel García d332e87655
Merge pull request #144 from mprasil/collection_revision
6 years ago
Miroslav Prasil a5ef8aef0f Update affected users revision when there are collection changes
6 years ago
Miroslav Prasil 4fb09c5b4d Actually update the revision date for user struct, not just in DB
6 years ago
Jean-Christophe BEGUE 9e63985b28 Check email validity before using it for password hint sending
6 years ago
Daniel García 6fdeeb56ce
Merge pull request #140 from mprasil/error_format
6 years ago
Daniel García b002d34cd4
Merge pull request #139 from mprasil/edit_shared_fix
6 years ago
Jean-Christophe BEGUE 401aa7c699 make SMTP authentication optionnal, let lettre pick the better auth mechanism
6 years ago
Miroslav Prasil 12a2dc0901 Add PUT alias for profile update
6 years ago
Miroslav Prasil b3f3fd81ac Update theerror format to show message in new Vault
6 years ago
Miroslav Prasil f2fec345ec Add PUT alias for editing cipher
6 years ago
Jean-Christophe BEGUE d68f57cbba Fix password hint showing logic
6 years ago
Jean-Christophe BEGUE 19e0605d30 Better message into the password hint email
6 years ago
Jean-Christophe BEGUE 812387e586 SMTP integration, send password hint by email.
6 years ago
Miroslav Prasil 00b882935f Deserialize "null" to empty Vec for Collections
6 years ago
Miroslav Prasil 0dfd9c7670 Add couple more aliases for PUTs and DELETEs
6 years ago
Miroslav Prasil 6ede1743ac add alias for PUT collections-admin
6 years ago
Daniel García d3f357b708 Implemented PUT for u2f registration
6 years ago
Daniel García 16056626b0
Merge pull request #131 from mprasil/revision_date
6 years ago
Jean-Christophe BEGUE f7ffb81d9e SMTP configuration parsing and checking
6 years ago
Miroslav Prasil 626a3c93ba Revert "Merge branch 'beta' of https://github.com/krankur/bitwarden_rs into beta"
6 years ago
Miroslav Prasil 3f5a99916a Implement update_revision trigger
6 years ago
Miroslav Prasil b5a057f063 Merge branch 'master' into beta
6 years ago
Kumar Ankur 3fd3d8d5e9 Merge branch 'beta' of https://github.com/krankur/bitwarden_rs into beta
6 years ago
Kumar Ankur 5f6d721c09 Implemented PUT for /two-factor/authenticator and /two-factor/disable
6 years ago
Kumar Ankur ddda86b90d Implemented bulk cipher share (share selected) #100
6 years ago
Daniel García c6256e1455
Merge pull request #128 from mprasil/revision_date
6 years ago
Miroslav Prasil 58c1545707 Return revision date in miliseconds (fixes #127)
6 years ago
Jean-Christophe BEGUE d3b4b10d18 Add a explaination to the password hint message #85
6 years ago
Jean-Christophe BEGUE c031ae9f2f Make password hints available in the error message #85
6 years ago
Kumar Ankur aac1304b46 clean up
6 years ago
Kumar Ankur 7dfc759691 Implmeneted DELETE on 'api/ciphers' to delete selected ciphers (#98)
6 years ago
Kumar Ankur 74e2ca81ae Implemented PUT for single cipher sharing (#97)
6 years ago
Miroslav Prasil b163aeb8ca Merge changes in master to beta branch (concurrency fixes)
6 years ago
Kumar Ankur 0e095a9fa4 change to reuse the logic for POST in PUT as well
6 years ago
Kumar Ankur 2f6aa3c363 Reverting removal of 'api/ciphers/move' POST as it is required for backward compatibility
6 years ago
Kumar Ankur fcc485384f clean up
6 years ago
Kumar Ankur 91a2319325 Implementing PUT for ciphers/move (#99)
6 years ago
Shane A. Faulkner 34d2648509
Merge pull request #3 from shauder/master
6 years ago
Miroslav Prasil 2872f40d13 WAL journal mode and delete retry added
6 years ago
Daniel García a291dea16f Updated dependencies and Docker image to new web-vault
6 years ago
Shane A. Faulkner 98bae4a0a1 Cleanup and working with 2 or less attachments
6 years ago
Miroslav Prasil 233d23a527 Return 404 in case the path doesn't match instead of 500
6 years ago
Miroslav Prasil de72655bb1 Add confirmed check to the OrgHeaders request guard
6 years ago
Shane A. Faulkner 31349a47d3 Very dirty addition of missing api's
6 years ago
Miroslav Prasil 692ed81306 Do not show organization stuff to not accepted user
6 years ago
Daniel García 819622e310 Documented U2F, removed debug prints, and documented missing features
6 years ago
Daniel García 970863ffb1 Set facets contentType
6 years ago
Daniel García 75615bb5c8 Ignore U2F challenge if not provided. Also checked that error_code has to be 0 for a successfull registration
6 years ago
Daniel García 6378d96d1a Add some extra debug prints
6 years ago
Daniel García c722256cbd Remove debug print
6 years ago
Daniel García 8ff50481e5 Use X-Forwarded-Host if available
6 years ago
Daniel García be4e6c6f0c Merge branch 'master' into u2f
6 years ago
Daniel García 2f892cb866 Hide org ciphers from unconfirmed users (Showed deciption error)
6 years ago
Daniel García 4f6f510bd4 Improve domain detection, should fix attachment problems. Otherwise, set the `DOMAIN` env variable to the correct domain
6 years ago
Daniel García dae92b9018 Implemented U2F, refactored Two Factor authentication, registering U2F device and authentication should work. Works on Chrome on MacOS with a virtual device.
6 years ago
Daniel García 1cb67eee69 Implement leave organization (accessed from the bottom of the user's settings page)
6 years ago
Daniel García e88d8c856d Change host url to https when it's enabled, should fix some problems downloading attachments
6 years ago
Daniel García df598d7208 Log posible errors when attaching file
6 years ago
Daniel García 35b4ad69bd Remove unused warnings
6 years ago
Daniel García 22786c8c9d
Merge pull request #55 from mprasil/debug_prints
6 years ago
Daniel García a1ffa4c28d Allow TOTP generation in organizations (Fixes #50)
6 years ago
Miroslav Prasil 9f8183deb0 Remove some extra debug prints
6 years ago
Daniel García ea600ab2b8 Don't ignore errors while downloading icons
6 years ago
Miroslav Prasil d84d8d756f Implement delete-admin call
6 years ago
Daniel García 7c316fc19a Added security headers to web-vault (fixes #44)
7 years ago
Daniel García 1c45c2ec3a Implemented API endpoints to modify profile name and hint, and to change email address, fixes #43
7 years ago
Daniel García 0905355629 Fix wrong case in import struct, invite collections and user Uri back-compat
7 years ago
Daniel García 7983ce4f13 Updated global domains file
7 years ago
Daniel García 5fc0472d88 Removed unneeded cipher code for changing case (fixed by last commit)
7 years ago
Daniel García 410ee9f1f7 Fixed case problems, hopefully this time for real
7 years ago
Daniel García 538dc00234 Improved configuration and documented options. Implemented option to disable web vault and to disable the use of bitwarden's official icon servers
7 years ago
Daniel García 515c84d74d Fixed casing issue
7 years ago
Daniel García f72efa899e Updated dependencies and created 'rust-toolchain', to mark a working nightly to rustup users, and hopefully avoid some nightly breakage.
7 years ago
Daniel García 483066b9a0 Some style changes, removed useless matches and formats
7 years ago
Daniel García 57850a3379 Fix SSN field in Identity cipher not loading correctly
7 years ago
Daniel García b0ee5f6570 Improved two factor auth
7 years ago
Miroslav Prasil ac2ca5812b Remove unused UserOrganization
7 years ago
Miroslav Prasil e2b4f3b13f Bettech check for cipher access
7 years ago
Daniel García 4cf9f83866 Fixed sync
7 years ago
Daniel García 2be1dafe80 Missed some
7 years ago
Daniel García a71a2c2f48 Added missing collections to /api/sync
7 years ago
Daniel García 5ec728683e Make sure the inputs are always in the same case (PascalCase, which is what upstream seems to prefer most of the time)
7 years ago
Daniel García faa26ab8f5 Changed error message
7 years ago
Daniel García 1a4b1a8254 Enabled unused variable warning again, fixed some possible bugs where we didn't check some parameters, and explicitly marked all unused parameters (mostly orgheaders)
7 years ago
Miroslav Prasil 135ab4fb20 Clean up organizations.rs with new request guards
7 years ago
Miroslav Prasil 46f3b229ee Removed unnecessary checks, simplified the code a bit
7 years ago
Miroslav Prasil 62be23b1c0 Support listing and deleting users from collection
7 years ago
Miroslav Prasil 4d50014e35 Implement request guards for organization
7 years ago
Miroslav Prasil 85ecd001a5 Fix user invitation
7 years ago
Daniel García 2cf46e1a5f Make sure TOTP codes can be both Numbers or Strings, fixes #30
7 years ago
Miroslav Prasil a6105f7029 Let find_by_uuid_and_user return indirect collection (#26)
7 years ago
Miroslav Prasil 941747f9e8 Implement deleting Organization
7 years ago
Daniel García 726ba36e5b
Merge pull request #24 from mprasil/myvault_collections
7 years ago
Daniel García e301e69ff5 Change update_cipher method to save cipher before creating folder mapping, otherwise there is an error when creating a cipher with a folder value
7 years ago
Miroslav Prasil 2215bdf018 Support editing collections from user vault
7 years ago
Miroslav Prasil a0d2ca3f24 Implement deleting collections
7 years ago
Miroslav Prasil e54b52f109 Improve Folder::delete() to handle FolderCipher
7 years ago
Miroslav Prasil 21c1ab7fda Remove dependent items when removing cipher
7 years ago
Miroslav Prasil 180a02030c Remove user_uuid when sharing to organization
7 years ago
Miroslav Prasil 3b537f70ac Remove unnecessary test and rewrite match
7 years ago
Miroslav Prasil f43d329e22 Don't clone() unused value
7 years ago
Miroslav Prasil 8b18c4c633 Implement cipher sharing
7 years ago
Miroslav Prasil c054d0094a set max storage to non-null value
7 years ago
Miroslav Prasil b0472d7aab Delete owned ciphers on account deletion
7 years ago
Miroslav Prasil 89e544009f Fix duplicate ciphers returned from find_by_user
7 years ago
Miroslav Prasil 8bed867798 Also list shared ciphers in find_by_user
7 years ago
Daniel García fcef2fa1f1 Check that the database folder exists before connecting
7 years ago
Miroslav Prasil dfb1232081 Filter collection lists based on user
7 years ago
Miroslav Prasil 9cf449e1c5 Error on invalid collection ID in post_collections_admin
7 years ago
Miroslav Prasil e5c9d19e25 Remove outdated comment
7 years ago
Miroslav Prasil 34f2aa68f4 Implement Collection-Cipher mapping
7 years ago
Daniel García 032134aabc Fixed some errors asigning collections to users
7 years ago
Daniel García 7e7c3681da Implemented public key method correctly, which fixes decryption errors in collections and organizations
7 years ago
Daniel García 79b4ddcae8 Added read_only bit to users_collections
7 years ago
Daniel García 0cb58add54 Implemented some admin methods, inserted CollectionsUsers only when Org accessAll == false, and implemented find_collection when user has access_all in Org
7 years ago
Daniel García 92236394e6 Delete folder mappings when deleting folders and make sure that we can't change a ciphers owner when created
7 years ago
Miroslav Prasil c4360ee697 Save extra query when checking write access
7 years ago
Miroslav Prasil a0796acbc7 Implement suggested improvements
7 years ago
Miroslav Prasil c3be1b4298 Fix FolderCipher creation, handle some errors
7 years ago
Miroslav Prasil 514a372bc8 Add per-user folder-cipher mapping
7 years ago
Daniel García f578019df6 Can now remove notes and fields correctly. Also fixed fields, that should go in uppercase
7 years ago
Miroslav Prasil 787172116d Save the name when updating the cipher data
7 years ago
Miroslav Prasil 7e9e200d29 Add support for adding and viewing of org ciphers
7 years ago
Daniel García 69e624f82b Improved collection loading
7 years ago
Miroslav Prasil c5185ddb83 Adding some oganization features
7 years ago
Daniel García 5210f9b951 Added org user editing
7 years ago
Daniel García e6132809d2 Implemented delete user from org and added checks to the already existing org methods
7 years ago
Daniel García 3d454f36bc Removed included web vault.
7 years ago
Daniel García 4093bf92fe Initial organizations functionality: Creating orgs and inviting users
7 years ago
Daniel García a4d2aad331 Removed unused proxy functionality
7 years ago
Daniel García 3a1321a5a9 Updated some dependencies and removed old unused attribute that might create compile errors
7 years ago
Daniel García 96e20a66a0 Removed some duplicated code in the delete cipher functions
7 years ago
Daniel García e6b6d7f3a0 Allow no folder when editing cipher
7 years ago
Miroslav Prasil a7eb77ac90 Add bulk move and bulk delete
7 years ago
Daniel García b1749da9be Fixed cipher API response to always uppercase first letter of JSON object keys
7 years ago
Daniel García 9116253ae5 Updated dependencies
7 years ago
Daniel García 66097e5f12 r2d2_diesel is included in diesel since 1.1, so we don't need the dependencies directly.
7 years ago
Daniel García 1277cb099d Updated Cipher API with breaking changes, and included backwards compatibility
7 years ago
Daniel García e2f7f56a81 Removed unused test library that broke with latest nightly, and updated dependencies
7 years ago
Daniel García dfefbf1f31 Fixed cipher import, created missing data structs instead of using generic Value, and fixed some warnings
7 years ago
Daniel García c8b45f5fe5 Added equivalent domains to /api/sync
7 years ago
Daniel García e173ef948d Removed some unnecesary clones
7 years ago
Daniel García 4c9d82d790 Equivalent domains
7 years ago
Daniel García 1bc346688c Some initial work on organizations, nothing works yet
7 years ago
Daniel García d6a1a9b274 Detect device type correctly and shorten return types of functions
7 years ago
Daniel García 0e644d2711 Fixed icons and updated web-vault
7 years ago
Daniel García d5486670d8 Fixed docker build and implemented automatic creation of JWT signing keys on platforms with OpenSSL (it needs to be on the PATH)
7 years ago
Daniel García 7a3308200a Finished work on ciphers (import, update, and the missing types)
7 years ago
Daniel García 84a75c871b Improved error messagees, implemented delete ciphers, attachments and account, implemented two factor recovery.
7 years ago
Daniel García 47a116bbee Get host from client and put it in the attachments URL (only the web vault works without indicating the host in the URL)
7 years ago
Daniel García 912901780e Updated modified date when saving and removed hardcoded attachment domain
7 years ago
Daniel García 31bf2bc2b1 Solved some warnings
7 years ago
Daniel García b54684b677 Upload and download attachments, and added License file
7 years ago
Daniel García 5cd40c63ed First working version
7 years ago