mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-06-01 10:04:00 +00:00
28 lines
634 B
SQL
28 lines
634 B
SQL
CREATE OR ALTER PROCEDURE dbo.USP_RotateUserCredential(
|
|
@UserAccountId_ UNIQUEIDENTIFIER,
|
|
@Hash NVARCHAR(MAX)
|
|
)
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
SET XACT_ABORT ON;
|
|
BEGIN TRANSACTION;
|
|
|
|
EXEC USP_GetUserAccountByID @UserAccountId = @UserAccountId_
|
|
|
|
IF @@ROWCOUNT = 0
|
|
THROW 50001, 'User account not found', 1;
|
|
|
|
|
|
-- invalidate all other credentials -- set them to revoked
|
|
UPDATE dbo.UserCredential
|
|
SET IsRevoked = 1,
|
|
RevokedAt = GETDATE()
|
|
WHERE UserAccountId = @UserAccountId_;
|
|
|
|
INSERT INTO dbo.UserCredential
|
|
(UserAccountId, Hash)
|
|
VALUES (@UserAccountId_, @Hash);
|
|
|
|
|
|
END; |