
liquibase.template-changeLog.yml Maven / Gradle / Ivy
databaseChangeLog:
- changeSet:
id: application-blocks-security-1506594404000-1
author: mobreza
comment: Rename 'clientrole' to 'oauthclientrole'
changes:
- renameTable:
oldTableName: clientrole
newTableName: oauthclientrole
- changeSet:
id: application-blocks-security-1506594404000-2
author: matijaobreza
comment: Create 'oauthclientrole'
changes:
- createTable:
tableName: oauthclientrole
remarks: OAuth Client role list
columns:
- column:
name: client_id
type: bigint
constraints:
nullable: false
- column:
name: oauthclientrole
type: varchar(200)
constraints:
nullable: false
- addForeignKeyConstraint:
constraintName: FK_m2da63y1tfs7mmuv9rht8udt7
baseTableName: oauthclientrole
baseColumnNames: client_id
referencedTableName: oauthclient
referencedColumnNames: id
onDelete: CASCADE
onUpdate: CASCADE
# appblocks-1.3-SNAPSHOT
- changeSet:
id: application-blocks-security-1506594404000-3
author: matijaobreza
comment: Add title, description
changes:
- addColumn:
tableName: oauthclient
columns:
- column:
name: title
type: varchar(200)
constraints:
nullable: false
- column:
name: description
type: clob
- changeSet:
id: application-blocks-security-1507137884-1
author: matijaobreza
comment: Add refreshToken#clientId
changes:
- addColumn:
tableName: oauthrefreshtoken
columns:
- column:
name: clientId
type: varchar(100)
constraints:
nullable: false
- changeSet:
id: application-blocks-security-1507137884-2
author: matijaobreza
comment: Extend OAuth Tokens
changes:
- addColumn:
tableName: oauthaccesstoken
columns:
- column:
name: expiration
type: datetime
- addColumn:
tableName: oauthrefreshtoken
columns:
- column:
name: expiration
type: datetime
- column:
name: username
type: varchar(100)
# User and OAuthClient extend AclSid
- changeSet:
id: 1509390480000-1
author: matijaobreza
comment: Migrate ACL to app-blocks-1.3-SNAPSHOT
changes:
- dropForeignKeyConstraint:
baseTableName: acl_entry
constraintName: FK_fhuoesmjef3mrv0gpja4shvcr
- dropForeignKeyConstraint:
baseTableName: acl_entry
constraintName: FK_i6xyfccd4y3wlwhgwpo4a9rm1
- dropForeignKeyConstraint:
baseTableName: acl_object_identity
constraintName: FK_nxv5we2ion9fwedbkge7syoc3
- dropUniqueConstraint:
tableName: acl_entry
constraintName: UK_gh5egfpe4gaqokya6s0567b0l
- renameTable:
oldTableName: acl_sid
newTableName: acl_sid_backup
- renameTable:
oldTableName: acl_entry
newTableName: acl_entry_backup
- createTable:
columns:
- column:
constraints:
nullable: true
name: type
type: INT
- column:
autoIncrement: true
constraints:
primaryKey: true
name: id
type: BIGINT
- column:
constraints:
nullable: false
name: active
type: BIT(1)
defaultValue: true
- column:
constraints:
nullable: false
name: version
type: INT
- column:
name: createdBy
type: BIGINT
- column:
name: createdDate
type: datetime(6)
- column:
name: lastModifiedBy
type: BIGINT
- column:
name: lastModifiedDate
type: datetime(6)
- column:
constraints:
nullable: false
name: principal
type: BIT(1)
- column:
constraints:
nullable: false
name: sid
type: VARCHAR(100)
tableName: acl_sid
- createTable:
columns:
- column:
autoIncrement: true
constraints:
primaryKey: true
name: id
type: BIGINT
- column:
constraints:
nullable: false
name: ace_order
type: BIGINT
- column:
constraints:
nullable: false
name: audit_failure
type: BIT(1)
- column:
constraints:
nullable: false
name: audit_success
type: BIT(1)
- column:
constraints:
nullable: false
name: granting
type: BIT(1)
- column:
constraints:
nullable: false
name: mask
type: BIGINT
- column:
constraints:
nullable: false
name: acl_object_identity
type: BIGINT
- column:
constraints:
nullable: false
name: sid
type: BIGINT
tableName: acl_entry
- addUniqueConstraint:
columnNames: acl_object_identity, ace_order
constraintName: UK_gh5egfpe4gaqokya6s0567b0l
tableName: acl_entry
# Migrate User data to AclSid
- sql:
comment: Migrate all users with their existing IDs to acl_sid
sql: >-
insert into acl_sid
(type, id, active, version, createdBy, createdDate, lastModifiedBy,
lastModifiedDate, principal, sid)
select
1, id, active, version, createdBy, createdDate, lastModifiedBy,
lastModifiedDate, true, uuid
from user;
- addForeignKeyConstraint:
baseColumnNames: id
baseTableName: user
constraintName: FK_8qtpnv06elxuryeuv1ac4ximm
deferrable: false
initiallyDeferred: false
onDelete: NO ACTION
onUpdate: NO ACTION
referencedColumnNames: id
referencedTableName: acl_sid
- dropColumn:
tableName: user
columnName: active
- dropColumn:
tableName: user
columnName: version
- dropColumn:
tableName: user
columnName: createdBy
- dropColumn:
tableName: user
columnName: createdDate
- dropColumn:
tableName: user
columnName: lastModifiedBy
- dropColumn:
tableName: user
columnName: lastModifiedDate
# Migrate OAuthClient data to AclSid
- sql:
comment: Migrate OAuthClient to AclSid, they get new IDs, but we can find them with clientId as acl_sid.sid
sql: >-
insert into acl_sid
(type, active, version, createdBy, createdDate, lastModifiedBy,
lastModifiedDate, principal, sid)
select
2, active, version, createdBy, createdDate, lastModifiedBy,
lastModifiedDate, true, clientId
from oauthclient;
- sql:
comment: Update OAuthClient#id values to their new IDs as per acl_sid
sql: >-
update oauthclient oa
join acl_sid sid on sid.sid=oa.clientId
set oa.id=sid.id
- addForeignKeyConstraint:
baseColumnNames: id
baseTableName: oauthclient
constraintName: FK_j9t6kj0254t7knyn57orqyaxk
deferrable: false
initiallyDeferred: false
onDelete: NO ACTION
onUpdate: NO ACTION
referencedColumnNames: id
referencedTableName: acl_sid
- dropColumn:
tableName: oauthclient
columnName: active
- dropColumn:
tableName: oauthclient
columnName: version
- dropColumn:
tableName: oauthclient
columnName: createdBy
- dropColumn:
tableName: oauthclient
columnName: createdDate
- dropColumn:
tableName: oauthclient
columnName: lastModifiedBy
- dropColumn:
tableName: oauthclient
columnName: lastModifiedDate
# Migrate acl_object_identity#owner_sid because these have changed
- sql:
comment: Migrate acl_object_identity#owner_sid because these have changed
sql: >-
update acl_object_identity oid
join acl_sid_backup oldsid on oldsid.id=oid.owner_sid
join acl_sid newsid on newsid.sid=oldsid.sid
set oid.owner_sid=newsid.id
- addForeignKeyConstraint:
baseColumnNames: owner_sid
baseTableName: acl_object_identity
constraintName: FK_nxv5we2ion9fwedbkge7syoc3
deferrable: false
initiallyDeferred: false
onDelete: NO ACTION
onUpdate: NO ACTION
referencedColumnNames: id
referencedTableName: acl_sid
# Migrate acl_sid_backup data for authorities (roles) -- i.e. everything that has not moved
- sql:
comment: Delete invalid authority records from acl_sid_backup (users and oauthclients)
sql: >-
delete oldsid from acl_sid_backup oldsid
inner join acl_sid newsid on newsid.sid=oldsid.sid
where oldsid.principal = 0;
- sql:
comment: Generate new acl_sid for ROLE entries (AclSid.type==0)
sql: >-
insert into acl_sid
(type, active, version, createdBy, createdDate, lastModifiedBy,
lastModifiedDate, principal, sid)
select
0, 1, 0, null, now(), null,
now(), false, sid
from acl_sid_backup where principal = 0;
# Migrate acl_entry data
- sql:
comment: Migrate acl_entry_backup data to acl_entry, using new acl_sid#id instead of the old one
sql: >-
insert into acl_entry
(ace_order, audit_failure, audit_success, granting, mask, acl_object_identity, sid)
select
e.ace_order, e.audit_failure, e.audit_success, e.granting, e.mask, e.acl_object_identity, newsid.id
from acl_entry_backup e
inner join acl_sid_backup oldsid on oldsid.id=e.sid
inner join acl_sid newsid on newsid.sid=oldsid.sid;
- dropTable:
tableName: acl_sid_backup
- dropTable:
tableName: acl_entry_backup
# Activate FK constraints
- addForeignKeyConstraint:
baseColumnNames: acl_object_identity
baseTableName: acl_entry
constraintName: FK_fhuoesmjef3mrv0gpja4shvcr
deferrable: false
initiallyDeferred: false
onDelete: NO ACTION
onUpdate: NO ACTION
referencedColumnNames: id
referencedTableName: acl_object_identity
- addForeignKeyConstraint:
baseColumnNames: sid
baseTableName: acl_entry
constraintName: FK_i6xyfccd4y3wlwhgwpo4a9rm1
deferrable: false
initiallyDeferred: false
onDelete: NO ACTION
onUpdate: NO ACTION
referencedColumnNames: id
referencedTableName: acl_sid
- changeSet:
id: 1604046426016-1
author: mborodenko
comment: Add privateRecaptchaKey, publicRecaptchaKey
changes:
- addColumn:
tableName: oauthclient
columns:
- column:
name: privateRecaptchaKey
type: varchar(50)
- column:
name: publicRecaptchaKey
type: varchar(50)
© 2015 - 2025 Weber Informatics LLC | Privacy Policy