29 lines
1.0 KiB
C#
29 lines
1.0 KiB
C#
|
|
using FluentMigrator;
|
||
|
|
|
||
|
|
namespace IncidentOps.Infrastructure.Migrations;
|
||
|
|
|
||
|
|
[Migration(2)]
|
||
|
|
public class Migration0002_RefreshTokens : Migration
|
||
|
|
{
|
||
|
|
public override void Up()
|
||
|
|
{
|
||
|
|
Create.Table("refresh_tokens")
|
||
|
|
.WithColumn("id").AsGuid().PrimaryKey()
|
||
|
|
.WithColumn("user_id").AsGuid().NotNullable().ForeignKey("users", "id").OnDelete(System.Data.Rule.Cascade)
|
||
|
|
.WithColumn("token_hash").AsString(255).NotNullable().Unique()
|
||
|
|
.WithColumn("active_org_id").AsGuid().NotNullable().ForeignKey("orgs", "id").OnDelete(System.Data.Rule.Cascade)
|
||
|
|
.WithColumn("expires_at").AsDateTime().NotNullable()
|
||
|
|
.WithColumn("revoked_at").AsDateTime().Nullable()
|
||
|
|
.WithColumn("created_at").AsDateTime().NotNullable().WithDefault(SystemMethods.CurrentUTCDateTime);
|
||
|
|
|
||
|
|
Create.Index("ix_refresh_tokens_user")
|
||
|
|
.OnTable("refresh_tokens")
|
||
|
|
.OnColumn("user_id").Ascending();
|
||
|
|
}
|
||
|
|
|
||
|
|
public override void Down()
|
||
|
|
{
|
||
|
|
Delete.Table("refresh_tokens");
|
||
|
|
}
|
||
|
|
}
|