From aad4a8e696160b98084a0791177404b8b7ce7c22 Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Fri, 6 Jun 2025 17:43:46 +0200 Subject: [PATCH 1/3] Remove string length limit --- src/Core/KeyManagement/Entities/UserSignatureKeyPair.cs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/Core/KeyManagement/Entities/UserSignatureKeyPair.cs b/src/Core/KeyManagement/Entities/UserSignatureKeyPair.cs index fcac83a1bc..c2b2c1c538 100644 --- a/src/Core/KeyManagement/Entities/UserSignatureKeyPair.cs +++ b/src/Core/KeyManagement/Entities/UserSignatureKeyPair.cs @@ -1,5 +1,4 @@ -using System.ComponentModel.DataAnnotations; -using Bit.Core.Entities; +using Bit.Core.Entities; using Bit.Core.KeyManagement.Enums; using Bit.Core.Utilities; @@ -13,9 +12,7 @@ public class UserSignatureKeyPair : ITableObject, IRevisable public Guid UserId { get; set; } public SignatureAlgorithm SignatureAlgorithm { get; set; } - [MaxLength(500)] required public string VerifyingKey { get; set; } - [MaxLength(500)] required public string SigningKey { get; set; } public DateTime CreationDate { get; set; } = DateTime.UtcNow; From d699c0115ad73fa4f0a2ebe7e2ae4ab12f8a576d Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Fri, 6 Jun 2025 18:00:51 +0200 Subject: [PATCH 2/3] Regenerate EF migrations --- .../DatabaseContextModelSnapshot.cs | 6 +-- .../DatabaseContextModelSnapshot.cs | 6 +-- util/Setup/Program.cs | 37 ++++++++++--------- .../DatabaseContextModelSnapshot.cs | 2 - 4 files changed, 23 insertions(+), 28 deletions(-) diff --git a/util/MySqlMigrations/Migrations/DatabaseContextModelSnapshot.cs b/util/MySqlMigrations/Migrations/DatabaseContextModelSnapshot.cs index 238ca3ab86..d1a0c8d98f 100644 --- a/util/MySqlMigrations/Migrations/DatabaseContextModelSnapshot.cs +++ b/util/MySqlMigrations/Migrations/DatabaseContextModelSnapshot.cs @@ -1752,16 +1752,14 @@ namespace Bit.MySqlMigrations.Migrations b.Property("SigningKey") .IsRequired() - .HasMaxLength(500) - .HasColumnType("varchar(500)"); + .HasColumnType("longtext"); b.Property("UserId") .HasColumnType("char(36)"); b.Property("VerifyingKey") .IsRequired() - .HasMaxLength(500) - .HasColumnType("varchar(500)"); + .HasColumnType("longtext"); b.HasKey("Id"); diff --git a/util/PostgresMigrations/Migrations/DatabaseContextModelSnapshot.cs b/util/PostgresMigrations/Migrations/DatabaseContextModelSnapshot.cs index 69cb237766..c0850cea68 100644 --- a/util/PostgresMigrations/Migrations/DatabaseContextModelSnapshot.cs +++ b/util/PostgresMigrations/Migrations/DatabaseContextModelSnapshot.cs @@ -1758,16 +1758,14 @@ namespace Bit.PostgresMigrations.Migrations b.Property("SigningKey") .IsRequired() - .HasMaxLength(500) - .HasColumnType("character varying(500)"); + .HasColumnType("text"); b.Property("UserId") .HasColumnType("uuid"); b.Property("VerifyingKey") .IsRequired() - .HasMaxLength(500) - .HasColumnType("character varying(500)"); + .HasColumnType("text"); b.HasKey("Id"); diff --git a/util/Setup/Program.cs b/util/Setup/Program.cs index 921c32f5e6..50f3046d6d 100644 --- a/util/Setup/Program.cs +++ b/util/Setup/Program.cs @@ -20,29 +20,30 @@ public class Program ParseParameters(); - if (_context.Parameters.TryGetValue("q", out var q)) + if (_context.Parameters.ContainsKey("q")) { - _context.Quiet = q == "true" || q == "1"; + _context.Quiet = _context.Parameters["q"] == "true" || _context.Parameters["q"] == "1"; } - if (_context.Parameters.TryGetValue("os", out var os)) + if (_context.Parameters.ContainsKey("os")) { - _context.HostOS = os; + _context.HostOS = _context.Parameters["os"]; } - if (_context.Parameters.TryGetValue("corev", out var coreVersion)) + if (_context.Parameters.ContainsKey("corev")) { - _context.CoreVersion = coreVersion; + _context.CoreVersion = _context.Parameters["corev"]; } - if (_context.Parameters.TryGetValue("webv", out var webVersion)) + if (_context.Parameters.ContainsKey("webv")) { - _context.WebVersion = webVersion; + _context.WebVersion = _context.Parameters["webv"]; } - if (_context.Parameters.TryGetValue("keyconnectorv", out var keyConnectorVersion)) + if (_context.Parameters.ContainsKey("keyconnectorv")) { - _context.KeyConnectorVersion = keyConnectorVersion; + _context.KeyConnectorVersion = _context.Parameters["keyconnectorv"]; } - if (_context.Parameters.TryGetValue("stub", out var stub)) + if (_context.Parameters.ContainsKey("stub")) { - _context.Stub = stub == "true" || stub == "1"; + _context.Stub = _context.Parameters["stub"] == "true" || + _context.Parameters["stub"] == "1"; } Helpers.WriteLine(_context); @@ -67,18 +68,18 @@ public class Program private static void Install() { - if (_context.Parameters.TryGetValue("letsencrypt", out var sslManagedLetsEncrypt)) + if (_context.Parameters.ContainsKey("letsencrypt")) { _context.Config.SslManagedLetsEncrypt = - sslManagedLetsEncrypt.ToLowerInvariant() == "y"; + _context.Parameters["letsencrypt"].ToLowerInvariant() == "y"; } - if (_context.Parameters.TryGetValue("domain", out var domain)) + if (_context.Parameters.ContainsKey("domain")) { - _context.Install.Domain = domain.ToLowerInvariant(); + _context.Install.Domain = _context.Parameters["domain"].ToLowerInvariant(); } - if (_context.Parameters.TryGetValue("dbname", out var database)) + if (_context.Parameters.ContainsKey("dbname")) { - _context.Install.Database = database; + _context.Install.Database = _context.Parameters["dbname"]; } if (_context.Stub) diff --git a/util/SqliteMigrations/Migrations/DatabaseContextModelSnapshot.cs b/util/SqliteMigrations/Migrations/DatabaseContextModelSnapshot.cs index ae3d7a0d47..dbfb180002 100644 --- a/util/SqliteMigrations/Migrations/DatabaseContextModelSnapshot.cs +++ b/util/SqliteMigrations/Migrations/DatabaseContextModelSnapshot.cs @@ -1741,7 +1741,6 @@ namespace Bit.SqliteMigrations.Migrations b.Property("SigningKey") .IsRequired() - .HasMaxLength(500) .HasColumnType("TEXT"); b.Property("UserId") @@ -1749,7 +1748,6 @@ namespace Bit.SqliteMigrations.Migrations b.Property("VerifyingKey") .IsRequired() - .HasMaxLength(500) .HasColumnType("TEXT"); b.HasKey("Id"); From baba8290054b3a9b99040b8c2bd882092a4821cc Mon Sep 17 00:00:00 2001 From: Bernd Schoolmann Date: Fri, 6 Jun 2025 18:03:31 +0200 Subject: [PATCH 3/3] Undo changes to program.cs --- util/Setup/Program.cs | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/util/Setup/Program.cs b/util/Setup/Program.cs index 50f3046d6d..921c32f5e6 100644 --- a/util/Setup/Program.cs +++ b/util/Setup/Program.cs @@ -20,30 +20,29 @@ public class Program ParseParameters(); - if (_context.Parameters.ContainsKey("q")) + if (_context.Parameters.TryGetValue("q", out var q)) { - _context.Quiet = _context.Parameters["q"] == "true" || _context.Parameters["q"] == "1"; + _context.Quiet = q == "true" || q == "1"; } - if (_context.Parameters.ContainsKey("os")) + if (_context.Parameters.TryGetValue("os", out var os)) { - _context.HostOS = _context.Parameters["os"]; + _context.HostOS = os; } - if (_context.Parameters.ContainsKey("corev")) + if (_context.Parameters.TryGetValue("corev", out var coreVersion)) { - _context.CoreVersion = _context.Parameters["corev"]; + _context.CoreVersion = coreVersion; } - if (_context.Parameters.ContainsKey("webv")) + if (_context.Parameters.TryGetValue("webv", out var webVersion)) { - _context.WebVersion = _context.Parameters["webv"]; + _context.WebVersion = webVersion; } - if (_context.Parameters.ContainsKey("keyconnectorv")) + if (_context.Parameters.TryGetValue("keyconnectorv", out var keyConnectorVersion)) { - _context.KeyConnectorVersion = _context.Parameters["keyconnectorv"]; + _context.KeyConnectorVersion = keyConnectorVersion; } - if (_context.Parameters.ContainsKey("stub")) + if (_context.Parameters.TryGetValue("stub", out var stub)) { - _context.Stub = _context.Parameters["stub"] == "true" || - _context.Parameters["stub"] == "1"; + _context.Stub = stub == "true" || stub == "1"; } Helpers.WriteLine(_context); @@ -68,18 +67,18 @@ public class Program private static void Install() { - if (_context.Parameters.ContainsKey("letsencrypt")) + if (_context.Parameters.TryGetValue("letsencrypt", out var sslManagedLetsEncrypt)) { _context.Config.SslManagedLetsEncrypt = - _context.Parameters["letsencrypt"].ToLowerInvariant() == "y"; + sslManagedLetsEncrypt.ToLowerInvariant() == "y"; } - if (_context.Parameters.ContainsKey("domain")) + if (_context.Parameters.TryGetValue("domain", out var domain)) { - _context.Install.Domain = _context.Parameters["domain"].ToLowerInvariant(); + _context.Install.Domain = domain.ToLowerInvariant(); } - if (_context.Parameters.ContainsKey("dbname")) + if (_context.Parameters.TryGetValue("dbname", out var database)) { - _context.Install.Database = _context.Parameters["dbname"]; + _context.Install.Database = database; } if (_context.Stub)