Browse Source

override charset on duo state column to ascii for mysql

pull/4637/head
0x0fbc 10 months ago
parent
commit
8092bb37b9
  1. 5
      migrations/mysql/2024-06-05-131359_add_2fa_duo_store/up.sql

5
migrations/mysql/2024-06-05-131359_add_2fa_duo_store/up.sql

@ -1,5 +1,8 @@
CREATE TABLE twofactor_duo_ctx ( CREATE TABLE twofactor_duo_ctx (
state VARCHAR(1024) NOT NULL, -- For mysql, the character set on state is overridden to ascii because the utf8mb4 database charset recommended in
-- the Vaultwarden docs causes 1 character to consume 4 bytes, exceeding innodb's 3072 max key size if we want to
-- accommodate the largest supported state size. This isn't a problem for nonce since it's not a key for the table.
state VARCHAR(1024) CHARACTER SET ascii COLLATE ascii_general_ci NOT NULL,
user_email VARCHAR(255) NOT NULL, user_email VARCHAR(255) NOT NULL,
nonce VARCHAR(1024) NOT NULL, nonce VARCHAR(1024) NOT NULL,
exp BIGINT NOT NULL, exp BIGINT NOT NULL,

Loading…
Cancel
Save