0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2024-12-16 20:26:19 -05:00
logto/packages/schemas/tables/users.sql

33 lines
1 KiB
MySQL
Raw Normal View History

2023-01-19 07:27:01 -05:00
/* init_order = 1 */
create type users_password_encryption_method as enum ('Argon2i');
2021-07-03 06:13:05 -05:00
2021-07-02 08:09:08 -05:00
create table users (
2023-01-19 07:27:01 -05:00
tenant_id varchar(21) not null
references tenants (id) on update cascade on delete cascade,
id varchar(12) not null,
2021-07-04 04:38:37 -05:00
username varchar(128) unique,
2021-07-02 08:09:08 -05:00
primary_email varchar(128) unique,
primary_phone varchar(128) unique,
password_encrypted varchar(128),
password_encryption_method users_password_encryption_method,
name varchar(128),
avatar varchar(2048),
application_id varchar(21),
2022-02-08 23:55:06 -05:00
identities jsonb /* @use Identities */ not null default '{}'::jsonb,
custom_data jsonb /* @use ArbitraryObject */ not null default '{}'::jsonb,
is_suspended boolean not null default false,
last_sign_in_at timestamptz,
created_at timestamptz not null default (now()),
2021-07-02 08:09:08 -05:00
primary key (id)
);
2023-01-19 07:27:01 -05:00
create index users__id
on users (tenant_id, id);
create index users__name
on users (tenant_id, name);
create trigger set_tenant_id before insert on users
for each row execute procedure set_tenant_id();