Browse Source

added user email verification bit

pull/8/head
Kyle Spearrin 10 years ago
parent
commit
f3e3474746
  1. 1
      src/Core/Domains/User.cs
  2. 1
      src/Core/Repositories/SqlServer/CipherRepository.cs
  3. 3
      src/Core/Repositories/SqlServer/Models/UserTableModel.cs
  4. 1
      src/Core/Services/UserService.cs
  5. 3
      src/Sql/dbo/Stored Procedures/User_Create.sql
  6. 2
      src/Sql/dbo/Stored Procedures/User_Update.sql
  7. 2
      src/Sql/dbo/Stored Procedures/User_UpdateEmailPassword.sql
  8. 3
      src/Sql/dbo/Tables/User.sql

1
src/Core/Domains/User.cs

@ -8,6 +8,7 @@ namespace Bit.Core.Domains @@ -8,6 +8,7 @@ namespace Bit.Core.Domains
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public bool EmailVerified { get; set; }
public string MasterPassword { get; set; }
public string MasterPasswordHint { get; set; }
public string Culture { get; set; } = "en-US";

1
src/Core/Repositories/SqlServer/CipherRepository.cs

@ -39,6 +39,7 @@ namespace Bit.Core.Repositories.SqlServer @@ -39,6 +39,7 @@ namespace Bit.Core.Repositories.SqlServer
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@Id", SqlDbType.UniqueIdentifier).Value = new Guid(user.Id);
cmd.Parameters.Add("@Email", SqlDbType.NVarChar).Value = user.Email;
cmd.Parameters.Add("@EmailVerified", SqlDbType.NVarChar).Value = user.EmailVerified;
cmd.Parameters.Add("@MasterPassword", SqlDbType.NVarChar).Value = user.MasterPassword;
cmd.Parameters.Add("@SecurityStamp", SqlDbType.NVarChar).Value = user.SecurityStamp;
cmd.Parameters.Add("@RevisionDate", SqlDbType.DateTime2).Value = user.RevisionDate;

3
src/Core/Repositories/SqlServer/Models/UserTableModel.cs

@ -13,6 +13,7 @@ namespace Bit.Core.Repositories.SqlServer.Models @@ -13,6 +13,7 @@ namespace Bit.Core.Repositories.SqlServer.Models
Id = new Guid(user.Id);
Name = user.Name;
Email = user.Email;
EmailVerified = user.EmailVerified;
MasterPassword = user.MasterPassword;
MasterPasswordHint = user.MasterPasswordHint;
Culture = user.Culture;
@ -27,6 +28,7 @@ namespace Bit.Core.Repositories.SqlServer.Models @@ -27,6 +28,7 @@ namespace Bit.Core.Repositories.SqlServer.Models
public Guid Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public bool EmailVerified { get; set; }
public string MasterPassword { get; set; }
public string MasterPasswordHint { get; set; }
public string Culture { get; set; }
@ -44,6 +46,7 @@ namespace Bit.Core.Repositories.SqlServer.Models @@ -44,6 +46,7 @@ namespace Bit.Core.Repositories.SqlServer.Models
Id = Id.ToString(),
Name = Name,
Email = Email,
EmailVerified = EmailVerified,
MasterPassword = MasterPassword,
MasterPasswordHint = MasterPasswordHint,
Culture = Culture,

1
src/Core/Services/UserService.cs

@ -140,6 +140,7 @@ namespace Bit.Core.Services @@ -140,6 +140,7 @@ namespace Bit.Core.Services
}
user.Email = newEmail;
user.EmailVerified = true;
await _cipherRepository.UpdateUserEmailPasswordAndCiphersAsync(user, ciphers);
return IdentityResult.Success;
}

3
src/Sql/dbo/Stored Procedures/User_Create.sql

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
@Id UNIQUEIDENTIFIER,
@Name NVARCHAR(50),
@Email NVARCHAR(50),
@EmailVerified BIT,
@MasterPassword NVARCHAR(300),
@MasterPasswordHint NVARCHAR(50),
@Culture NVARCHAR(10),
@ -18,6 +19,7 @@ BEGIN @@ -18,6 +19,7 @@ BEGIN
[Id],
[Name],
[Email],
[EmailVerified],
[MasterPassword],
[MasterPasswordHint],
[Culture],
@ -33,6 +35,7 @@ BEGIN @@ -33,6 +35,7 @@ BEGIN
@Id,
@Name,
@Email,
@EmailVerified,
@MasterPassword,
@MasterPasswordHint,
@Culture,

2
src/Sql/dbo/Stored Procedures/User_Update.sql

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
@Id UNIQUEIDENTIFIER,
@Name NVARCHAR(50),
@Email NVARCHAR(50),
@EmailVerified BIT,
@MasterPassword NVARCHAR(300),
@MasterPasswordHint NVARCHAR(50),
@Culture NVARCHAR(10),
@ -18,6 +19,7 @@ BEGIN @@ -18,6 +19,7 @@ BEGIN
SET
[Name] = @Name,
[Email] = @Email,
[EmailVerified] = @EmailVerified,
[MasterPassword] = @MasterPassword,
[MasterPasswordHint] = @MasterPasswordHint,
[Culture] = @Culture,

2
src/Sql/dbo/Stored Procedures/User_UpdateEmailPassword.sql

@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
CREATE PROCEDURE [dbo].[User_UpdateEmailPassword]
@Id UNIQUEIDENTIFIER,
@Email NVARCHAR(50),
@EmailVerified BIT,
@MasterPassword NVARCHAR(300),
@SecurityStamp NVARCHAR(50),
@RevisionDate DATETIME2(7)
@ -10,6 +11,7 @@ BEGIN @@ -10,6 +11,7 @@ BEGIN
[dbo].[User]
SET
[Email] = @Email,
[EmailVerified] = @EmailVerified,
[MasterPassword] = @MasterPassword,
[SecurityStamp] = @SecurityStamp,
[RevisionDate] = @RevisionDate

3
src/Sql/dbo/Tables/User.sql

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
[Id] UNIQUEIDENTIFIER NOT NULL,
[Name] NVARCHAR (50) NULL,
[Email] NVARCHAR (50) NOT NULL,
[EmailVerified] BIT NOT NULL,
[MasterPassword] NVARCHAR (300) NOT NULL,
[MasterPasswordHint] NVARCHAR (50) NULL,
[Culture] NVARCHAR (10) NOT NULL,
@ -16,6 +17,6 @@ @@ -16,6 +17,6 @@
GO
CREATE NONCLUSTERED INDEX [IX_User_Email]
CREATE UNIQUE NONCLUSTERED INDEX [IX_User_Email]
ON [dbo].[User]([Email] ASC);

Loading…
Cancel
Save