[SECARSP-111] +Auth API [SECARSP-115 +Get Devices]
[platform/core/security/suspicious-activity-monitor.git] / server / src / main / resources / config / liquibase / changelog / 00000000000000_initial_schema.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <databaseChangeLog
3         xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
4         xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
5         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6         xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.5.xsd
7                         http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">
8
9     <property name="now" value="now()" dbms="h2"/>
10     <property name="now" value="current_timestamp" dbms="postgresql"/>
11
12     <changeSet id="00000000000000" author="jhipster">
13         <createSequence sequenceName="hibernate_sequence" startValue="1000" incrementBy="50"/>
14     </changeSet>
15
16     <!--
17         JHipster core tables.
18         The initial schema has the '00000000000001' id, so that it is over-written if we re-generate it.
19     -->
20     <changeSet id="00000000000001" author="jhipster">
21         <createTable tableName="jhi_user">
22             <column name="id" type="bigint" autoIncrement="${autoIncrement}">
23                 <constraints primaryKey="true" nullable="false"/>
24             </column>
25             <column name="login" type="varchar(50)">
26                 <constraints unique="true" nullable="false" uniqueConstraintName="ux_user_login"/>
27             </column>
28             <column name="password_hash" type="varchar(60)"/>
29             <column name="first_name" type="varchar(50)"/>
30             <column name="last_name" type="varchar(50)"/>
31             <column name="email" type="varchar(100)">
32                 <constraints unique="true" nullable="true" uniqueConstraintName="ux_user_email"/>
33             </column>
34             <column name="image_url" type="varchar(256)"/>
35             <column name="activated" type="boolean" valueBoolean="false">
36                 <constraints nullable="false" />
37             </column>
38             <column name="lang_key" type="varchar(6)"/>
39             <column name="activation_key" type="varchar(20)"/>
40             <column name="reset_key" type="varchar(20)"/>
41             <column name="created_by" type="varchar(50)">
42                 <constraints nullable="false"/>
43             </column>
44             <column name="created_date" type="timestamp" defaultValueDate="${now}">
45                 <constraints nullable="false"/>
46             </column>
47             <column name="reset_date" type="timestamp">
48                 <constraints nullable="true"/>
49             </column>
50             <column name="last_modified_by" type="varchar(50)"/>
51             <column name="last_modified_date" type="timestamp"/>
52         </createTable>
53         <createIndex indexName="idx_user_login"
54                      tableName="jhi_user"
55                      unique="true">
56             <column name="login" type="varchar(50)"/>
57         </createIndex>
58
59         <createIndex indexName="idx_user_email"
60                      tableName="jhi_user"
61                      unique="true">
62             <column name="email" type="varchar(100)"/>
63         </createIndex>
64         <createTable tableName="jhi_authority">
65             <column name="name" type="varchar(50)">
66                 <constraints primaryKey="true" nullable="false"/>
67             </column>
68         </createTable>
69
70         <createTable tableName="jhi_user_authority">
71             <column name="user_id" type="bigint">
72                 <constraints nullable="false"/>
73             </column>
74             <column name="authority_name" type="varchar(50)">
75                 <constraints nullable="false"/>
76             </column>
77         </createTable>
78
79         <addPrimaryKey columnNames="user_id, authority_name" tableName="jhi_user_authority"/>
80
81         <addForeignKeyConstraint baseColumnNames="authority_name"
82                                  baseTableName="jhi_user_authority"
83                                  constraintName="fk_authority_name"
84                                  referencedColumnNames="name"
85                                  referencedTableName="jhi_authority"/>
86         <addForeignKeyConstraint baseColumnNames="user_id"
87                                  baseTableName="jhi_user_authority"
88                                  constraintName="fk_user_id"
89                                  referencedColumnNames="id"
90                                  referencedTableName="jhi_user"/>
91         <loadData encoding="UTF-8"
92                   file="config/liquibase/users.csv"
93                   separator=";"
94                   tableName="jhi_user">
95             <column name="activated" type="boolean"/>
96             <column name="created_date" type="timestamp"/>
97         </loadData>
98         <dropDefaultValue tableName="jhi_user" columnName="created_date" columnDataType="datetime"/>
99         <loadData encoding="UTF-8"
100                   file="config/liquibase/authorities.csv"
101                   separator=";"
102                   tableName="jhi_authority"/>
103
104         <loadData encoding="UTF-8"
105                   file="config/liquibase/users_authorities.csv"
106                   separator=";"
107                   tableName="jhi_user_authority"/>
108         <createTable tableName="jhi_persistent_audit_event">
109             <column name="event_id" type="bigint" autoIncrement="${autoIncrement}">
110                 <constraints primaryKey="true" nullable="false"/>
111             </column>
112             <column name="principal" type="varchar(50)">
113                 <constraints nullable="false" />
114             </column>
115             <column name="event_date" type="timestamp"/>
116             <column name="event_type" type="varchar(255)"/>
117         </createTable>
118
119         <createTable tableName="jhi_persistent_audit_evt_data">
120             <column name="event_id" type="bigint">
121                 <constraints nullable="false"/>
122             </column>
123             <column name="name" type="varchar(150)">
124                 <constraints nullable="false"/>
125             </column>
126             <column name="value" type="varchar(255)"/>
127         </createTable>
128         <addPrimaryKey columnNames="event_id, name" tableName="jhi_persistent_audit_evt_data"/>
129
130         <createIndex indexName="idx_persistent_audit_event"
131                      tableName="jhi_persistent_audit_event"
132                      unique="false">
133             <column name="principal" type="varchar(50)"/>
134             <column name="event_date" type="timestamp"/>
135         </createIndex>
136
137         <createIndex indexName="idx_persistent_audit_evt_data"
138                      tableName="jhi_persistent_audit_evt_data"
139                      unique="false">
140             <column name="event_id" type="bigint"/>
141         </createIndex>
142
143         <addForeignKeyConstraint baseColumnNames="event_id"
144                                  baseTableName="jhi_persistent_audit_evt_data"
145                                  constraintName="fk_evt_pers_audit_evt_data"
146                                  referencedColumnNames="event_id"
147                                  referencedTableName="jhi_persistent_audit_event"/>
148     </changeSet>
149 </databaseChangeLog>