From 848e94ad561325b023d4cbe2ff066188aeccaee9 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Wed, 3 May 2017 10:12:13 -0400 Subject: [PATCH] restore new change pass and email apis --- src/Api/Controllers/AccountsController.cs | 47 ++++--------------- .../Api/Request/Accounts/EmailRequestModel.cs | 19 -------- .../Request/Accounts/PasswordRequestModel.cs | 13 ----- .../Models/Api/Request/CipherRequestModel.cs | 11 ----- 4 files changed, 8 insertions(+), 82 deletions(-) diff --git a/src/Api/Controllers/AccountsController.cs b/src/Api/Controllers/AccountsController.cs index d756e92531..f3f1c8ea5b 100644 --- a/src/Api/Controllers/AccountsController.cs +++ b/src/Api/Controllers/AccountsController.cs @@ -10,7 +10,6 @@ using Bit.Core.Models.Table; using Bit.Core.Enums; using System.Linq; using Bit.Core.Repositories; -using System.Collections; namespace Bit.Api.Controllers { @@ -76,32 +75,16 @@ namespace Bit.Api.Controllers [HttpPut("email")] [HttpPost("email")] - public async Task PutEmail([FromBody]EmailRequestModel_Old model) + public async Task PutEmail([FromBody]EmailRequestModel model) { var user = await _userService.GetUserByPrincipalAsync(User); // NOTE: It is assumed that the eventual repository call will make sure the updated // ciphers belong to user making this call. Therefore, no check is done here. - //var ciphers = model.Data.Ciphers.Select(c => c.ToCipher(user.Id)); - //var folders = model.Data.Folders.Select(c => c.ToFolder(user.Id)); + var ciphers = model.Data.Ciphers.Select(c => c.ToCipher(user.Id)); + var folders = model.Data.Folders.Select(c => c.ToFolder(user.Id)); - //var result = await _userService.ChangeEmailAsync( - // user, - // model.MasterPasswordHash, - // model.NewEmail, - // model.NewMasterPasswordHash, - // model.Token, - // ciphers, - // folders, - // model.Data.PrivateKey); - - // - // NOTE: Temporary backwards compat. Remove the below and uncomment the above whenever web vault v1.10.0 is released - // - - var ciphers = model.Ciphers.Where(c => c.Type == CipherType.Login).Select(c => c.ToCipher(user.Id)); - var folders = model.Ciphers.Where(c => c.Type == CipherType.Folder).Select(c => c.ToFolder(user.Id)); var result = await _userService.ChangeEmailAsync( user, model.MasterPasswordHash, @@ -110,7 +93,7 @@ namespace Bit.Api.Controllers model.Token, ciphers, folders, - null); + model.Data.PrivateKey); if(result.Succeeded) { @@ -128,37 +111,23 @@ namespace Bit.Api.Controllers [HttpPut("password")] [HttpPost("password")] - public async Task PutPassword([FromBody]PasswordRequestModel_Old model) + public async Task PutPassword([FromBody]PasswordRequestModel model) { var user = await _userService.GetUserByPrincipalAsync(User); // NOTE: It is assumed that the eventual repository call will make sure the updated // ciphers belong to user making this call. Therefore, no check is done here. - //var ciphers = model.Data.Ciphers.Select(c => c.ToCipher(user.Id)); - //var folders = model.Data.Folders.Select(c => c.ToFolder(user.Id)); + var ciphers = model.Data.Ciphers.Select(c => c.ToCipher(user.Id)); + var folders = model.Data.Folders.Select(c => c.ToFolder(user.Id)); - //var result = await _userService.ChangePasswordAsync( - // user, - // model.MasterPasswordHash, - // model.NewMasterPasswordHash, - // ciphers, - // folders, - // model.Data.PrivateKey); - - // - // NOTE: Temporary backwards compat. Remove the below and uncomment the above whenever web vault v1.10.0 is released - // - - var ciphers = model.Ciphers.Where(c => c.Type == CipherType.Login).Select(c => c.ToCipher(user.Id)); - var folders = model.Ciphers.Where(c => c.Type == CipherType.Folder).Select(c => c.ToFolder(user.Id)); var result = await _userService.ChangePasswordAsync( user, model.MasterPasswordHash, model.NewMasterPasswordHash, ciphers, folders, - null); + model.Data.PrivateKey); if(result.Succeeded) { diff --git a/src/Core/Models/Api/Request/Accounts/EmailRequestModel.cs b/src/Core/Models/Api/Request/Accounts/EmailRequestModel.cs index 677db91d69..3ce45d1ca4 100644 --- a/src/Core/Models/Api/Request/Accounts/EmailRequestModel.cs +++ b/src/Core/Models/Api/Request/Accounts/EmailRequestModel.cs @@ -20,23 +20,4 @@ namespace Bit.Core.Models.Api [Required] public DataReloadRequestModel Data { get; set; } } - - [Obsolete] - public class EmailRequestModel_Old - { - [Required] - [EmailAddress] - [StringLength(50)] - public string NewEmail { get; set; } - [Required] - [StringLength(300)] - public string MasterPasswordHash { get; set; } - [Required] - [StringLength(300)] - public string NewMasterPasswordHash { get; set; } - [Required] - public string Token { get; set; } - [Required] - public CipherRequestModel[] Ciphers { get; set; } - } } diff --git a/src/Core/Models/Api/Request/Accounts/PasswordRequestModel.cs b/src/Core/Models/Api/Request/Accounts/PasswordRequestModel.cs index a9dc2a59c9..2dc48786c4 100644 --- a/src/Core/Models/Api/Request/Accounts/PasswordRequestModel.cs +++ b/src/Core/Models/Api/Request/Accounts/PasswordRequestModel.cs @@ -14,17 +14,4 @@ namespace Bit.Core.Models.Api [Required] public DataReloadRequestModel Data { get; set; } } - - [Obsolete] - public class PasswordRequestModel_Old - { - [Required] - [StringLength(300)] - public string MasterPasswordHash { get; set; } - [Required] - [StringLength(300)] - public string NewMasterPasswordHash { get; set; } - [Required] - public CipherRequestModel[] Ciphers { get; set; } - } } diff --git a/src/Core/Models/Api/Request/CipherRequestModel.cs b/src/Core/Models/Api/Request/CipherRequestModel.cs index 9e258ac553..5e7ee966d6 100644 --- a/src/Core/Models/Api/Request/CipherRequestModel.cs +++ b/src/Core/Models/Api/Request/CipherRequestModel.cs @@ -59,17 +59,6 @@ namespace Bit.Core.Models.Api return existingCipher; } - - [Obsolete] - public Folder ToFolder(Guid userId) - { - return new Folder - { - Id = new Guid(Id), - UserId = userId, - Name = Name - }; - } } public class CipherShareRequestModel : IValidatableObject