mirror of
https://github.com/bitwarden/server.git
synced 2025-05-23 12:31:06 -05:00
129 lines
3.0 KiB
Transact-SQL
129 lines
3.0 KiB
Transact-SQL
-- Add `Emails` field that stores a comma-separated list of email addresses for
|
|
-- email/OTP authentication to table and write methods. The read methods
|
|
-- don't need to be updated because they all use `*`.
|
|
ALTER TABLE [dbo].[Organization] ADD [Emails] NVARCHAR(1024) NULL;
|
|
GO
|
|
|
|
CREATE OR ALTER PROCEDURE [dbo].[Send_Update]
|
|
@Id UNIQUEIDENTIFIER,
|
|
@UserId UNIQUEIDENTIFIER,
|
|
@OrganizationId UNIQUEIDENTIFIER,
|
|
@Type TINYINT,
|
|
@Data VARCHAR(MAX),
|
|
@Key VARCHAR(MAX),
|
|
@Password NVARCHAR(300),
|
|
@Emails NVARCHAR(1024),
|
|
@MaxAccessCount INT,
|
|
@AccessCount INT,
|
|
@CreationDate DATETIME2(7),
|
|
@RevisionDate DATETIME2(7),
|
|
@ExpirationDate DATETIME2(7),
|
|
@DeletionDate DATETIME2(7),
|
|
@Disabled BIT,
|
|
@HideEmail BIT,
|
|
@CipherId UNIQUEIDENTIFIER = NULL
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON
|
|
|
|
UPDATE
|
|
[dbo].[Send]
|
|
SET
|
|
[UserId] = @UserId,
|
|
[OrganizationId] = @OrganizationId,
|
|
[Type] = @Type,
|
|
[Data] = @Data,
|
|
[Key] = @Key,
|
|
[Password] = @Password,
|
|
[Emails] = @Emails,
|
|
[MaxAccessCount] = @MaxAccessCount,
|
|
[AccessCount] = @AccessCount,
|
|
[CreationDate] = @CreationDate,
|
|
[RevisionDate] = @RevisionDate,
|
|
[ExpirationDate] = @ExpirationDate,
|
|
[DeletionDate] = @DeletionDate,
|
|
[Disabled] = @Disabled,
|
|
[HideEmail] = @HideEmail,
|
|
[CipherId] = @CipherId
|
|
WHERE
|
|
[Id] = @Id
|
|
|
|
IF @UserId IS NOT NULL
|
|
BEGIN
|
|
EXEC [dbo].[User_BumpAccountRevisionDate] @UserId
|
|
END
|
|
-- TODO: OrganizationId bump?
|
|
END
|
|
|
|
CREATE OR ALTER PROCEDURE [dbo].[Send_Create]
|
|
@Id UNIQUEIDENTIFIER OUTPUT,
|
|
@UserId UNIQUEIDENTIFIER,
|
|
@OrganizationId UNIQUEIDENTIFIER,
|
|
@Type TINYINT,
|
|
@Data VARCHAR(MAX),
|
|
@Key VARCHAR(MAX),
|
|
@Password NVARCHAR(300),
|
|
@Emails NVARCHAR(1024),
|
|
@MaxAccessCount INT,
|
|
@AccessCount INT,
|
|
@CreationDate DATETIME2(7),
|
|
@RevisionDate DATETIME2(7),
|
|
@ExpirationDate DATETIME2(7),
|
|
@DeletionDate DATETIME2(7),
|
|
@Disabled BIT,
|
|
@HideEmail BIT,
|
|
@CipherId UNIQUEIDENTIFIER = NULL
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON
|
|
|
|
INSERT INTO [dbo].[Send]
|
|
(
|
|
[Id],
|
|
[UserId],
|
|
[OrganizationId],
|
|
[Type],
|
|
[Data],
|
|
[Key],
|
|
[Password],
|
|
[MaxAccessCount],
|
|
[AccessCount],
|
|
[CreationDate],
|
|
[RevisionDate],
|
|
[ExpirationDate],
|
|
[DeletionDate],
|
|
[Disabled],
|
|
[HideEmail],
|
|
[CipherId]
|
|
)
|
|
VALUES
|
|
(
|
|
@Id,
|
|
@UserId,
|
|
@OrganizationId,
|
|
@Type,
|
|
@Data,
|
|
@Key,
|
|
@Password,
|
|
@MaxAccessCount,
|
|
@AccessCount,
|
|
@CreationDate,
|
|
@RevisionDate,
|
|
@ExpirationDate,
|
|
@DeletionDate,
|
|
@Disabled,
|
|
@HideEmail,
|
|
@CipherId
|
|
)
|
|
|
|
IF @UserId IS NOT NULL
|
|
BEGIN
|
|
IF @Type = 1 --File
|
|
BEGIN
|
|
EXEC [dbo].[User_UpdateStorage] @UserId
|
|
END
|
|
EXEC [dbo].[User_BumpAccountRevisionDate] @UserId
|
|
END
|
|
-- TODO: OrganizationId bump?
|
|
END
|