Daniel Krol
36d0d536de
Github Actions and Goreleaser
2022-08-20 11:42:12 -04:00
Daniel Krol
aa691dbc09
Use verify_token=null as verified to avoid unique constraint
...
We were using verify_token="" to mean that the user was verified. We need a unique constraint on verify_token to prevent two users from getting the same verify link in their email. This means that if we have two verified users, they will both have verify_token="", which triggers the unique constraint. Oops. However, null is an exception to unique constraints, so we're now using that instead to mean verified.
2022-08-13 22:15:19 -04:00
Daniel Krol
e2893c13e3
Add test to confirm that we can create two accounts on the server.
2022-08-13 19:37:54 -04:00
Daniel Krol
d1c5685045
Port 443 for Caddy so we have nice links in emails. No need for weird ports.
2022-08-13 15:03:06 -04:00
Daniel Krol
0e36bebdae
Mailgun integration
2022-08-13 14:26:04 -04:00
Daniel Krol
58cefa4c1b
test client: update_secrets -> update_derived_secrets
...
It doesn't update the root password.
2022-08-09 17:46:11 -04:00
Daniel Krol
126f600cac
Note for auditor
2022-08-09 12:01:56 -04:00
Daniel Krol
6c9b9d07b2
Pass root password directly to SDK again.
...
Related to this: https://github.com/lbryio/wallet-sync-server/issues/4
Passing in a KDF output messes with the existing CLI UI for wallet locking. Also the SDK has its own encryption from password, may as well use it.
2022-08-09 10:16:48 -04:00
Daniel Krol
165bcf1964
scrypt inputs to consts, and fmt
2022-08-04 20:26:01 -04:00
Daniel Krol
f5650e8d96
Hosting configs FOR DEV ONLY to let lbry.id work out of the box again
2022-08-01 11:46:06 -04:00
Daniel Krol
1e37b0e7b1
Add mailgun env vars
2022-07-31 19:23:21 -04:00
Daniel Krol
510dfe2b96
Integration test (sort of) for account verify
2022-07-31 16:43:36 -04:00
Daniel Krol
f60e5659b6
Don't update verify tokens if the account is already verified
2022-07-31 14:13:30 -04:00
Daniel Krol
39144aa3c0
Comment assumptions on store functions
2022-07-31 13:54:40 -04:00
Daniel Krol
aa1361a5fa
Human-friendly output for verify account endpoint
2022-07-31 12:59:46 -04:00
Daniel Krol
ea3b04eff6
store.VerifyToken
2022-07-31 12:42:03 -04:00
Daniel Krol
2dd3019b08
store.UpdateVerifyTokenString
2022-07-31 12:26:03 -04:00
Daniel Krol
eabfa9d54c
No password change for unverified accounts
2022-07-30 23:09:33 -04:00
Daniel Krol
4a205bbda7
GetUserId - Return error if account unverified
2022-07-30 15:06:27 -04:00
Daniel Krol
dee2882fe9
Verify token db fields, CreateAccount changes
2022-07-30 14:24:33 -04:00
Daniel Krol
3b44a55f5a
Connect the latest handlers to endpoints.
2022-07-29 20:53:28 -04:00
Daniel Krol
5ffcddf8f7
Endpoint to re-send verify token string
2022-07-29 20:49:00 -04:00
Daniel Krol
c8620f7c8c
Comment
2022-07-29 20:34:47 -04:00
Daniel Krol
19396e9797
Make error message more accurate. Rename test.
2022-07-29 15:52:23 -04:00
Daniel Krol
e6f5628a94
Note for when getting auth token fails
2022-07-29 14:34:54 -04:00
Daniel Krol
4ecf8538be
log.Printf istead fmt.Printf to be uniform
2022-07-29 13:43:27 -04:00
Daniel Krol
be0e022c92
Check/log email configs on startup.
2022-07-29 13:42:25 -04:00
Daniel Krol
f2ba31d972
Warning for self-hosting users
2022-07-29 13:38:26 -04:00
Daniel Krol
0948e95932
Forgot the mail package
2022-07-29 09:42:12 -04:00
Daniel Krol
fcbab29d06
Test make new verify token
2022-07-29 09:14:25 -04:00
Daniel Krol
6672175a25
Server test/implement send verify-account email
2022-07-27 19:45:09 -04:00
Daniel Krol
f15875c4a6
Verify account endpoint
2022-07-26 16:36:57 -04:00
Daniel Krol
0c6964df0e
Oops delete way outdated comment
2022-07-26 12:48:44 -04:00
Daniel Krol
2f4ffd752c
Temporarily fix integration tests for email verify
...
Require email verify. As of now we don't have the "verified" bit in the storage layer so it passes. Once we put that in, we'll have to go back and add a call to the verification endpoint.
2022-07-26 11:21:55 -04:00
Daniel Krol
aee351a2b1
Don't allow password change for unverified accounts
...
Mainly because wallet change is tied up in it
2022-07-26 11:18:43 -04:00
Daniel Krol
5985631410
Don't hand out auth tokens if they're not verified
2022-07-26 10:53:31 -04:00
Daniel Krol
55db62e2f9
Register endpoint handles "verified" status
...
Based on the verification mode specified in env. The db doesn't do anything with it yet.
2022-07-26 10:16:44 -04:00
Daniel Krol
832778ffd1
env: rename things, export type
2022-07-25 18:02:25 -04:00
Daniel Krol
f792ba5846
env
package provides config values
2022-07-24 16:03:37 -04:00
Daniel Krol
ade526f4f9
Create environmental var package
2022-07-23 19:03:51 -04:00
Daniel Krol
36659ef720
More unique metric name; comment
2022-07-23 16:47:18 -04:00
Daniel Krol
41b14dad44
Prometheus - track wallet requests
2022-07-22 19:49:30 -04:00
Daniel Krol
3ff36f169c
Add prometheus packages
2022-07-22 19:29:08 -04:00
Daniel Krol
4f8a648cc4
Notes for auditor.
2022-07-22 16:37:27 -04:00
Daniel Krol
aefda1245b
Make emails case insensitive (for now).
...
Prevents duplicate accounts. Also allows case insensitive search (user id, salt seed, etc) while still having an index. This is done by storing normalized as a separate field from originally formated (which we'll use for sending emails, etc).
2022-07-22 16:29:03 -04:00
Daniel Krol
f10cc8aa26
Salt Seed, used to generate secrets on client
2022-07-21 19:10:16 -04:00
Daniel Krol
23f9d45ed5
More useful 404, particularly for API version change
2022-07-21 15:14:21 -04:00
Daniel Krol
4430013bae
KDF for server password. Save salt in DB.
2022-07-14 22:04:03 -04:00
Daniel Krol
dbfdff167b
Confirm scrypt parameters; remove comment
2022-07-13 06:44:42 -04:00
Daniel Krol
ed8b22363e
Hosting instructions
2022-07-11 22:25:43 -04:00