github.com/icyphox/x@v0.0.355-0.20220311094250-029bd783e8b8/popx/stub/migrations/legacy/20200519101057_create_recovery_addresses.sqlite3.up.sql (about)

     1  CREATE TABLE "identity_recovery_addresses" (
     2  "id" TEXT PRIMARY KEY,
     3  "via" TEXT NOT NULL,
     4  "value" TEXT NOT NULL,
     5  "identity_id" char(36) NOT NULL,
     6  "created_at" DATETIME NOT NULL,
     7  "updated_at" DATETIME NOT NULL,
     8  FOREIGN KEY (identity_id) REFERENCES identities (id) ON DELETE cascade
     9  );
    10  CREATE UNIQUE INDEX "identity_recovery_addresses_status_via_uq_idx" ON "identity_recovery_addresses" (via, value);
    11  CREATE INDEX "identity_recovery_addresses_status_via_idx" ON "identity_recovery_addresses" (via, value);
    12  CREATE TABLE "selfservice_recovery_requests" (
    13  "id" TEXT PRIMARY KEY,
    14  "request_url" TEXT NOT NULL,
    15  "issued_at" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    16  "expires_at" DATETIME NOT NULL,
    17  "messages" TEXT,
    18  "active_method" TEXT,
    19  "csrf_token" TEXT NOT NULL,
    20  "state" TEXT NOT NULL,
    21  "recovered_identity_id" char(36),
    22  "created_at" DATETIME NOT NULL,
    23  "updated_at" DATETIME NOT NULL,
    24  FOREIGN KEY (recovered_identity_id) REFERENCES identities (id) ON DELETE cascade
    25  );
    26  CREATE TABLE "selfservice_recovery_request_methods" (
    27  "id" TEXT PRIMARY KEY,
    28  "method" TEXT NOT NULL,
    29  "config" TEXT NOT NULL,
    30  "selfservice_recovery_request_id" char(36) NOT NULL,
    31  "created_at" DATETIME NOT NULL,
    32  "updated_at" DATETIME NOT NULL,
    33  FOREIGN KEY (selfservice_recovery_request_id) REFERENCES selfservice_recovery_requests (id) ON DELETE cascade
    34  );
    35  CREATE TABLE "identity_recovery_tokens" (
    36  "id" TEXT PRIMARY KEY,
    37  "token" TEXT NOT NULL,
    38  "used" bool NOT NULL DEFAULT 'false',
    39  "used_at" DATETIME,
    40  "identity_recovery_address_id" char(36) NOT NULL,
    41  "selfservice_recovery_request_id" char(36) NOT NULL,
    42  "created_at" DATETIME NOT NULL,
    43  "updated_at" DATETIME NOT NULL,
    44  FOREIGN KEY (identity_recovery_address_id) REFERENCES identity_recovery_addresses (id) ON DELETE cascade,
    45  FOREIGN KEY (selfservice_recovery_request_id) REFERENCES selfservice_recovery_requests (id) ON DELETE cascade
    46  );
    47  CREATE UNIQUE INDEX "identity_recovery_addresses_code_uq_idx" ON "identity_recovery_tokens" (token);
    48  CREATE INDEX "identity_recovery_addresses_code_idx" ON "identity_recovery_tokens" (token);