20260212080501_AddPasswordHashToMember.cs 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using System;
  2. using Microsoft.EntityFrameworkCore.Migrations;
  3. #nullable disable
  4. namespace Infrastructure.Migrations.AppDb
  5. {
  6. /// <inheritdoc />
  7. public partial class AddPasswordHashToMember : Migration
  8. {
  9. /// <inheritdoc />
  10. protected override void Up(MigrationBuilder migrationBuilder)
  11. {
  12. migrationBuilder.AddColumn<string>(
  13. name: "PasswordHash",
  14. table: "Member",
  15. type: "nvarchar(max)",
  16. nullable: true);
  17. migrationBuilder.CreateTable(
  18. name: "RefreshToken",
  19. columns: table => new
  20. {
  21. ID = table.Column<long>(type: "bigint", nullable: false)
  22. .Annotation("SqlServer:Identity", "1, 1"),
  23. MemberID = table.Column<int>(type: "int", nullable: false),
  24. Token = table.Column<string>(type: "nvarchar(256)", maxLength: 256, nullable: false),
  25. ExpiresAt = table.Column<DateTime>(type: "datetime2", nullable: false),
  26. CreatedAt = table.Column<DateTime>(type: "datetime2", nullable: false),
  27. IsRevoked = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
  28. RevokedAt = table.Column<DateTime>(type: "datetime2", nullable: true)
  29. },
  30. constraints: table =>
  31. {
  32. table.PrimaryKey("PK_RefreshToken", x => x.ID);
  33. table.ForeignKey(
  34. name: "FK_RefreshToken_Member_MemberID",
  35. column: x => x.MemberID,
  36. principalTable: "Member",
  37. principalColumn: "ID",
  38. onDelete: ReferentialAction.Cascade);
  39. },
  40. comment: "리프레시 토큰");
  41. migrationBuilder.CreateIndex(
  42. name: "IX_RefreshToken_MemberID",
  43. table: "RefreshToken",
  44. column: "MemberID");
  45. migrationBuilder.CreateIndex(
  46. name: "IX_RefreshToken_Token",
  47. table: "RefreshToken",
  48. column: "Token",
  49. unique: true);
  50. }
  51. /// <inheritdoc />
  52. protected override void Down(MigrationBuilder migrationBuilder)
  53. {
  54. migrationBuilder.DropTable(
  55. name: "RefreshToken");
  56. migrationBuilder.DropColumn(
  57. name: "PasswordHash",
  58. table: "Member");
  59. }
  60. }
  61. }