Daniel García
6cbb683f99
Rename admin templates to match email
2019-01-19 22:59:32 +01:00
Daniel García
92bbb98d48
Created base template
2019-01-19 22:12:52 +01:00
Daniel García
834c847746
Implement admin JWT cookie, separate JWT issuers for each type of token and migrate admin page to handlebars template
2019-01-19 21:41:49 +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
1ce2587330
Correct update cipher order: first save cipher, then cipher-folder, then notify
2019-01-16 19:57:49 +01:00
Miroslav Prasil
71a10e0378
Fix sharing the item to organization.
2019-01-16 11:33:43 +00:00
Daniel García
9bf13b7872
Can't return inside multipart closure
2019-01-15 22:00:41 +01:00
Daniel García
d420992f8c
Update some function calls to use ?
2019-01-15 21:47:16 +01:00
Daniel García
c259a0e3e2
Save recovery code when using yubikey and stop repeating headers.user everywhere
2019-01-15 21:38:21 +01:00
Daniel García
432be274ba
Improve org mismatch check, consider different orgs
2019-01-15 17:31:03 +01:00
Daniel García
484bf5b703
Check that the client is not updating an outdated cipher, that should be part of an org now
2019-01-15 16:35:08 +01:00
Daniel García
4bf32af60e
Fix folder notifications, enable template strict mode and add missing option to env template
2019-01-15 15:28:47 +01:00
Daniel García
f571df7367
Revert yubikey feature, not needed anymore
2019-01-12 15:28:41 +01:00
Daniel García
1d7f704754
Send CipherUpdate when adding and deleting attachments
2019-01-11 01:12:54 +01:00
Daniel García
1d034749f7
Fix AArch64 build by disabling yubico
2019-01-10 23:54:01 +01:00
Daniel García
320266606e
Implement put collections
2019-01-08 20:27:28 +01:00
Daniel García
a0a08c4c5a
Include IP in invalid admin token error
2019-01-08 16:17:18 +01:00
Daniel García
4309df8334
Only create invitations when SMTP is disabled, and ignore invitations if we have a token.
...
Disallow users from accepting invitation twice
2019-01-08 15:42:26 +01:00
Daniel García
f1161c65fb
Make sure an invitation is created when reinviting
2019-01-08 14:05:05 +01:00
Daniel García
21b85b78b1
Changed reinvite check and removed obsolete comment
2019-01-07 15:29:57 +01:00
Daniel García
5e37471488
Merge pull request #323 from njfox/invite_accepted_email
...
Send email notifications when invitations are accepted/confirmed
2019-01-06 14:12:24 +01:00
Nick Fox
0a74e79cea
Refactor generate_invite_claims, make org_name and org_id optional
2019-01-05 23:03:49 -05:00
Nick Fox
7db66f73f0
Refactor invited_by_email check
2019-01-05 13:46:45 -05:00
Nick Fox
cec28a85ac
Update admin page to work with new invitation flow
2019-01-04 10:32:51 -05:00
Daniel García
5f49ecd7f3
Updated dependencies to use u2f crate directly, and some style changes
2019-01-04 00:25:38 +01:00
Nick Fox
736c0e62f2
Send emails to inviters/invitees when invites are accepted/confirmed
2019-01-02 22:20:39 -05:00
Daniel García
30e768613b
Start using rustfmt and some style changes to make some lines shorter
2018-12-30 23:34:31 +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
acb9d1b3c6
Remove config option for admin email, embdedded admin page, managed IO::Error, and added security and cache headers globally
2018-12-30 21:43:56 +01:00
Daniel García
2bb0b15e04
Implemented better errors for JWT
2018-12-30 21:43:55 +01:00
Daniel García
250a2b340f
Use new Errors in latest changes
2018-12-30 21:43:55 +01:00
Daniel García
b2fc0499f6
Finish invite functionality, and remove virtual organization
2018-12-30 21:40:26 +01:00
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.
2018-12-30 21:31:12 +01:00
Daniel García
172f1770cf
Embed the icon in the binary, no need to download when it's not going to change
2018-12-30 21:31:12 +01:00
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.
2018-12-30 21:31:11 +01:00
Daniel García
5fecf09631
Initial version of admin panel, list users and reload user list works. No serious auth method yet, password is 'token123'
2018-12-30 21:31:11 +01:00
Nick Fox
f20c4705d9
Refactor invite claims and disallow reinvites to virtual_org
2018-12-30 00:19:01 -05:00
Nick Fox
3142d8d01f
Add more detail to invitation not found error
2018-12-29 23:28:19 -05:00
Nick Fox
84fa5a4ed6
Implement reinvite endpoint
2018-12-29 23:24:38 -05:00
Nick Fox
b0ac640d8b
Use JWT to validate existing user invites
2018-12-23 15:15:44 -05:00
Daniel García
2b24b17609
Merge pull request #295 from njfox/invite_emails
...
Add Email Invite Functionality
2018-12-21 16:04:19 +01:00
Nick Fox
2cd736ab81
Validate JWT if a user registers with SMTP invites enabled
2018-12-20 22:16:41 -05:00
Nick Fox
99256b9b3a
Prefix unused params with underscore
2018-12-20 21:37:03 -05:00
Nick Fox
26bf7bc12f
Use upstream jslib invite/registration workflow
2018-12-18 23:16:03 -05:00
Daniel García
b3ec8f2611
Merge pull request #302 from tycho/icon-cache-ttl
...
implement TTLs for icon cache
2018-12-18 23:34:16 +01:00
Steven Noonan
a55c048a62
icons: implement positive/negative cache TTLs
...
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
2018-12-18 13:33:32 -08:00
Daniel García
149e69414f
Merge pull request #293 from dheimerl/patch-1
...
Update web.rs
2018-12-18 19:00:43 +01:00
dheimerl
9a7d3634d5
Changed frame-ancestors to use 'self'
2018-12-18 10:19:35 -06:00
dheimerl
7f7c936049
Fixed web.rs
2018-12-17 22:59:53 -06:00
Nick Fox
9479108fb7
Remove CONFIG.email_invitations
2018-12-17 17:10:09 -05:00
Nick Fox
042c1072d9
Remove CONFIG.email_invitation option
2018-12-17 17:02:15 -05:00
Daniel García
5a9aab1a32
Implement fromform, and ignore case and underscores, fixes #298
2018-12-16 20:00:16 +01:00
dheimerl
037eb0b790
Update web.rs
...
Add frame-ancestors to allow U2F to work in Chrome (and possibly Firefox) extension
2018-12-15 13:23:07 -06:00
Nick Fox
4910b14d57
Implement email invitations and registration workflow
2018-12-14 21:56:00 -05:00
algebro
e26e2319da
Close #264 . Usernames and IP addresses are logged on successful authentication
2018-12-11 15:20:06 -05:00
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.
2018-12-09 17:58:38 +01:00
Daniel García
19754c967f
More changes to the push token, and filtered multipart logs
2018-12-07 18:25:18 +01:00
Daniel García
738ad2127b
Fixed some clippy linting issues
2018-12-07 15:01:29 +01:00
Daniel García
cb930a0858
Remove some required values during login, now uses default values
2018-12-07 14:32:40 +01:00
Daniel García
94810c106a
Migrate to rust 2018 edition
2018-12-07 02:05:45 +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
dc1bb6de20
Update device push token methods to more closely follow the official server response
2018-12-06 16:28:36 +01:00
Daniel García
6364c05789
Fix attachments during key rotation, add individual attachment key
2018-11-27 17:24:12 +01:00
Daniel García
f71f10eac6
Implemented key rotation with the latest vault
2018-11-24 23:00:41 +01:00
Daniel García
f1acc1e05a
Merge branch 'master' into rocket-0.4
2018-11-21 15:35:34 +01:00
Daniel García
3d36ac4601
Remove unwrap in connection_lost
2018-11-21 15:07:18 +01:00
Daniel García
00abd4c853
Add create endpoint, fixes #253 , fixes #261
2018-11-19 20:27:49 +01:00
Daniel García
a4550e51ea
Update dependencies and add /ciphers/create
2018-11-19 20:21:02 +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
f344dbaad4
Fixes NFC Response for Mobile Login
2018-11-17 01:25:07 -07:00
Stepan Fedorko-Bartos
aba9c28226
Disable Yubikey 2FA if 0 Keys Provided
2018-11-16 12:07:00 -07:00
Stepan Fedorko-Bartos
82e2b8a8c0
Code style changes
2018-11-16 11:52:01 -07:00
Stepan Fedorko-Bartos
6d735806c0
Ensures Yubico Creds are set when opening Yubikey Modal
2018-11-15 18:58:44 -07:00
Stepan Fedorko-Bartos
2433d39df5
Allows Custom Yubico OTP Server
2018-11-15 18:54:53 -07:00
Stepan Fedorko-Bartos
9e0e4b13c5
Adds Yubikey OTP Support
2018-11-15 18:43:09 -07:00
Daniel García
f84cbeaaf8
Merge branch 'master' into rocket-0.4
...
# Conflicts:
# src/db/models/organization.rs
2018-11-14 16:14:49 +01:00
Miroslav Prasil
b94f4db52a
Fix #242
2018-11-13 15:34:37 +00:00
Miroslav Prasil
66a4c5d48b
Implement comparison between i32 and UserOrgType
2018-11-12 17:13:25 +00:00
Daniel García
4638786507
Merge branch 'master' into rocket-0.4
...
# Conflicts:
# src/api/core/mod.rs
2018-11-09 16:06:24 +01:00
Roman Hargrave
62bc58e145
Clean up after u2f endpoint split
2018-11-09 00:27:43 -06:00
Roman Hargrave
760e0ab805
Initial u2f fix
2018-11-09 00:00:31 -06:00
Daniel García
bc532f54d5
Improve login query parsing
2018-11-01 19:25:10 +01:00
Daniel García
c673370103
Updated bw_rs to Rocket version 0.4-rc1
2018-11-01 19:25:09 +01:00
janost
c32c65d367
Accept PUT and POST on /settings/domains, returns JsonResult, fixes saving Custom Equivalent Domains
2018-10-23 00:32:43 +02:00
janost
daa66b08dc
Fix /sync without query string
2018-10-19 00:54:40 +02:00
janost
55fbd8d468
Don't send Domains if excludeDomains=true on /sync
2018-10-17 23:22:07 +02:00
Miroslav Prasil
2e7fa6440b
Do not spawn WS thread if it's disabled
2018-10-15 15:08:15 +01:00
Miroslav Prasil
9ecc98c3cc
Disable WebSockets negotiation by default
2018-10-14 23:25:16 +01:00
Daniel García
02fd68d63b
Merge pull request #218 from janost/refactor-folder-save
...
Folder::save() should return QueryResult instead of bool
2018-10-14 20:07:27 +02:00
janost
e985221b50
User::save() should return QueryResult instead of bool
2018-10-14 19:33:12 +02:00
janost
77cf63c06d
Folder::save() should return QueryResult instead of bool
2018-10-14 18:25:04 +02:00
Daniel García
faec050a6d
Merge pull request #217 from janost/refactor-device-save
...
Device::save() should return QueryResult instead of bool
2018-10-14 17:35:59 +02:00
janost
58a78ffa54
Device::save() should return QueryResult instead of bool
2018-10-14 16:17:37 +02:00
janost
64f6c60bfd
Organization::save() and UserOrganization::save() should return QueryResult instead of bool
2018-10-14 16:04:23 +02:00
Miroslav Prasil
a28caa33ef
Implement poor man's admin panel
2018-10-12 15:20:10 +01:00
janost
5292d38c73
CollectionCipher::save() and delete() should return QueryResult instead of bool
2018-10-07 11:06:11 +02:00
Daniel García
1049646e27
Merge pull request #210 from janost/cipher-save-refactor
...
Cipher::save() should return QueryResult instead of bool
2018-10-06 16:08:04 +02:00
janost
380cf06211
Cipher::save() should return QueryResult instead of bool
2018-10-06 14:13:49 +02:00
janost
c29bc9309a
Return proper error message for org reinvite
2018-10-05 12:29:41 +02: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