diff options
author | 2024-08-07 19:06:32 -0700 | |
---|---|---|
committer | 2024-08-07 19:30:26 -0700 | |
commit | 55231eb4cfb5b5ce246a68ef456619cdb65d8af1 (patch) | |
tree | b08bff32c47432cab7da19040582c9b3d02d1020 /backend/internal/database/cookies.go | |
parent | 08993e2f8497341079010d3d06361c99492c4c07 (diff) | |
download | ibd-trader-55231eb4cfb5b5ce246a68ef456619cdb65d8af1.tar.gz ibd-trader-55231eb4cfb5b5ce246a68ef456619cdb65d8af1.tar.zst ibd-trader-55231eb4cfb5b5ce246a68ef456619cdb65d8af1.zip |
Remove dead code in internal/database
Removes `keys.go` as the queries there were only being used in one
location.
Diffstat (limited to 'backend/internal/database/cookies.go')
-rw-r--r-- | backend/internal/database/cookies.go | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/backend/internal/database/cookies.go b/backend/internal/database/cookies.go index d652b65..3ea21d0 100644 --- a/backend/internal/database/cookies.go +++ b/backend/internal/database/cookies.go @@ -98,13 +98,18 @@ ORDER BY expires_at DESC;`, subject, degraded) func AddCookie( ctx context.Context, - exec Executor, + exec TransactionExecutor, kms keys.KeyManagementService, subject string, cookie *http.Cookie, ) error { + tx, err := exec.BeginTx(ctx, nil) + if err != nil { + return err + } + // Get the key ID for the user - user, err := GetUser(ctx, exec, subject) + user, err := GetUser(ctx, tx, subject) if err != nil { return fmt.Errorf("unable to get user: %w", err) } @@ -113,13 +118,20 @@ func AddCookie( } // Get the key - key, err := GetKey(ctx, exec, *user.EncryptionKeyID) + var keyName string + var key []byte + err = tx.QueryRowContext(ctx, ` +SELECT kms_key_name, encrypted_key +FROM keys +WHERE id = $1;`, + *user.EncryptionKeyID, + ).Scan(&keyName, &key) if err != nil { return fmt.Errorf("unable to get key: %w", err) } // Encrypt the token - encryptedToken, err := keys.EncryptWithKey(ctx, kms, key.Name, key.Key, []byte(cookie.Value)) + encryptedToken, err := keys.EncryptWithKey(ctx, kms, keyName, key, []byte(cookie.Value)) if err != nil { return fmt.Errorf("unable to encrypt token: %w", err) } @@ -127,7 +139,7 @@ func AddCookie( // Add the cookie to the database _, err = exec.ExecContext(ctx, ` INSERT INTO ibd_tokens (token, expires_at, user_subject, encryption_key) -VALUES ($1, $2, $3, $4)`, encryptedToken, cookie.Expires, subject, key.Id) +VALUES ($1, $2, $3, $4)`, encryptedToken, cookie.Expires, subject, *user.EncryptionKeyID) if err != nil { return fmt.Errorf("unable to add cookie: %w", err) } |