43 lines
1.5 KiB
SQL
43 lines
1.5 KiB
SQL
DROP TABLE machine_fingerprints;
|
|
|
|
CREATE TABLE machine_fingerprints (
|
|
id VARCHAR(64) PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
user_id VARCHAR(64) NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
|
fingerprint VARCHAR(20000) NOT NULL,
|
|
when_taken VARCHAR NOT NULL,
|
|
print_type VARCHAR NOT NULL,
|
|
remote_ip VARCHAR(1000) NOT NULL,
|
|
jam_track_right_id BIGINT REFERENCES jam_track_rights(id) ON DELETE SET NULL,
|
|
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE machine_extras (
|
|
id VARCHAR(64) PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
machine_fingerprint_id VARCHAR(64) NOT NULL REFERENCES machine_fingerprints(id) ON DELETE CASCADE,
|
|
mac_address VARCHAR(100),
|
|
mac_name VARCHAR(255),
|
|
upstate BOOLEAN,
|
|
ipaddr_0 VARCHAR(200),
|
|
ipaddr_1 VARCHAR(200),
|
|
ipaddr_2 VARCHAR(200),
|
|
ipaddr_3 VARCHAR(200),
|
|
ipaddr_4 VARCHAR(200),
|
|
ipaddr_5 VARCHAR(200),
|
|
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE fraud_alerts (
|
|
id VARCHAR(64) PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
machine_fingerprint_id VARCHAR(64) NOT NULL REFERENCES machine_fingerprints(id) ON DELETE CASCADE,
|
|
user_id VARCHAR(64) NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
|
resolved BOOLEAN NOT NULL DEFAULT FALSE,
|
|
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE fingerprint_whitelists (
|
|
id VARCHAR(64) PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
fingerprint VARCHAR(20000) UNIQUE NOT NULL
|
|
);
|
|
|
|
CREATE INDEX machine_fingerprints_index1 ON machine_fingerprints USING btree (fingerprint, user_id, remote_ip, created_at);
|