Daniel García
d70864ac73
Initial version of websockets notification support.
...
For now only folder notifications are sent (create, rename, delete).
The notifications are only tested between two web-vault sessions in different browsers, mobile apps and browser extensions are untested.
The websocket server is exposed in port 3012, while the rocket server is exposed in another port (8000 by default). To make notifications work, both should be accessible in the same port, which requires a reverse proxy.
My testing is done with Caddy server, and the following config:
```
localhost {
# The negotiation endpoint is also proxied to Rocket
proxy /notifications/hub/negotiate 0.0.0.0:8000 {
transparent
}
# Notifications redirected to the websockets server
proxy /notifications/hub 0.0.0.0:3012 {
websocket
}
# Proxy the Root directory to Rocket
proxy / 0.0.0.0:8000 {
transparent
}
}
```
This exposes the service in port 2015.
2018-08-30 17:58:53 +02:00
Miroslav Prasil
d336d89b83
Fix editing shared cipher ( fixes #164 )
2018-08-30 11:12:29 +01:00
Baelyk
fe473b9e75
Attachment::save()
returns Result instead of bool (#161 )
...
Returning a result instead of a bool as per #6
2018-08-29 15:22:19 +02:00
mprasil
062ae4dd59
Allow non-Admin user to share to collection ( fixes #157 ) ( #159 )
...
* Allow non-Admin user to share to collection (fixes #157 )
* Better handling of collection sharing
2018-08-29 15:22:03 +02:00
mprasil
3cfdf9b585
Add DELETE handlers fo cipher and attachment deletion ( fixes #158 ) ( #160 )
2018-08-29 00:48:53 +02:00
Kumar Ankur
781056152a
Support password history #155 ( #156 )
...
* Password History Support (#155 )
* down.sql logic not required as per review comments
2018-08-27 23:08:58 +02:00
Baelyk
c386b3bcf7
Add IP and Username to failed login attempts
...
Resolves #119
2018-08-25 17:07:59 -05:00
Daniel García
8d1ee859f2
Implemented basic support for prelogin and notification negotiation
2018-08-24 19:02:34 +02:00
Miroslav Prasil
2b2401be19
Update affected users revision on cipher and folder change
2018-08-21 17:32:00 +01:00
Miroslav Prasil
9eea0151ba
Update user revision timestamp on Organization changes
2018-08-21 13:26:22 +01:00
Miroslav Prasil
40d09ddd2a
Add PUT alias for Organization updates
2018-08-21 13:25:52 +01:00
Daniel García
d332e87655
Merge pull request #144 from mprasil/collection_revision
...
Update affected users revision when there are collection changes
2018-08-21 13:47:19 +02:00
Miroslav Prasil
a5ef8aef0f
Update affected users revision when there are collection changes
2018-08-21 12:20:55 +01:00
Miroslav Prasil
4fb09c5b4d
Actually update the revision date for user struct, not just in DB
2018-08-21 10:36:04 +01:00
Jean-Christophe BEGUE
9e63985b28
Check email validity before using it for password hint sending
2018-08-16 21:25:28 +02:00
Daniel García
6fdeeb56ce
Merge pull request #140 from mprasil/error_format
...
Update the error format to show message in new Vault
2018-08-16 00:52:46 +02:00
Daniel García
b002d34cd4
Merge pull request #139 from mprasil/edit_shared_fix
...
Add PUT alias for editing cipher
2018-08-15 23:02:59 +02:00
Jean-Christophe BEGUE
401aa7c699
make SMTP authentication optionnal, let lettre pick the better auth mechanism
2018-08-15 17:21:19 +02:00
Miroslav Prasil
12a2dc0901
Add PUT alias for profile update
2018-08-15 16:10:40 +01:00
Miroslav Prasil
b3f3fd81ac
Update theerror format to show message in new Vault
2018-08-15 15:50:07 +01:00
Miroslav Prasil
f2fec345ec
Add PUT alias for editing cipher
2018-08-15 14:27:37 +01:00
Jean-Christophe BEGUE
d68f57cbba
Fix password hint showing logic
2018-08-15 14:08:00 +02:00
Jean-Christophe BEGUE
19e0605d30
Better message into the password hint email
2018-08-15 10:17:05 +02:00
Jean-Christophe BEGUE
812387e586
SMTP integration, send password hint by email.
2018-08-15 08:45:18 +02:00
Miroslav Prasil
00b882935f
Deserialize "null" to empty Vec for Collections
2018-08-14 11:06:42 +01:00
Miroslav Prasil
0dfd9c7670
Add couple more aliases for PUTs and DELETEs
2018-08-13 16:45:30 +01:00
Miroslav Prasil
6ede1743ac
add alias for PUT collections-admin
2018-08-13 16:00:10 +01:00
Daniel García
d3f357b708
Implemented PUT for u2f registration
2018-08-13 15:26:01 +02:00
Daniel García
16056626b0
Merge pull request #131 from mprasil/revision_date
...
Implement update_revision trigger
2018-08-13 14:38:30 +02:00
Jean-Christophe BEGUE
f7ffb81d9e
SMTP configuration parsing and checking
2018-08-13 13:46:32 +02:00
Miroslav Prasil
626a3c93ba
Revert "Merge branch 'beta' of https://github.com/krankur/bitwarden_rs into beta"
...
This reverts commit 3fd3d8d5e9
.
2018-08-13 12:35:41 +01:00
Miroslav Prasil
3f5a99916a
Implement update_revision trigger
2018-08-13 10:58:39 +01:00
Miroslav Prasil
b5a057f063
Merge branch 'master' into beta
2018-08-10 21:43:16 +01:00
Kumar Ankur
3fd3d8d5e9
Merge branch 'beta' of https://github.com/krankur/bitwarden_rs into beta
2018-08-10 23:49:34 +05:30
Kumar Ankur
5f6d721c09
Implemented PUT for /two-factor/authenticator and /two-factor/disable
2018-08-10 23:20:19 +05:30
Kumar Ankur
ddda86b90d
Implemented bulk cipher share (share selected) #100
2018-08-10 23:20:19 +05:30
Daniel García
c6256e1455
Merge pull request #128 from mprasil/revision_date
...
Return revision date in miliseconds (fixes #127 )
2018-08-10 19:40:56 +02:00
Miroslav Prasil
58c1545707
Return revision date in miliseconds ( fixes #127 )
2018-08-10 17:18:59 +01:00
Jean-Christophe BEGUE
d3b4b10d18
Add a explaination to the password hint message #85
2018-08-10 16:59:23 +02:00
Jean-Christophe BEGUE
c031ae9f2f
Make password hints available in the error message #85
2018-08-10 15:52:06 +02:00
Kumar Ankur
aac1304b46
clean up
2018-08-03 19:31:01 +05:30
Kumar Ankur
7dfc759691
Implmeneted DELETE on 'api/ciphers' to delete selected ciphers ( #98 )
2018-08-03 19:23:38 +05:30
Kumar Ankur
74e2ca81ae
Implemented PUT for single cipher sharing ( #97 )
2018-08-02 00:07:14 +05:30
Miroslav Prasil
b163aeb8ca
Merge changes in master to beta branch (concurrency fixes)
2018-08-01 11:37:42 +01:00
Kumar Ankur
0e095a9fa4
change to reuse the logic for POST in PUT as well
2018-08-01 13:50:52 +05:30
Kumar Ankur
2f6aa3c363
Reverting removal of 'api/ciphers/move' POST as it is required for backward compatibility
2018-08-01 11:21:05 +05:30
Kumar Ankur
fcc485384f
clean up
2018-08-01 04:12:46 +05:30
Kumar Ankur
91a2319325
Implementing PUT for ciphers/move ( #99 )
2018-08-01 03:58:47 +05:30
Shane A. Faulkner
34d2648509
Merge pull request #3 from shauder/master
...
Sync working branch with changes in master upstream
2018-07-31 12:05:52 -05:00
Miroslav Prasil
2872f40d13
WAL journal mode and delete retry added
2018-07-31 16:43:43 +01:00
Daniel García
a291dea16f
Updated dependencies and Docker image to new web-vault
2018-07-21 17:27:00 +02:00
Shane A. Faulkner
98bae4a0a1
Cleanup and working with 2 or less attachments
2018-07-18 15:35:45 -05:00
Miroslav Prasil
233d23a527
Return 404 in case the path doesn't match instead of 500
2018-07-18 11:54:33 +01:00
Miroslav Prasil
de72655bb1
Add confirmed check to the OrgHeaders request guard
2018-07-16 10:23:45 +01:00
Shane A. Faulkner
31349a47d3
Very dirty addition of missing api's
2018-07-14 01:09:20 -05:00
Miroslav Prasil
692ed81306
Do not show organization stuff to not accepted user
2018-07-13 17:21:19 +01:00
Daniel García
819622e310
Documented U2F, removed debug prints, and documented missing features
2018-07-13 15:58:50 +02:00
Daniel García
970863ffb1
Set facets contentType
2018-07-13 15:05:00 +02:00
Daniel García
75615bb5c8
Ignore U2F challenge if not provided. Also checked that error_code has to be 0 for a successfull registration
2018-07-13 12:37:46 +02:00
Daniel García
6378d96d1a
Add some extra debug prints
2018-07-13 11:07:20 +02:00
Daniel García
c722256cbd
Remove debug print
2018-07-13 00:40:59 +02:00
Daniel García
8ff50481e5
Use X-Forwarded-Host if available
2018-07-13 00:33:28 +02:00
Daniel García
be4e6c6f0c
Merge branch 'master' into u2f
2018-07-12 23:54:56 +02:00
Daniel García
2f892cb866
Hide org ciphers from unconfirmed users (Showed deciption error)
2018-07-12 23:45:41 +02:00
Daniel García
4f6f510bd4
Improve domain detection, should fix attachment problems. Otherwise, set the DOMAIN
env variable to the correct domain
2018-07-12 23:28:16 +02:00
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.
2018-07-12 22:22:10 +02:00
Daniel García
1cb67eee69
Implement leave organization (accessed from the bottom of the user's settings page)
2018-07-11 16:30:03 +02:00
Daniel García
e88d8c856d
Change host url to https when it's enabled, should fix some problems downloading attachments
2018-07-11 16:23:39 +02:00
Daniel García
df598d7208
Log posible errors when attaching file
2018-07-06 17:23:12 +02:00
Daniel García
35b4ad69bd
Remove unused warnings
2018-07-04 14:27:47 +02:00
Daniel García
22786c8c9d
Merge pull request #55 from mprasil/debug_prints
...
Remove some extra debug prints
2018-07-01 16:02:18 +02:00
Daniel García
a1ffa4c28d
Allow TOTP generation in organizations ( Fixes #50 )
2018-07-01 15:49:52 +02:00
Miroslav Prasil
9f8183deb0
Remove some extra debug prints
2018-07-01 14:48:18 +01:00
Daniel García
ea600ab2b8
Don't ignore errors while downloading icons
2018-07-01 15:27:42 +02:00
Miroslav Prasil
d84d8d756f
Implement delete-admin call
2018-07-01 12:43:11 +01:00
Daniel García
7c316fc19a
Added security headers to web-vault ( fixes #44 )
2018-06-25 20:35:36 +02:00
Daniel García
1c45c2ec3a
Implemented API endpoints to modify profile name and hint, and to change email address, fixes #43
2018-06-17 00:08:05 +02:00
Daniel García
0905355629
Fix wrong case in import struct, invite collections and user Uri back-compat
2018-06-13 14:39:29 +02:00
Daniel García
7983ce4f13
Updated global domains file
2018-06-12 23:24:49 +02:00
Daniel García
5fc0472d88
Removed unneeded cipher code for changing case (fixed by last commit)
2018-06-12 23:15:27 +02:00
Daniel García
410ee9f1f7
Fixed case problems, hopefully this time for real
2018-06-12 23:01:14 +02:00
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
2018-06-12 21:09:42 +02:00
Daniel García
515c84d74d
Fixed casing issue
2018-06-12 18:01:11 +02:00
Daniel García
f72efa899e
Updated dependencies and created 'rust-toolchain', to mark a working nightly to rustup users, and hopefully avoid some nightly breakage.
2018-06-12 17:30:36 +02:00
Daniel García
483066b9a0
Some style changes, removed useless matches and formats
2018-06-11 15:44:37 +02:00
Daniel García
57850a3379
Fix SSN field in Identity cipher not loading correctly
...
It needs to be all uppercase otherwise the web vault doesn't load it
2018-06-01 23:16:10 +02:00
Daniel García
b0ee5f6570
Improved two factor auth
2018-06-01 15:08:03 +02:00
Miroslav Prasil
ac2ca5812b
Remove unused UserOrganization
2018-06-01 13:40:57 +01:00
Miroslav Prasil
e2b4f3b13f
Bettech check for cipher access
2018-06-01 13:40:40 +01:00
Daniel García
4cf9f83866
Fixed sync
2018-06-01 00:50:22 +02:00
Daniel García
2be1dafe80
Missed some
2018-06-01 00:35:30 +02:00
Daniel García
a71a2c2f48
Added missing collections to /api/sync
2018-06-01 00:20:09 +02:00
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)
2018-06-01 00:18:50 +02:00
Daniel García
faa26ab8f5
Changed error message
2018-05-31 15:36:51 +02:00
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)
2018-05-30 22:30:45 +02:00
Miroslav Prasil
135ab4fb20
Clean up organizations.rs with new request guards
2018-05-30 17:12:18 +01:00
Miroslav Prasil
46f3b229ee
Removed unnecessary checks, simplified the code a bit
2018-05-30 16:01:56 +01:00
Miroslav Prasil
62be23b1c0
Support listing and deleting users from collection
2018-05-30 15:40:37 +01:00
Miroslav Prasil
4d50014e35
Implement request guards for organization
2018-05-30 13:35:10 +01:00
Miroslav Prasil
85ecd001a5
Fix user invitation
2018-05-28 17:26:02 +01:00
Daniel García
2cf46e1a5f
Make sure TOTP codes can be both Numbers or Strings, fixes #30
2018-05-26 23:04:23 +02:00
Miroslav Prasil
a6105f7029
Let find_by_uuid_and_user return indirect collection ( #26 )
2018-05-21 17:31:46 +01:00
Miroslav Prasil
941747f9e8
Implement deleting Organization
2018-05-19 22:09:32 +01:00
Daniel García
726ba36e5b
Merge pull request #24 from mprasil/myvault_collections
...
Support editing collections from user vault
2018-05-19 22:56:35 +02:00
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
2018-05-19 22:33:15 +02:00
Miroslav Prasil
2215bdf018
Support editing collections from user vault
2018-05-19 21:30:19 +01:00
Miroslav Prasil
a0d2ca3f24
Implement deleting collections
2018-05-16 23:05:50 +01:00
Miroslav Prasil
e54b52f109
Improve Folder::delete() to handle FolderCipher
2018-05-16 17:19:52 +01:00
Miroslav Prasil
21c1ab7fda
Remove dependent items when removing cipher
2018-05-15 17:28:24 +01:00
Miroslav Prasil
180a02030c
Remove user_uuid when sharing to organization
2018-05-15 16:08:19 +01:00
Miroslav Prasil
3b537f70ac
Remove unnecessary test and rewrite match
2018-05-15 13:57:00 +01:00
Miroslav Prasil
f43d329e22
Don't clone() unused value
2018-05-15 11:10:10 +01:00
Miroslav Prasil
8b18c4c633
Implement cipher sharing
2018-05-14 16:19:24 +01:00
Miroslav Prasil
c054d0094a
set max storage to non-null value
2018-05-14 15:04:13 +01:00
Miroslav Prasil
b0472d7aab
Delete owned ciphers on account deletion
2018-05-13 13:21:51 +01:00
Miroslav Prasil
89e544009f
Fix duplicate ciphers returned from find_by_user
2018-05-13 13:21:51 +01:00
Miroslav Prasil
8bed867798
Also list shared ciphers in find_by_user
2018-05-13 13:21:51 +01:00
Daniel García
fcef2fa1f1
Check that the database folder exists before connecting
...
If the parent folder ('data' by default) doesn't exist, the database won't be able to connect.
2018-05-12 22:55:18 +02:00
Miroslav Prasil
dfb1232081
Filter collection lists based on user
2018-05-11 21:08:14 +01:00
Miroslav Prasil
9cf449e1c5
Error on invalid collection ID in post_collections_admin
2018-05-11 21:08:14 +01:00
Miroslav Prasil
e5c9d19e25
Remove outdated comment
2018-05-11 21:08:14 +01:00
Miroslav Prasil
34f2aa68f4
Implement Collection-Cipher mapping
2018-05-11 21:08:14 +01:00
Daniel García
032134aabc
Fixed some errors asigning collections to users
2018-05-11 20:08:02 +02:00
Daniel García
7e7c3681da
Implemented public key method correctly, which fixes decryption errors in collections and organizations
2018-05-04 22:54:23 +02:00
Daniel García
79b4ddcae8
Added read_only bit to users_collections
2018-05-04 20:10:35 +02:00
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
2018-05-04 19:47:31 +02:00
Daniel García
92236394e6
Delete folder mappings when deleting folders and make sure that we can't change a ciphers owner when created
2018-05-04 19:02:19 +02:00
Miroslav Prasil
c4360ee697
Save extra query when checking write access
2018-05-04 13:42:30 +01:00
Miroslav Prasil
a0796acbc7
Implement suggested improvements
2018-05-03 17:47:27 +01:00
Miroslav Prasil
c3be1b4298
Fix FolderCipher creation, handle some errors
2018-05-01 16:54:22 +01:00
Miroslav Prasil
514a372bc8
Add per-user folder-cipher mapping
2018-04-30 23:38:55 +01:00
Daniel García
f578019df6
Can now remove notes and fields correctly. Also fixed fields, that should go in uppercase
2018-04-27 18:12:59 +02:00
Miroslav Prasil
787172116d
Save the name when updating the cipher data
2018-04-27 15:27:06 +01:00
Miroslav Prasil
7e9e200d29
Add support for adding and viewing of org ciphers
2018-04-27 12:49:34 +01:00
Daniel García
69e624f82b
Improved collection loading
2018-04-26 23:21:29 +02:00
Miroslav Prasil
c5185ddb83
Adding some oganization features
2018-04-26 17:19:08 +01:00
Daniel García
5210f9b951
Added org user editing
2018-04-25 00:34:40 +02:00
Daniel García
e6132809d2
Implemented delete user from org and added checks to the already existing org methods
2018-04-24 23:04:17 +02:00
Daniel García
3d454f36bc
Removed included web vault.
...
Now that docker automatically downloads the web-vault, keeping it in the repo doesn't make sense.
Added error message in case someone tries to run the application directly without the web-vault instaled..
2018-04-24 22:41:25 +02:00
Daniel García
4093bf92fe
Initial organizations functionality: Creating orgs and inviting users
2018-04-24 22:01:55 +02:00
Daniel García
a4d2aad331
Removed unused proxy functionality
2018-04-24 20:53:12 +02:00
Daniel García
3a1321a5a9
Updated some dependencies and removed old unused attribute that might create compile errors
2018-04-24 15:49:38 +02:00
Daniel García
96e20a66a0
Removed some duplicated code in the delete cipher functions
2018-04-19 18:57:17 +02:00
Daniel García
e6b6d7f3a0
Allow no folder when editing cipher
2018-04-19 17:54:56 +02:00
Miroslav Prasil
a7eb77ac90
Add bulk move and bulk delete
2018-04-19 15:32:11 +01:00
Daniel García
b1749da9be
Fixed cipher API response to always uppercase first letter of JSON object keys
2018-03-21 01:07:48 +01:00
Daniel García
9116253ae5
Updated dependencies
2018-03-21 00:08:46 +01:00
Daniel García
66097e5f12
r2d2_diesel is included in diesel since 1.1, so we don't need the dependencies directly.
...
Same thing with time, included in chrono
2018-03-07 18:41:34 +01:00
Daniel García
1277cb099d
Updated Cipher API with breaking changes, and included backwards compatibility
2018-03-06 20:34:30 +01:00
Daniel García
e2f7f56a81
Removed unused test library that broke with latest nightly, and updated dependencies
2018-03-01 14:36:39 +01:00
Daniel García
dfefbf1f31
Fixed cipher import, created missing data structs instead of using generic Value, and fixed some warnings
2018-02-23 00:38:54 +01:00
Daniel García
c8b45f5fe5
Added equivalent domains to /api/sync
2018-02-20 14:09:00 +01:00
Daniel García
e173ef948d
Removed some unnecesary clones
2018-02-17 23:38:55 +01:00
Daniel García
4c9d82d790
Equivalent domains
2018-02-17 23:21:04 +01:00
Daniel García
1bc346688c
Some initial work on organizations, nothing works yet
2018-02-17 23:04:34 +01:00
Daniel García
d6a1a9b274
Detect device type correctly and shorten return types of functions
2018-02-17 22:28:15 +01:00
Daniel García
0e644d2711
Fixed icons and updated web-vault
2018-02-17 18:48:42 +01:00
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)
2018-02-17 01:13:02 +01:00
Daniel García
7a3308200a
Finished work on ciphers (import, update, and the missing types)
2018-02-16 00:32:26 +01:00
Daniel García
84a75c871b
Improved error messagees, implemented delete ciphers, attachments and account, implemented two factor recovery.
...
Known missing:
- import ciphers, create ciphers types other than login and card, update ciphers
- clear and put device_tokens
- Equivalent domains
- Organizations
2018-02-15 19:05:57 +01:00
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)
2018-02-15 01:49:36 +01:00
Daniel García
912901780e
Updated modified date when saving and removed hardcoded attachment domain
2018-02-15 01:07:57 +01:00
Daniel García
31bf2bc2b1
Solved some warnings
2018-02-15 00:53:11 +01:00
Daniel García
b54684b677
Upload and download attachments, and added License file
2018-02-15 00:40:34 +01:00
Daniel García
5cd40c63ed
First working version
2018-02-10 01:00:55 +01:00