storj/satellite/console
Cameron 84b522bc06 satellite/console: create account management api keys service
We are in the process of creating an api to allow users to manage their
accounts programmatically. We would like to use api keys for
authorization. We were originally going to create an entirely new table
for these api keys, but seeing as we already have 2 other tables for
keys/tokens, api_keys and oauth_tokens, we thought it might be better to
use one of these. We're using oauth_tokens.

We create a new oidc.OAuthTokenKind for account management api keys:
KindAccountManagementTokenV0. We made the key versioned because we
likely want to improve the implementation in the future, but we want to
get something functional out the door ASAP because the account management
api feature is highly desired.

Add a new method to oidc.OAuthTokens interface for revoking v0 account
management api keys, RevokeAccountManagementTokenV0. Add update method
to dbx implementation to allow updating the expiration. We will revoke
these keys by setting the expiration to 0 so they are expired.

Change-Id: Ideb8ae04b23aa55d5825b064b5e43e32eadc1fba
2022-03-23 17:02:20 +00:00
..
accountmanagementapikeys satellite/console: create account management api keys service 2022-03-23 17:02:20 +00:00
consoleauth all: fix linter complaints 2020-10-13 15:59:01 +03:00
consolewasm satellite/console: add more tests for uplink access permission 2021-06-23 11:58:29 +00:00
consoleweb satellite/console: create account management api keys service 2022-03-23 17:02:20 +00:00
wasm all: fix linting issues 2022-03-21 15:26:42 +00:00
apikeys_test.go satellite/satellitedb: select user_agent in apikeys method GetPagedByProjectID 2022-01-03 11:58:26 -05:00
apikeys.go satellite/console: create account management api keys service 2022-03-23 17:02:20 +00:00
attribution_test.go satellite/buckets: add new buckets service 2021-11-16 12:36:17 +02:00
auth.go all: fix error naming 2021-04-29 15:38:21 +03:00
billinghistoryitem.go satellite/payments: available coupon value feature 2020-06-02 10:00:45 +00:00
buckets.go satellite/metabase: move package one level higher 2021-04-21 15:54:22 +03:00
database.go satellite/oidc: move oidc into common package 2022-02-08 09:46:54 -06:00
mfa.go satellite/{console,satellitedb}: Forbid creating users with used email 2021-12-15 17:24:35 +00:00
projectmembers_test.go all: remove old uuid 2020-04-02 19:30:36 +03:00
projectmembers.go all: add missing dots 2020-08-11 17:50:01 +03:00
projects_test.go satellite/{admin,console}: Move tests 2021-10-01 12:25:37 +00:00
projects.go satellite/{console,satellitedb}: increase project limit on paid tier upgrade 2022-03-14 16:10:23 +00:00
projectusagelimits.go satellite/{console,satellitedb}: add project segment limit to user 2021-12-16 08:46:01 +00:00
recaptcha_test.go satellite/console: Forward friendly registration errors to client 2021-07-22 11:31:12 +00:00
recaptcha.go satellite/console: Add reCAPTCHA verification step to registration 2021-07-07 21:34:07 +00:00
registrationtoken.go all: golangci-lint v1.33.0 fixes (#3985) 2020-12-05 17:01:42 +01:00
request.go audit logging: log important user activity 2020-09-07 15:26:34 +00:00
resetpasswordtoken_test.go all: fix linter complaints 2020-10-13 15:59:01 +03:00
resetpasswordtoken.go all: golangci-lint v1.33.0 fixes (#3985) 2020-12-05 17:01:42 +01:00
service_test.go satellite/console: create account management api keys service 2022-03-23 17:02:20 +00:00
service.go satellite/console: create account management api keys service 2022-03-23 17:02:20 +00:00
sortdirection.go all: fix comments 2020-07-16 19:13:14 +03:00
users_test.go satellite/{console,satellitedb}: increase project limit on paid tier upgrade 2022-03-14 16:10:23 +00:00
users.go satellite/{console,satellitedb}: increase project limit on paid tier upgrade 2022-03-14 16:10:23 +00:00
validation.go satellite/console: Don't lose ErrValiation error class 2022-02-28 11:00:56 +00:00