Commit Graph

264 Commits

Author SHA1 Message Date
Daniel García 4be8dae626
Make web vault show a more informative error when browsers block WebCrypto in insecure contexts and update dependencies 2020-04-09 22:54:31 +02:00
Daniel García ccf6ee79d0
Update dependencies, mainly diesel and sqlite 2020-03-24 20:36:19 +01:00
Daniel García 7d9c7017c9
Merge pull request #911 from BlackDex/upgrade-rocket
Upgrade rocket
2020-03-16 18:17:17 +01:00
BlackDex bd09fe1a3d Updated code so backtraces are logged also. 2020-03-16 17:53:22 +01:00
BlackDex 3ce0c3d1a5 Update dependencies
Primarily updating rocket, which needed some dependencies

Latest versions of:
 - ring
 - time
 - jsonwebtoken
 - yubico
 - rocket (git)
2020-03-16 16:32:33 +01:00
BlackDex 1b4b40c95d Updated reqwest to the latest version.
- Use the blocking client (no async).
- Disabled gzip.
- use_sys_proxy is now default.
2020-03-14 23:12:45 +01:00
Daniel García 70f3ab8ec3
Migrate lazy_static to once_cell, less macro magic and slightly faster 2020-03-09 22:04:03 +01:00
Daniel García b6612e90ca
Update dependencies 2020-03-09 22:00:59 +01:00
zethra cc404b4edc
Added command line flags for help and version
Signed-off-by: zethra <benaagoldberg@gmail.com>
2020-03-02 15:51:57 -05:00
Daniel García def174a517
Convert email domains to punycode 2020-01-30 22:11:53 +01:00
Daniel García ff7b4a3d38
Update handlebars to 3.0 which included performance improvements.
Updated lettre to newer git revision, which should give better error messages now.
2020-01-26 15:29:14 +01:00
Daniel García 84ed185579
Update u2f to 0.2, which requires OpenSSL but also might solve the problems we've had with certificates.
The rust image doesn't need installing curl or tar, so removed. Also collapsed ENV lines.
2020-01-19 21:34:13 +01:00
Daniel García 9ebca99290
Update dependencies 2020-01-10 18:37:16 +01:00
Daniel García c058a1d63c
Make sure handlebars is not updated, as the next patch version has breaking changes 2020-01-05 00:12:35 +01:00
Daniel García 95dd1cd7ad
Use rmp upstream version 2019-12-31 02:00:16 +01:00
Daniel García 4cec502f7b
Update docker images to alpine 3.11 and rust 1.40 2019-12-22 21:42:13 +01:00
Daniel García f09996a21d
Updated dependencies 2019-12-15 15:43:56 +01:00
Daniel García a5aa4d9b54
Updated dependencies 2019-12-06 22:07:25 +01:00
Daniel García 1e224220a8
Updated deps and fixed some lints 2019-11-28 21:59:05 +01:00
Daniel García 607521c88f
Updated dependencies 2019-11-24 14:50:43 +01:00
BlackDex b209c1bc4d Add an option to fetch and parse href="data:image"
Some sites are using base64 encoded inline images for favicons.
This will try to match those with some sane checks and return that.
These icons will have lower prio then the icons with a normal URL.
2019-11-22 13:16:12 +01:00
Daniel García cbadf00941
Update web vault to fix twofactorauth.org integration
Update dependencies and toolchain
Update included equivalent domains with upstream changes
2019-11-19 20:30:09 +01:00
BlackDex cbb92bcbc0 Updated dependencies
Updated some dependencies and used a git patch for lettre addressing
timeouts.
2019-11-06 21:37:51 +01:00
BlackDex 3442eb1b9d Trying to fix issue #687
- Using an older commit from rocket repo
2019-11-04 14:30:24 +01:00
Daniel García 72a46fb386
Update dependencies 2019-11-02 17:39:27 +01:00
Daniel García fccc0a4b05
Update rocket to latest master
Downgrade rust version to fix cargo issue
Set rustup profile to minimal
2019-10-25 21:48:10 +02:00
Daniel García 57b1d3f850
Update dependencies and docker base images 2019-10-24 20:37:17 +02:00
Daniel García 83fd44eeef
Update rust version and use minimal profile for CI 2019-10-15 21:21:37 +02:00
Daniel García d3bd2774dc
Update dependencies to use newer SQLite 2019-10-11 22:49:47 +02:00
Daniel García 662bc27523
Updated dependencies and fixed disable_admin_token description 2019-10-08 19:33:27 +02:00
Daniel García b73ff886c3
Use upstream rmp 2019-09-17 19:47:51 +02:00
Michael Powers f5f9861a78
Adds support for PostgreSQL which resolves #87 and is mentioned in #246.
This includes migrations as well as Dockerfile's for amd64.

The biggest change is that replace_into isn't supported by Diesel for the
PostgreSQL backend, instead requiring the use of on_conflict. This
unfortunately requires a branch for save() on all of the models currently
using replace_into.
2019-09-12 16:12:22 -04:00
Daniel García df8114f8be
Updated client kdf iterations to 100000 and fixed some lints 2019-09-05 21:56:12 +02:00
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 2019-08-31 17:47:52 +02:00
Daniel García 469318bcbd
Updated dependencies and web vault version 2019-08-27 21:14:15 +02:00
Daniel García 9101d6e48f
Update dependencies 2019-08-18 19:31:54 +02:00
Daniel García c9c3f07171
Updated dependencies and fixed panic getting icons 2019-07-30 19:42:05 +02:00
Daniel García 05a1137828
Move backend checks to build.rs to fail fast, and updated dependencies 2019-07-09 17:26:34 +02:00
Nick Fox 2e300da057
Fix #468 - Percent-encode the email address in invite link 2019-07-02 22:55:13 -04:00
Daniel García 76f38621de
Update dependencies and remove unwraps from Cipher::to_json 2019-06-14 22:51:50 +02:00
Daniel García 9add8e19eb
Update dependencies and remove travis unused feature 2019-06-02 00:28:20 +02:00
Emil Madsen ab95a69dc8 Rework migrations for MySQL 2019-05-20 21:12:41 +02:00
Daniel García c0b2877da3
Update deps and swap back to official u2f crate again 2019-05-17 15:39:36 +02:00
Daniel García 95f833aacd
Update dependencies to use new ring 2019-05-15 18:10:25 +02:00
Daniel García 4f45cc081f
Update ring to 0.14, jwt to 6.0, and u2f 2019-05-11 23:18:18 +02:00
Daniel García 2a4cd24c60
Updated web vault to hide org plans again and updated dependencies 2019-05-11 22:27:51 +02:00
Daniel García eadab2e9ca
Updated dependencies 2019-04-26 22:07:00 +02:00
Daniel García 621f607297
Update dependencies and fix some warnings 2019-04-11 15:40:19 +02:00
Daniel García cfbeb56371
Implement user duo, initial version
TODO:
- At the moment each user needs to configure a DUO application and input the API keys, we need to check if multiple users can register with the same keys correctly and if so we could implement a global setting.
- Sometimes the Duo frame doesn't load correctly, but canceling, reloading the page and logging in again seems to fix it for me.
2019-04-05 22:09:53 +02:00
Daniel García 3bb46ce496
Make the syslog crate non-optional when available 2019-04-02 22:35:22 +02:00
Daniel García c5832f2b30
With the latest fern, syslog can be a config option instead of a build flag 2019-03-29 20:27:20 +01:00
BlackDex 6b686c18f7 Fixed long e-mail message extending 1000 lines.
- Added quoted_printable crate to encode the e-mail messages.
- Change the way the e-mail gets build to use custom part headers.
2019-03-25 09:48:19 +01:00
Daniel García 349cb33fbd
Updated dependencies 2019-03-23 19:48:22 +01:00
Daniel García 084bc2aee3
Use final release of lettre and update dependencies 2019-03-17 14:43:22 +01:00
Daniel García a25bfdd16d
Remove unused features from multipart (integration with other servers) 2019-03-13 15:57:00 +01:00
Daniel García 27872f476e
Update dependencies 2019-03-07 20:22:08 +01:00
Daniel García 04922f6aa0
Some formatting and dependency updates 2019-03-03 16:11:55 +01:00
Daniel García 10756b0920
Update dependencies and fix some lints 2019-02-27 17:21:04 +01:00
Daniel García 5ee04e31e5
Updated dependencies, removed some unnecessary clones and fixed some lints 2019-02-20 17:54:18 +01:00
Daniel García 274ea9a4f2
Use the latest fast_chemail crate directly, with the fix 2019-02-15 14:39:30 +01:00
Daniel García ff2fbd322e
Update deps and fix email check 2019-02-12 15:01:02 +01:00
Daniel García 3db815b969
Implemented config form and fixed config priority 2019-02-06 17:34:30 +01:00
Daniel García 20d8d800f3
Updated dependencies 2019-02-06 17:34:29 +01:00
BlackDex 9657463717 Added better favicon downloader. 2019-01-27 15:39:19 +01:00
Daniel García a1dc47b826
Change config to thread-safe system, needed for a future config panel.
Improved some two factor methods.
2019-01-25 18:24:57 +01:00
Daniel García 9d027b96d8
Update web-vault to fix U2F NotTrustedAnchor error 2019-01-24 18:43:22 +01:00
Daniel García ce42b07a80
Update Diesel to 1.4 and other dependencies 2019-01-21 15:29:52 +01:00
Daniel García e0aec8d373
Use new i64::to_be_bytes and remove byteorder dep
(https://doc.rust-lang.org/stable/std/primitive.i64.html#method.to_be_bytes)
2019-01-16 22:14:17 +01:00
Daniel García 979b6305af
Update dependencies 2019-01-15 15:30:12 +01:00
Daniel García 19b6bb0fd6
Initial stab at templates 2019-01-15 15:28:46 +01:00
Daniel García 60f6a350be
Update yubico to fix OpenSSL error 2019-01-13 14:37:17 +01:00
Daniel García de51bc782e
Updated dependencies, removing need for yubico fork 2019-01-12 15:23:46 +01:00
Daniel García 1d034749f7
Fix AArch64 build by disabling yubico 2019-01-10 23:54:01 +01:00
Daniel García 1b11445bb2
Update dependencies and web vault 2019-01-08 20:28:17 +01:00
Daniel García 5f49ecd7f3
Updated dependencies to use u2f crate directly, and some style changes 2019-01-04 00:25:38 +01:00
Daniel García adb8052689
Updated Error to implement Display and Debug, instead of using custom methods 2018-12-30 21:43:56 +01:00
Daniel García f2ab25085d
Updated dependencies, and dockerfiles to use NodeJS 10 LTS 2018-12-11 16:42:52 +01:00
Daniel García 2fde4e6933
Implemented proper logging, with support for file logging, timestamp and syslog (this last one is untested) 2018-12-06 20:35:25 +01:00
Daniel García 259a2f2982
Updated rocket to final release 2018-12-06 20:15:22 +01:00
Daniel García 2129946d14
Updated deps and web vault to 2.6.1 2018-12-03 20:28:13 +01:00
Daniel García 8b5d97790f
Updated rocket to rc2 and rest of dependencies 2018-12-01 14:29:19 +01:00
Daniel García 9ecb29883c
Merge branch 'master' into rocket-0.4
# Conflicts:
#	Cargo.lock
2018-11-19 20:59:41 +01:00
Daniel García 8b3e87cfe0
Update lockfile to fix yubico error 2018-11-19 20:58:59 +01:00
Daniel García 5edbd0e952
Merge branch 'master' into rocket-0.4
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	src/api/core/mod.rs
2018-11-19 19:52:43 +01:00
Stepan Fedorko-Bartos 5a8d5e426d Switches to Downstream yubico with Optional libusb 2018-11-16 11:28:20 -07:00
Stepan Fedorko-Bartos 24a4478b5c Adds yubico-rs library dep 2018-11-15 18:34:17 -07:00
Daniel García c673370103
Updated bw_rs to Rocket version 0.4-rc1 2018-11-01 19:25:09 +01:00
Daniel García 7112c86471
Updated dependencies, removed valid mail check (now done by lettre), and updated global domains file 2018-10-04 00:01:04 +02:00
Daniel García c169095128
Update dependencies to point to upstream lettre 2018-09-20 22:45:19 +02:00
Daniel García 3df31e3464
Temp fix for OpenSSL 1.1.1 compatibility 2018-09-19 21:45:50 +02:00
Daniel García 638a0fd3c3
Updated dependencies 2018-09-19 21:43:03 +02:00
Daniel García 928e2424c0
Updated dependencies and fixed errors 2018-09-13 16:05:13 +02:00
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
Daniel García 39891e86a0 Updated dependencies, added Travis CI integration and some badges 2018-08-24 17:07:11 +02:00
Daniel García a291dea16f Updated dependencies and Docker image to new web-vault 2018-07-21 17:27:00 +02:00
Daniel García 03172a6cd7 Bump version to 0.10.0 2018-07-13 16:06:01 +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 7d01947173 Updated dependencies and rust version 2018-06-29 23:18:19 +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 f1b4a146ae Updated version 2018-06-01 16:06:25 +02:00
Daniel García b46e9c936d Updated dependencies and removed some warnings from jsonwebtoken 2018-06-01 15:34:26 +02:00
Miroslav Prasil 103acd1747 Update rocket to 0.3.12 2018-06-01 13:19:05 +01:00
Miroslav Prasil 571ef6823d Update rocket to 0.3.11 2018-05-21 13:20:34 +01:00
Daniel García 8298795087 Update dependencies and bundle SQLite with the program, so we have one less dependency to install separately 2018-05-07 21:33:54 +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
Miroslav Prasil 49d080a97e Bump the rocket version to compile with current nightly 2018-04-18 10:40:25 +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 e9a771057e Reduced Docker final image and updated dependencies 2018-02-18 19:14:25 +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