Daniel García
6a99849a1e
Implemented proper error handling, now we can do `user.save($conn)?;` and it works.
...
In the future, maybe we can do the same with the `find_by_id` methods that return an Option.
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
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
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
...
Add Email Invite Functionality
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
...
implement TTLs for icon cache
6 years ago
Steven Noonan
a55c048a62
icons: implement positive/negative cache TTLs
...
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
6 years ago
Daniel García
149e69414f
Merge pull request #293 from dheimerl/patch-1
...
Update web.rs
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
...
Add frame-ancestors to allow U2F to work in Chrome (and possibly Firefox) extension
6 years ago
Nick Fox
4910b14d57
Implement email invitations and registration workflow
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.
...
Improved error logging, now it won't show a generic error message in some situations.
Removed delete device, which is not needed as it will be overwritten later.
Logged more info when an error occurs saving a device.
Added orgmanager to JWT claims.
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
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# src/api/core/mod.rs
6 years ago
Stepan Fedorko-Bartos
f344dbaad4
Fixes NFC Response for Mobile Login
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
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
Daniel García
f84cbeaaf8
Merge branch 'master' into rocket-0.4
...
# Conflicts:
# src/db/models/organization.rs
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
...
# Conflicts:
# src/api/core/mod.rs
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
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
...
Folder::save() should return QueryResult instead of bool
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
...
Device::save() should return QueryResult instead of bool
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
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
...
Cipher::save() should return QueryResult instead of bool
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
...
Collection update updates User 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
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
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.
...
Added SMTP_FROM config to examples and made it mandatory, it doesn't make much sense to not specify the from address.
6 years ago
Daniel García
928e2424c0
Updated dependencies and fixed errors
6 years ago
Daniel García
a01fee0b9f
Merge branch 'ws'
...
# Conflicts:
# Cargo.toml
# src/api/core/ciphers.rs
# src/main.rs
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
...
Implement poor man's invitation via Organization invitation
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
...
SMTP implementation, along with password HINT email
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.
...
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.
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 )
...
Returning a result instead of a bool as per #6
6 years ago
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
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 )
...
* Password History Support (#155 )
* down.sql logic not required as per review comments
6 years ago
Baelyk
c386b3bcf7
Add IP and Username to failed login attempts
...
Resolves #119
6 years ago
Daniel García
8d1ee859f2
Implemented basic support for prelogin and notification negotiation
6 years ago
Miroslav Prasil
40d09ddd2a
Add PUT alias for Organization updates
6 years ago
Jean-Christophe BEGUE
9e63985b28
Check email validity before using it for password hint sending
6 years ago
Daniel García
b002d34cd4
Merge pull request #139 from mprasil/edit_shared_fix
...
Add PUT alias for editing cipher
6 years ago
Miroslav Prasil
12a2dc0901
Add PUT alias for profile update
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
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
...
Implement update_revision trigger
6 years ago
Miroslav Prasil
626a3c93ba
Revert "Merge branch 'beta' of https://github.com/krankur/bitwarden_rs into beta"
...
This reverts commit 3fd3d8d5e9
.
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
...
Return revision date in miliseconds (fixes #127 )
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
...
Sync working branch with changes in master upstream
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
Shane A. Faulkner
31349a47d3
Very dirty addition of missing api's
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
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
df598d7208
Log posible errors when attaching file
6 years ago
Daniel García
35b4ad69bd
Remove unused warnings
7 years ago
Miroslav Prasil
9f8183deb0
Remove some extra debug prints
7 years ago
Daniel García
ea600ab2b8
Don't ignore errors while downloading icons
7 years ago
Miroslav Prasil
d84d8d756f
Implement delete-admin call
7 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
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
...
It needs to be all uppercase otherwise the web vault doesn't load it
7 years ago
Daniel García
b0ee5f6570
Improved two factor auth
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
941747f9e8
Implement deleting Organization
7 years ago
Daniel García
726ba36e5b
Merge pull request #24 from mprasil/myvault_collections
...
Support editing collections from user vault
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
b0472d7aab
Delete owned ciphers on account deletion
7 years ago
Miroslav Prasil
8bed867798
Also list shared ciphers in find_by_user
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
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
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
4093bf92fe
Initial organizations functionality: Creating orgs and inviting users
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
1277cb099d
Updated Cipher API with breaking changes, and included backwards compatibility
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
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.
...
Known missing:
- import ciphers, create ciphers types other than login and card, update ciphers
- clear and put device_tokens
- Equivalent domains
- Organizations
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