mirror of
https://github.com/bitwarden/server.git
synced 2025-07-03 17:12:49 -05:00
[PM-1188] Server owner auth migration (#2825)
* [PM-1188] add sso project to auth * [PM-1188] move sso api models to auth * [PM-1188] fix sso api model namespace & imports * [PM-1188] move core files to auth * [PM-1188] fix core sso namespace & models * [PM-1188] move sso repository files to auth * [PM-1188] fix sso repo files namespace & imports * [PM-1188] move sso sql files to auth folder * [PM-1188] move sso test files to auth folders * [PM-1188] fix sso tests namespace & imports * [PM-1188] move auth api files to auth folder * [PM-1188] fix auth api files namespace & imports * [PM-1188] move auth core files to auth folder * [PM-1188] fix auth core files namespace & imports * [PM-1188] move auth email templates to auth folder * [PM-1188] move auth email folder back into shared directory * [PM-1188] fix auth email names * [PM-1188] move auth core models to auth folder * [PM-1188] fix auth model namespace & imports * [PM-1188] add entire Identity project to auth codeowners * [PM-1188] fix auth orm files namespace & imports * [PM-1188] move auth orm files to auth folder * [PM-1188] move auth sql files to auth folder * [PM-1188] move auth tests to auth folder * [PM-1188] fix auth test files namespace & imports * [PM-1188] move emergency access api files to auth folder * [PM-1188] fix emergencyaccess api files namespace & imports * [PM-1188] move emergency access core files to auth folder * [PM-1188] fix emergency access core files namespace & imports * [PM-1188] move emergency access orm files to auth folder * [PM-1188] fix emergency access orm files namespace & imports * [PM-1188] move emergency access sql files to auth folder * [PM-1188] move emergencyaccess test files to auth folder * [PM-1188] fix emergency access test files namespace & imports * [PM-1188] move captcha files to auth folder * [PM-1188] fix captcha files namespace & imports * [PM-1188] move auth admin files into auth folder * [PM-1188] fix admin auth files namespace & imports - configure mvc to look in auth folders for views * [PM-1188] remove extra imports and formatting * [PM-1188] fix ef auth model imports * [PM-1188] fix DatabaseContextModelSnapshot paths * [PM-1188] fix grant import in ef * [PM-1188] update sqlproj * [PM-1188] move missed sqlproj files * [PM-1188] move auth ef models out of auth folder * [PM-1188] fix auth ef models namespace * [PM-1188] remove auth ef models unused imports * [PM-1188] fix imports for auth ef models * [PM-1188] fix more ef model imports * [PM-1188] fix file encodings
This commit is contained in:
@ -1,57 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_Create]
|
||||
@Id UNIQUEIDENTIFIER OUTPUT,
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@Type TINYINT,
|
||||
@RequestDeviceIdentifier NVARCHAR(50),
|
||||
@RequestDeviceType TINYINT,
|
||||
@RequestIpAddress VARCHAR(50),
|
||||
@ResponseDeviceId UNIQUEIDENTIFIER,
|
||||
@AccessCode VARCHAR(25),
|
||||
@PublicKey VARCHAR(MAX),
|
||||
@Key VARCHAR(MAX),
|
||||
@MasterPasswordHash VARCHAR(MAX),
|
||||
@Approved BIT,
|
||||
@CreationDate DATETIME2(7),
|
||||
@ResponseDate DATETIME2(7),
|
||||
@AuthenticationDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
INSERT INTO [dbo].[AuthRequest]
|
||||
(
|
||||
[Id],
|
||||
[UserId],
|
||||
[Type],
|
||||
[RequestDeviceIdentifier],
|
||||
[RequestDeviceType],
|
||||
[RequestIpAddress],
|
||||
[ResponseDeviceId],
|
||||
[AccessCode],
|
||||
[PublicKey],
|
||||
[Key],
|
||||
[MasterPasswordHash],
|
||||
[Approved],
|
||||
[CreationDate],
|
||||
[ResponseDate],
|
||||
[AuthenticationDate]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
@Id,
|
||||
@UserId,
|
||||
@Type,
|
||||
@RequestDeviceIdentifier,
|
||||
@RequestDeviceType,
|
||||
@RequestIpAddress,
|
||||
@ResponseDeviceId,
|
||||
@AccessCode,
|
||||
@PublicKey,
|
||||
@Key,
|
||||
@MasterPasswordHash,
|
||||
@Approved,
|
||||
@CreationDate,
|
||||
@ResponseDate,
|
||||
@AuthenticationDate
|
||||
)
|
||||
END
|
@ -1,12 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_DeleteById]
|
||||
@Id UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[AuthRequest]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,6 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_DeleteIfExpired]
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT OFF
|
||||
DELETE FROM [dbo].[AuthRequest] WHERE [CreationDate] < DATEADD(minute, -15, GETUTCDATE());
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_ReadById]
|
||||
@Id UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[AuthRequestView]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_ReadByUserId]
|
||||
@UserId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[AuthRequestView]
|
||||
WHERE
|
||||
[UserId] = @UserId
|
||||
END
|
@ -1,40 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[AuthRequest_Update]
|
||||
@Id UNIQUEIDENTIFIER OUTPUT,
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@Type SMALLINT,
|
||||
@RequestDeviceIdentifier NVARCHAR(50),
|
||||
@RequestDeviceType SMALLINT,
|
||||
@RequestIpAddress VARCHAR(50),
|
||||
@ResponseDeviceId UNIQUEIDENTIFIER,
|
||||
@AccessCode VARCHAR(25),
|
||||
@PublicKey VARCHAR(MAX),
|
||||
@Key VARCHAR(MAX),
|
||||
@MasterPasswordHash VARCHAR(MAX),
|
||||
@Approved BIT,
|
||||
@CreationDate DATETIME2 (7),
|
||||
@ResponseDate DATETIME2 (7),
|
||||
@AuthenticationDate DATETIME2 (7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
UPDATE
|
||||
[dbo].[AuthRequest]
|
||||
SET
|
||||
[UserId] = @UserId,
|
||||
[Type] = @Type,
|
||||
[RequestDeviceIdentifier] = @RequestDeviceIdentifier,
|
||||
[RequestDeviceType] = @RequestDeviceType,
|
||||
[RequestIpAddress] = @RequestIpAddress,
|
||||
[ResponseDeviceId] = @ResponseDeviceId,
|
||||
[AccessCode] = @AccessCode,
|
||||
[PublicKey] = @PublicKey,
|
||||
[Key] = @Key,
|
||||
[MasterPasswordHash] = @MasterPasswordHash,
|
||||
[Approved] = @Approved,
|
||||
[CreationDate] = @CreationDate,
|
||||
[ResponseDate] = @ResponseDate,
|
||||
[AuthenticationDate] = @AuthenticationDate
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccessDetails_ReadByGranteeId]
|
||||
@GranteeId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[EmergencyAccessDetailsView]
|
||||
WHERE
|
||||
[GranteeId] = @GranteeId
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccessDetails_ReadByGrantorId]
|
||||
@GrantorId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[EmergencyAccessDetailsView]
|
||||
WHERE
|
||||
[GrantorId] = @GrantorId
|
||||
END
|
@ -1,16 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccessDetails_ReadByIdGrantorId]
|
||||
@Id UNIQUEIDENTIFIER,
|
||||
@GrantorId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[EmergencyAccessDetailsView]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
AND
|
||||
[GrantorId] = @GrantorId
|
||||
END
|
@ -1,14 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccessDetails_ReadExpiredRecoveries]
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[EmergencyAccessDetailsView]
|
||||
WHERE
|
||||
[Status] = 3
|
||||
AND
|
||||
DATEADD(DAY, [WaitTimeDays], [RecoveryInitiatedDate]) <= GETUTCDATE()
|
||||
END
|
@ -1,48 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_Create]
|
||||
@Id UNIQUEIDENTIFIER OUTPUT,
|
||||
@GrantorId UNIQUEIDENTIFIER,
|
||||
@GranteeId UNIQUEIDENTIFIER,
|
||||
@Email NVARCHAR(256),
|
||||
@KeyEncrypted VARCHAR(MAX),
|
||||
@Type TINYINT,
|
||||
@Status TINYINT,
|
||||
@WaitTimeDays SMALLINT,
|
||||
@RecoveryInitiatedDate DATETIME2(7),
|
||||
@LastNotificationDate DATETIME2(7),
|
||||
@CreationDate DATETIME2(7),
|
||||
@RevisionDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
INSERT INTO [dbo].[EmergencyAccess]
|
||||
(
|
||||
[Id],
|
||||
[GrantorId],
|
||||
[GranteeId],
|
||||
[Email],
|
||||
[KeyEncrypted],
|
||||
[Type],
|
||||
[Status],
|
||||
[WaitTimeDays],
|
||||
[RecoveryInitiatedDate],
|
||||
[LastNotificationDate],
|
||||
[CreationDate],
|
||||
[RevisionDate]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
@Id,
|
||||
@GrantorId,
|
||||
@GranteeId,
|
||||
@Email,
|
||||
@KeyEncrypted,
|
||||
@Type,
|
||||
@Status,
|
||||
@WaitTimeDays,
|
||||
@RecoveryInitiatedDate,
|
||||
@LastNotificationDate,
|
||||
@CreationDate,
|
||||
@RevisionDate
|
||||
)
|
||||
END
|
@ -1,14 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_DeleteById]
|
||||
@Id UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
EXEC [dbo].[User_BumpAccountRevisionDateByEmergencyAccessGranteeId] @Id
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[EmergencyAccess]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_ReadById]
|
||||
@Id UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[EmergencyAccess]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,21 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_ReadCountByGrantorIdEmail]
|
||||
@GrantorId UNIQUEIDENTIFIER,
|
||||
@Email NVARCHAR(256),
|
||||
@OnlyUsers BIT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
COUNT(1)
|
||||
FROM
|
||||
[dbo].[EmergencyAccess] EA
|
||||
LEFT JOIN
|
||||
[dbo].[User] U ON EA.[GranteeId] = U.[Id]
|
||||
WHERE
|
||||
EA.[GrantorId] = @GrantorId
|
||||
AND (
|
||||
(@OnlyUsers = 0 AND (EA.[Email] = @Email OR U.[Email] = @Email))
|
||||
OR (@OnlyUsers = 1 AND U.[Email] = @Email)
|
||||
)
|
||||
END
|
@ -1,23 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_ReadToNotify]
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
EA.*,
|
||||
Grantee.Name as GranteeName,
|
||||
Grantee.Email as GranteeEmail,
|
||||
Grantor.Email as GrantorEmail
|
||||
FROM
|
||||
[dbo].[EmergencyAccess] EA
|
||||
LEFT JOIN
|
||||
[dbo].[User] Grantor ON Grantor.[Id] = EA.[GrantorId]
|
||||
LEFT JOIN
|
||||
[dbo].[User] Grantee On Grantee.[Id] = EA.[GranteeId]
|
||||
WHERE
|
||||
EA.[Status] = 3
|
||||
AND
|
||||
DATEADD(DAY, EA.[WaitTimeDays] - 1, EA.[RecoveryInitiatedDate]) <= GETUTCDATE()
|
||||
AND
|
||||
DATEADD(DAY, 1, EA.[LastNotificationDate]) <= GETUTCDATE()
|
||||
END
|
@ -1,36 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[EmergencyAccess_Update]
|
||||
@Id UNIQUEIDENTIFIER,
|
||||
@GrantorId UNIQUEIDENTIFIER,
|
||||
@GranteeId UNIQUEIDENTIFIER,
|
||||
@Email NVARCHAR(256),
|
||||
@KeyEncrypted VARCHAR(MAX),
|
||||
@Type TINYINT,
|
||||
@Status TINYINT,
|
||||
@WaitTimeDays SMALLINT,
|
||||
@RecoveryInitiatedDate DATETIME2(7),
|
||||
@LastNotificationDate DATETIME2(7),
|
||||
@CreationDate DATETIME2(7),
|
||||
@RevisionDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
UPDATE
|
||||
[dbo].[EmergencyAccess]
|
||||
SET
|
||||
[GrantorId] = @GrantorId,
|
||||
[GranteeId] = @GranteeId,
|
||||
[Email] = @Email,
|
||||
[KeyEncrypted] = @KeyEncrypted,
|
||||
[Type] = @Type,
|
||||
[Status] = @Status,
|
||||
[WaitTimeDays] = @WaitTimeDays,
|
||||
[RecoveryInitiatedDate] = @RecoveryInitiatedDate,
|
||||
[LastNotificationDate] = @LastNotificationDate,
|
||||
[CreationDate] = @CreationDate,
|
||||
[RevisionDate] = @RevisionDate
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
|
||||
EXEC [dbo].[User_BumpAccountRevisionDate] @GranteeId
|
||||
END
|
@ -1,18 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_Delete]
|
||||
@SubjectId NVARCHAR(200),
|
||||
@SessionId NVARCHAR(100),
|
||||
@ClientId NVARCHAR(200),
|
||||
@Type NVARCHAR(50)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[Grant]
|
||||
WHERE
|
||||
(@SubjectId IS NULL OR [SubjectId] = @SubjectId)
|
||||
AND (@ClientId IS NULL OR [ClientId] = @ClientId)
|
||||
AND (@SessionId IS NULL OR [SessionId] = @SessionId)
|
||||
AND (@Type IS NULL OR [Type] = @Type)
|
||||
END
|
@ -1,12 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_DeleteByKey]
|
||||
@Key NVARCHAR(200)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[Grant]
|
||||
WHERE
|
||||
[Key] = @Key
|
||||
END
|
@ -1,19 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_DeleteExpired]
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DECLARE @BatchSize INT = 100
|
||||
DECLARE @Now DATETIME2(7) = GETUTCDATE()
|
||||
|
||||
WHILE @BatchSize > 0
|
||||
BEGIN
|
||||
DELETE TOP(@BatchSize)
|
||||
FROM
|
||||
[dbo].[Grant]
|
||||
WHERE
|
||||
[ExpirationDate] < @Now
|
||||
|
||||
SET @BatchSize = @@ROWCOUNT
|
||||
END
|
||||
END
|
@ -1,19 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_Read]
|
||||
@SubjectId NVARCHAR(200),
|
||||
@SessionId NVARCHAR(100),
|
||||
@ClientId NVARCHAR(200),
|
||||
@Type NVARCHAR(50)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[GrantView]
|
||||
WHERE
|
||||
(@SubjectId IS NULL OR [SubjectId] = @SubjectId)
|
||||
AND (@ClientId IS NULL OR [ClientId] = @ClientId)
|
||||
AND (@SessionId IS NULL OR [SessionId] = @SessionId)
|
||||
AND (@Type IS NULL OR [Type] = @Type)
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_ReadByKey]
|
||||
@Key NVARCHAR(200)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[GrantView]
|
||||
WHERE
|
||||
[Key] = @Key
|
||||
END
|
@ -1,88 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[Grant_Save]
|
||||
@Key NVARCHAR(200),
|
||||
@Type NVARCHAR(50),
|
||||
@SubjectId NVARCHAR(200),
|
||||
@SessionId NVARCHAR(100),
|
||||
@ClientId NVARCHAR(200),
|
||||
@Description NVARCHAR(200),
|
||||
@CreationDate DATETIME2,
|
||||
@ExpirationDate DATETIME2,
|
||||
@ConsumedDate DATETIME2,
|
||||
@Data NVARCHAR(MAX)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
MERGE
|
||||
[dbo].[Grant] AS [Target]
|
||||
USING
|
||||
(
|
||||
VALUES
|
||||
(
|
||||
@Key,
|
||||
@Type,
|
||||
@SubjectId,
|
||||
@SessionId,
|
||||
@ClientId,
|
||||
@Description,
|
||||
@CreationDate,
|
||||
@ExpirationDate,
|
||||
@ConsumedDate,
|
||||
@Data
|
||||
)
|
||||
) AS [Source]
|
||||
(
|
||||
[Key],
|
||||
[Type],
|
||||
[SubjectId],
|
||||
[SessionId],
|
||||
[ClientId],
|
||||
[Description],
|
||||
[CreationDate],
|
||||
[ExpirationDate],
|
||||
[ConsumedDate],
|
||||
[Data]
|
||||
)
|
||||
ON
|
||||
[Target].[Key] = [Source].[Key]
|
||||
WHEN MATCHED THEN
|
||||
UPDATE
|
||||
SET
|
||||
[Type] = [Source].[Type],
|
||||
[SubjectId] = [Source].[SubjectId],
|
||||
[SessionId] = [Source].[SessionId],
|
||||
[ClientId] = [Source].[ClientId],
|
||||
[Description] = [Source].[Description],
|
||||
[CreationDate] = [Source].[CreationDate],
|
||||
[ExpirationDate] = [Source].[ExpirationDate],
|
||||
[ConsumedDate] = [Source].[ConsumedDate],
|
||||
[Data] = [Source].[Data]
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT
|
||||
(
|
||||
[Key],
|
||||
[Type],
|
||||
[SubjectId],
|
||||
[SessionId],
|
||||
[ClientId],
|
||||
[Description],
|
||||
[CreationDate],
|
||||
[ExpirationDate],
|
||||
[ConsumedDate],
|
||||
[Data]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
[Source].[Key],
|
||||
[Source].[Type],
|
||||
[Source].[SubjectId],
|
||||
[Source].[SessionId],
|
||||
[Source].[ClientId],
|
||||
[Source].[Description],
|
||||
[Source].[CreationDate],
|
||||
[Source].[ExpirationDate],
|
||||
[Source].[ConsumedDate],
|
||||
[Source].[Data]
|
||||
)
|
||||
;
|
||||
END
|
@ -1,30 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_Create]
|
||||
@Id BIGINT OUTPUT,
|
||||
@Enabled BIT,
|
||||
@OrganizationId UNIQUEIDENTIFIER,
|
||||
@Data NVARCHAR(MAX),
|
||||
@CreationDate DATETIME2(7),
|
||||
@RevisionDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
INSERT INTO [dbo].[SsoConfig]
|
||||
(
|
||||
[Enabled],
|
||||
[OrganizationId],
|
||||
[Data],
|
||||
[CreationDate],
|
||||
[RevisionDate]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
@Enabled,
|
||||
@OrganizationId,
|
||||
@Data,
|
||||
@CreationDate,
|
||||
@RevisionDate
|
||||
)
|
||||
|
||||
SET @Id = SCOPE_IDENTITY();
|
||||
END
|
@ -1,12 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_DeleteById]
|
||||
@Id BIGINT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[SsoConfig]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_ReadById]
|
||||
@Id BIGINT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoConfigView]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,14 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_ReadByIdentifier]
|
||||
@Identifier NVARCHAR(50)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT TOP 1
|
||||
SSO.*
|
||||
FROM
|
||||
[dbo].[SsoConfigView] SSO
|
||||
INNER JOIN
|
||||
[dbo].[Organization] O ON O.[Id] = SSO.[OrganizationId]
|
||||
AND O.[Identifier] = @Identifier
|
||||
END
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_ReadByOrganizationId]
|
||||
@OrganizationId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT TOP 1
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoConfigView]
|
||||
WHERE
|
||||
[OrganizationId] = @OrganizationId
|
||||
END
|
@ -1,14 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_ReadManyByNotBeforeRevisionDate]
|
||||
@NotBefore DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoConfigView]
|
||||
WHERE
|
||||
[Enabled] = 1
|
||||
AND [RevisionDate] >= COALESCE(@NotBefore, [RevisionDate]);
|
||||
END
|
@ -1,22 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoConfig_Update]
|
||||
@Id BIGINT,
|
||||
@Enabled BIT,
|
||||
@OrganizationId UNIQUEIDENTIFIER,
|
||||
@Data NVARCHAR(MAX),
|
||||
@CreationDate DATETIME2(7),
|
||||
@RevisionDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
UPDATE
|
||||
[dbo].[SsoConfig]
|
||||
SET
|
||||
[Enabled] = @Enabled,
|
||||
[OrganizationId] = @OrganizationId,
|
||||
[Data] = @Data,
|
||||
[CreationDate] = @CreationDate,
|
||||
[RevisionDate] = @RevisionDate
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,27 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_Create]
|
||||
@Id BIGINT OUTPUT,
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@OrganizationId UNIQUEIDENTIFIER,
|
||||
@ExternalId NVARCHAR(50),
|
||||
@CreationDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
INSERT INTO [dbo].[SsoUser]
|
||||
(
|
||||
[UserId],
|
||||
[OrganizationId],
|
||||
[ExternalId],
|
||||
[CreationDate]
|
||||
)
|
||||
VALUES
|
||||
(
|
||||
@UserId,
|
||||
@OrganizationId,
|
||||
@ExternalId,
|
||||
@CreationDate
|
||||
)
|
||||
|
||||
SET @Id = SCOPE_IDENTITY();
|
||||
END
|
@ -1,14 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_Delete]
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@OrganizationId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[SsoUser]
|
||||
WHERE
|
||||
[UserId] = @UserId
|
||||
AND [OrganizationId] = @OrganizationId
|
||||
END
|
@ -1,12 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_DeleteById]
|
||||
@Id BIGINT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DELETE
|
||||
FROM
|
||||
[dbo].[SsoUser]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,34 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_DeleteMany]
|
||||
@UserAndOrganizationIds [dbo].[TwoGuidIdArray] READONLY
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
Id
|
||||
INTO
|
||||
#SSOIds
|
||||
FROM
|
||||
[dbo].[SsoUser] SU
|
||||
INNER JOIN
|
||||
@UserAndOrganizationIds UOI ON UOI.Id1 = SU.UserId AND UOI.Id2 = SU.OrganizationId
|
||||
|
||||
DECLARE @BatchSize INT = 100
|
||||
|
||||
-- Delete SSO Users
|
||||
WHILE @BatchSize > 0
|
||||
BEGIN
|
||||
BEGIN TRANSACTION SsoUser_DeleteMany_SsoUsers
|
||||
|
||||
DELETE TOP(@BatchSize) SU
|
||||
FROM
|
||||
[dbo].[SsoUser] SU
|
||||
INNER JOIN
|
||||
#SSOIds ON #SSOIds.Id = SU.Id
|
||||
|
||||
SET @BatchSize = @@ROWCOUNT
|
||||
|
||||
COMMIT TRANSACTION SsoUser_DeleteMany_SsoUsers
|
||||
END
|
||||
END
|
||||
GO
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_ReadById]
|
||||
@Id BIGINT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoUserView]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,15 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_ReadByUserIdOrganizationId]
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@OrganizationId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoUserView]
|
||||
WHERE
|
||||
[UserId] = @UserId
|
||||
AND [OrganizationId] = @OrganizationId
|
||||
END
|
@ -1,20 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[SsoUser_Update]
|
||||
@Id BIGINT OUTPUT,
|
||||
@UserId UNIQUEIDENTIFIER,
|
||||
@OrganizationId UNIQUEIDENTIFIER,
|
||||
@ExternalId NVARCHAR(50),
|
||||
@CreationDate DATETIME2(7)
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
UPDATE
|
||||
[dbo].[SsoUser]
|
||||
SET
|
||||
[UserId] = @UserId,
|
||||
[OrganizationId] = @OrganizationId,
|
||||
[ExternalId] = @ExternalId,
|
||||
[CreationDate] = @CreationDate
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -1,18 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[User_BumpAccountRevisionDateByEmergencyAccessGranteeId]
|
||||
@EmergencyAccessId UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
UPDATE
|
||||
U
|
||||
SET
|
||||
U.[AccountRevisionDate] = GETUTCDATE()
|
||||
FROM
|
||||
[dbo].[User] U
|
||||
INNER JOIN
|
||||
[dbo].[EmergencyAccess] EA ON EA.[GranteeId] = U.[Id]
|
||||
WHERE
|
||||
EA.[Id] = @EmergencyAccessId
|
||||
AND EA.[Status] = 2 -- Confirmed
|
||||
END
|
@ -1,23 +0,0 @@
|
||||
CREATE TABLE [dbo].[AuthRequest] (
|
||||
[Id] UNIQUEIDENTIFIER NOT NULL,
|
||||
[UserId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[Type] SMALLINT NOT NULL,
|
||||
[RequestDeviceIdentifier] NVARCHAR(50) NOT NULL,
|
||||
[RequestDeviceType] SMALLINT NOT NULL,
|
||||
[RequestIpAddress] VARCHAR(50) NOT NULL,
|
||||
[ResponseDeviceId] UNIQUEIDENTIFIER NULL,
|
||||
[AccessCode] VARCHAR(25) NOT NULL,
|
||||
[PublicKey] VARCHAR(MAX) NOT NULL,
|
||||
[Key] VARCHAR(MAX) NULL,
|
||||
[MasterPasswordHash] VARCHAR(MAX) NULL,
|
||||
[Approved] BIT NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[ResponseDate] DATETIME2 (7) NULL,
|
||||
[AuthenticationDate] DATETIME2 (7) NULL,
|
||||
CONSTRAINT [PK_AuthRequest] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_AuthRequest_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id]),
|
||||
CONSTRAINT [FK_AuthRequest_ResponseDevice] FOREIGN KEY ([ResponseDeviceId]) REFERENCES [dbo].[Device] ([Id])
|
||||
);
|
||||
|
||||
|
||||
GO
|
@ -1,18 +0,0 @@
|
||||
CREATE TABLE [dbo].[EmergencyAccess]
|
||||
(
|
||||
[Id] UNIQUEIDENTIFIER NOT NULL,
|
||||
[GrantorId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[GranteeId] UNIQUEIDENTIFIER NULL,
|
||||
[Email] NVARCHAR (256) NULL,
|
||||
[KeyEncrypted] VARCHAR (MAX) NULL,
|
||||
[WaitTimeDays] SMALLINT NULL,
|
||||
[Type] TINYINT NOT NULL,
|
||||
[Status] TINYINT NOT NULL,
|
||||
[RecoveryInitiatedDate] DATETIME2 (7) NULL,
|
||||
[LastNotificationDate] DATETIME2 (7) NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[RevisionDate] DATETIME2 (7) NOT NULL,
|
||||
CONSTRAINT [PK_EmergencyAccess] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_EmergencyAccess_GrantorId] FOREIGN KEY ([GrantorId]) REFERENCES [dbo].[User] ([Id]),
|
||||
CONSTRAINT [FK_EmergencyAccess_GranteeId] FOREIGN KEY ([GranteeId]) REFERENCES [dbo].[User] ([Id])
|
||||
)
|
@ -1,27 +0,0 @@
|
||||
CREATE TABLE [dbo].[Grant] (
|
||||
[Key] NVARCHAR (200) NOT NULL,
|
||||
[Type] NVARCHAR (50) NOT NULL,
|
||||
[SubjectId] NVARCHAR (200) NULL,
|
||||
[SessionId] NVARCHAR (100) NULL,
|
||||
[ClientId] NVARCHAR (200) NOT NULL,
|
||||
[Description] NVARCHAR (200) NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[ExpirationDate] DATETIME2 (7) NULL,
|
||||
[ConsumedDate] DATETIME2 (7) NULL,
|
||||
[Data] NVARCHAR (MAX) NOT NULL,
|
||||
CONSTRAINT [PK_Grant] PRIMARY KEY CLUSTERED ([Key] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
CREATE NONCLUSTERED INDEX [IX_Grant_SubjectId_ClientId_Type]
|
||||
ON [dbo].[Grant]([SubjectId] ASC, [ClientId] ASC, [Type] ASC);
|
||||
|
||||
GO
|
||||
CREATE NONCLUSTERED INDEX [IX_Grant_SubjectId_SessionId_Type]
|
||||
ON [dbo].[Grant]([SubjectId] ASC, [SessionId] ASC, [Type] ASC);
|
||||
|
||||
GO
|
||||
CREATE NONCLUSTERED INDEX [IX_Grant_ExpirationDate]
|
||||
ON [dbo].[Grant]([ExpirationDate] ASC);
|
||||
|
@ -1,10 +0,0 @@
|
||||
CREATE TABLE [dbo].[SsoConfig] (
|
||||
[Id] BIGINT IDENTITY (1, 1) NOT NULL,
|
||||
[Enabled] BIT NOT NULL,
|
||||
[OrganizationId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[Data] NVARCHAR (MAX) NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[RevisionDate] DATETIME2 (7) NOT NULL,
|
||||
CONSTRAINT [PK_SsoConfig] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_SsoConfig_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id])
|
||||
);
|
@ -1,22 +0,0 @@
|
||||
CREATE TABLE [dbo].[SsoUser] (
|
||||
[Id] BIGINT IDENTITY (1, 1) NOT NULL,
|
||||
[UserId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[OrganizationId] UNIQUEIDENTIFIER NULL,
|
||||
[ExternalId] NVARCHAR(50) NOT NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
CONSTRAINT [PK_SsoUser] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_SsoUser_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_SsoUser_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id])
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
CREATE UNIQUE NONCLUSTERED INDEX [IX_SsoUser_OrganizationIdExternalId]
|
||||
ON [dbo].[SsoUser]([OrganizationId] ASC, [ExternalId] ASC)
|
||||
INCLUDE ([UserId]);
|
||||
|
||||
GO
|
||||
CREATE UNIQUE NONCLUSTERED INDEX [IX_SsoUser_OrganizationIdUserId]
|
||||
ON [dbo].[SsoUser]([OrganizationId] ASC, [UserId] ASC);
|
||||
|
||||
|
@ -1,6 +0,0 @@
|
||||
CREATE VIEW [dbo].[AuthRequestView]
|
||||
AS
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[AuthRequest]
|
@ -1,16 +0,0 @@
|
||||
CREATE VIEW [dbo].[EmergencyAccessDetailsView]
|
||||
AS
|
||||
SELECT
|
||||
EA.*,
|
||||
GranteeU.[Name] GranteeName,
|
||||
ISNULL(GranteeU.[Email], EA.[Email]) GranteeEmail,
|
||||
GranteeU.[AvatarColor] GranteeAvatarColor,
|
||||
GrantorU.[Name] GrantorName,
|
||||
GrantorU.[Email] GrantorEmail,
|
||||
GrantorU.[AvatarColor] GrantorAvatarColor
|
||||
FROM
|
||||
[dbo].[EmergencyAccess] EA
|
||||
LEFT JOIN
|
||||
[dbo].[User] GranteeU ON GranteeU.[Id] = EA.[GranteeId]
|
||||
LEFT JOIN
|
||||
[dbo].[User] GrantorU ON GrantorU.[Id] = EA.[GrantorId]
|
@ -1,6 +0,0 @@
|
||||
CREATE VIEW [dbo].[GrantView]
|
||||
AS
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[Grant]
|
@ -1,6 +0,0 @@
|
||||
CREATE VIEW [dbo].[SsoConfigView]
|
||||
AS
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoConfig]
|
@ -1,6 +0,0 @@
|
||||
CREATE VIEW [dbo].[SsoUserView]
|
||||
AS
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[SsoUser]
|
Reference in New Issue
Block a user