From a81343070e6cc89e86e6ecb1b9a13a81b4d28e1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20H=C3=B6rner?= Date: Fri, 27 Jun 2025 16:26:02 +0200 Subject: [PATCH 1/3] Changes --- .../RoleAssignments/CreateRoleAssignmentEndpoint.cs | 10 +--------- .../Mapping/Rules/RoleAssignmentMappingRule.cs | 1 - src/Turnierplan.App/Models/RoleAssignmentDto.cs | 2 -- src/Turnierplan.Core/ApiKey/ApiKey.cs | 4 ++-- src/Turnierplan.Core/Folder/Folder.cs | 4 ++-- src/Turnierplan.Core/Image/Image.cs | 4 ++-- src/Turnierplan.Core/Organization/Organization.cs | 4 ++-- src/Turnierplan.Core/RoleAssignment/RoleAssignment.cs | 8 ++------ .../SeedWork/IEntityWithRoleAssignments.cs | 2 +- src/Turnierplan.Core/Tournament/Tournament.cs | 4 ++-- src/Turnierplan.Core/Venue/Venue.cs | 4 ++-- .../RoleAssignmentEntityTypeConfiguration.cs | 4 ---- src/Turnierplan.Dal/ValidationConstants.cs | 5 ----- 13 files changed, 16 insertions(+), 40 deletions(-) diff --git a/src/Turnierplan.App/Endpoints/RoleAssignments/CreateRoleAssignmentEndpoint.cs b/src/Turnierplan.App/Endpoints/RoleAssignments/CreateRoleAssignmentEndpoint.cs index 82acdbcf..9ac46bbc 100644 --- a/src/Turnierplan.App/Endpoints/RoleAssignments/CreateRoleAssignmentEndpoint.cs +++ b/src/Turnierplan.App/Endpoints/RoleAssignments/CreateRoleAssignmentEndpoint.cs @@ -16,7 +16,6 @@ using Turnierplan.Core.Tournament; using Turnierplan.Core.User; using Turnierplan.Core.Venue; -using Turnierplan.Dal; namespace Turnierplan.App.Endpoints.RoleAssignments; @@ -104,7 +103,7 @@ private static async Task CreateRoleAssignmentAsync( return Results.Conflict("There already exists a role assignment for the specified principal/role combination."); } - var roleAssignment = entity.AddRoleAssignment(request.Role, principal, request.Description); + var roleAssignment = entity.AddRoleAssignment(request.Role, principal); await roleAssignmentRepository.CreateAsync(roleAssignment).ConfigureAwait(false); await repository.UnitOfWork.SaveChangesAsync(cancellationToken).ConfigureAwait(false); @@ -143,8 +142,6 @@ public sealed record CreateRoleAssignmentEndpointRequest public required PublicId? ApiKeyId { get; init; } public required string? UserEmail { get; init; } - - public required string? Description { get; init; } } private sealed class Validator : AbstractValidator @@ -162,11 +159,6 @@ private Validator() RuleFor(x => x) .Must(x => x.ApiKeyId is null ^ x.UserEmail is null) .WithMessage($"Exactly only one of {nameof(CreateRoleAssignmentEndpointRequest.ApiKeyId)} and {nameof(CreateRoleAssignmentEndpointRequest.UserEmail)} must be specified."); - - RuleFor(x => x.Description) - .NotEmpty() - .MaximumLength(ValidationConstants.RoleAssignment.MaxDescriptionLength) - .When(x => x.Description is not null); } } } diff --git a/src/Turnierplan.App/Mapping/Rules/RoleAssignmentMappingRule.cs b/src/Turnierplan.App/Mapping/Rules/RoleAssignmentMappingRule.cs index a868b2e8..7a0d8efd 100644 --- a/src/Turnierplan.App/Mapping/Rules/RoleAssignmentMappingRule.cs +++ b/src/Turnierplan.App/Mapping/Rules/RoleAssignmentMappingRule.cs @@ -28,7 +28,6 @@ protected override RoleAssignmentDto Map(IMapper mapper, MappingContext context, Kind = source.Principal.Kind, PrincipalId = source.Principal.PrincipalId }, - Description = source.Description, IsInherited = false }; } diff --git a/src/Turnierplan.App/Models/RoleAssignmentDto.cs b/src/Turnierplan.App/Models/RoleAssignmentDto.cs index a39eda12..14ab925c 100644 --- a/src/Turnierplan.App/Models/RoleAssignmentDto.cs +++ b/src/Turnierplan.App/Models/RoleAssignmentDto.cs @@ -16,7 +16,5 @@ public sealed record RoleAssignmentDto public required PrincipalDto Principal { get; init; } - public required string Description { get; init; } - public required bool IsInherited { get; init; } } diff --git a/src/Turnierplan.Core/ApiKey/ApiKey.cs b/src/Turnierplan.Core/ApiKey/ApiKey.cs index 4db31f11..2b4ce790 100644 --- a/src/Turnierplan.Core/ApiKey/ApiKey.cs +++ b/src/Turnierplan.Core/ApiKey/ApiKey.cs @@ -63,9 +63,9 @@ internal ApiKey(long id, Guid principalId, PublicId.PublicId publicId, string na public IReadOnlyList Requests => _requests.AsReadOnly(); - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Core/Folder/Folder.cs b/src/Turnierplan.Core/Folder/Folder.cs index 3eecc3ad..8005fdfc 100644 --- a/src/Turnierplan.Core/Folder/Folder.cs +++ b/src/Turnierplan.Core/Folder/Folder.cs @@ -41,9 +41,9 @@ internal Folder(long id, PublicId.PublicId publicId, DateTime createdAt, string public IReadOnlyList Tournaments => _tournaments.AsReadOnly(); - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Core/Image/Image.cs b/src/Turnierplan.Core/Image/Image.cs index 2f88d043..e29faf6e 100644 --- a/src/Turnierplan.Core/Image/Image.cs +++ b/src/Turnierplan.Core/Image/Image.cs @@ -65,9 +65,9 @@ internal Image(long id, Guid resourceIdentifier, PublicId.PublicId publicId, Dat public ushort Height { get; } - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Core/Organization/Organization.cs b/src/Turnierplan.Core/Organization/Organization.cs index 377e745e..7159bbf1 100644 --- a/src/Turnierplan.Core/Organization/Organization.cs +++ b/src/Turnierplan.Core/Organization/Organization.cs @@ -48,9 +48,9 @@ internal Organization(long id, PublicId.PublicId publicId, DateTime createdAt, s public IReadOnlyList Venues => _venues.AsReadOnly(); - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Core/RoleAssignment/RoleAssignment.cs b/src/Turnierplan.Core/RoleAssignment/RoleAssignment.cs index d1dec9b0..b784f98e 100644 --- a/src/Turnierplan.Core/RoleAssignment/RoleAssignment.cs +++ b/src/Turnierplan.Core/RoleAssignment/RoleAssignment.cs @@ -5,23 +5,21 @@ namespace Turnierplan.Core.RoleAssignment; public sealed class RoleAssignment : Entity where T : Entity, IEntityWithRoleAssignments { - internal RoleAssignment(T scope, Role role, Principal principal, string? description = null) + internal RoleAssignment(T scope, Role role, Principal principal) { Id = Guid.NewGuid(); Scope = scope; CreatedAt = DateTime.UtcNow; Role = role; Principal = principal; - Description = description ?? string.Empty; } - internal RoleAssignment(Guid id, DateTime createdAt, Role role, Principal principal, string description) + internal RoleAssignment(Guid id, DateTime createdAt, Role role, Principal principal) { Id = id; CreatedAt = createdAt; Role = role; Principal = principal; - Description = description; } public override Guid Id { get; protected set; } @@ -33,6 +31,4 @@ internal RoleAssignment(Guid id, DateTime createdAt, Role role, Principal princi public Role Role { get; } public Principal Principal { get; } - - public string Description { get; set; } } diff --git a/src/Turnierplan.Core/SeedWork/IEntityWithRoleAssignments.cs b/src/Turnierplan.Core/SeedWork/IEntityWithRoleAssignments.cs index e79a62f7..8a6f2437 100644 --- a/src/Turnierplan.Core/SeedWork/IEntityWithRoleAssignments.cs +++ b/src/Turnierplan.Core/SeedWork/IEntityWithRoleAssignments.cs @@ -9,7 +9,7 @@ public interface IEntityWithRoleAssignments : IEntityWithPublicId IReadOnlyList> RoleAssignments { get; } - RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null); + RoleAssignment AddRoleAssignment(Role role, Principal principal); void RemoveRoleAssignment(RoleAssignment roleAssignment); } diff --git a/src/Turnierplan.Core/Tournament/Tournament.cs b/src/Turnierplan.Core/Tournament/Tournament.cs index 743dcaa3..66f1279d 100644 --- a/src/Turnierplan.Core/Tournament/Tournament.cs +++ b/src/Turnierplan.Core/Tournament/Tournament.cs @@ -147,9 +147,9 @@ public DateTime? EndTimestamp } } - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Core/Venue/Venue.cs b/src/Turnierplan.Core/Venue/Venue.cs index 0978ad7f..0ffae156 100644 --- a/src/Turnierplan.Core/Venue/Venue.cs +++ b/src/Turnierplan.Core/Venue/Venue.cs @@ -49,9 +49,9 @@ internal Venue(long id, PublicId.PublicId publicId, DateTime createdAt, string n public IReadOnlyList Tournaments => _tournaments.AsReadOnly(); - public RoleAssignment AddRoleAssignment(Role role, Principal principal, string? description = null) + public RoleAssignment AddRoleAssignment(Role role, Principal principal) { - var roleAssignment = new RoleAssignment(this, role, principal, description); + var roleAssignment = new RoleAssignment(this, role, principal); _roleAssignments.Add(roleAssignment); return roleAssignment; diff --git a/src/Turnierplan.Dal/EntityConfigurations/RoleAssignmentEntityTypeConfiguration.cs b/src/Turnierplan.Dal/EntityConfigurations/RoleAssignmentEntityTypeConfiguration.cs index c81deafa..264c6f24 100644 --- a/src/Turnierplan.Dal/EntityConfigurations/RoleAssignmentEntityTypeConfiguration.cs +++ b/src/Turnierplan.Dal/EntityConfigurations/RoleAssignmentEntityTypeConfiguration.cs @@ -27,9 +27,5 @@ public void Configure(EntityTypeBuilder> builder) builder.Property(x => x.Principal) .IsRequired() .HasConversion(); - - builder.Property(x => x.Description) - .IsRequired() - .HasMaxLength(ValidationConstants.RoleAssignment.MaxDescriptionLength); } } diff --git a/src/Turnierplan.Dal/ValidationConstants.cs b/src/Turnierplan.Dal/ValidationConstants.cs index 73cecc70..348bb810 100644 --- a/src/Turnierplan.Dal/ValidationConstants.cs +++ b/src/Turnierplan.Dal/ValidationConstants.cs @@ -46,11 +46,6 @@ public static class Organization public const int MaxNameLength = 40; } - public static class RoleAssignment - { - public const int MaxDescriptionLength = 250; - } - public static class Team { public const int MaxNameLength = 60; From daf616e1686671b57daaf6dd3050840637484634 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20H=C3=B6rner?= Date: Fri, 27 Jun 2025 16:28:10 +0200 Subject: [PATCH 2/3] Recreate migration --- ...cs => 20250627142711_Add_Rbac.Designer.cs} | 34 ++----------------- ...Add_RBAC.cs => 20250627142711_Add_Rbac.cs} | 20 ++++------- .../TurnierplanContextModelSnapshot.cs | 30 ---------------- 3 files changed, 9 insertions(+), 75 deletions(-) rename src/Turnierplan.Dal/Migrations/{20250621085230_Add_RBAC.Designer.cs => 20250627142711_Add_Rbac.Designer.cs} (97%) rename src/Turnierplan.Dal/Migrations/{20250621085230_Add_RBAC.cs => 20250627142711_Add_Rbac.cs} (94%) diff --git a/src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.Designer.cs b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.Designer.cs similarity index 97% rename from src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.Designer.cs rename to src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.Designer.cs index 5af528c7..0b854069 100644 --- a/src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.Designer.cs +++ b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.Designer.cs @@ -13,8 +13,8 @@ namespace Turnierplan.Dal.Migrations { [DbContext(typeof(TurnierplanContext))] - [Migration("20250621085230_Add_RBAC")] - partial class Add_RBAC + [Migration("20250627142711_Add_Rbac")] + partial class Add_Rbac { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) @@ -282,11 +282,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); @@ -310,11 +305,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("FolderId") .HasColumnType("bigint"); @@ -341,11 +331,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("ImageId") .HasColumnType("bigint"); @@ -372,11 +357,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("OrganizationId") .HasColumnType("bigint"); @@ -403,11 +383,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); @@ -434,11 +409,6 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); diff --git a/src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.cs b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs similarity index 94% rename from src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.cs rename to src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs index f86f03e4..f2db7972 100644 --- a/src/Turnierplan.Dal/Migrations/20250621085230_Add_RBAC.cs +++ b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs @@ -6,7 +6,7 @@ namespace Turnierplan.Dal.Migrations { /// - public partial class Add_RBAC : Migration + public partial class Add_Rbac : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) @@ -65,8 +65,7 @@ protected override void Up(MigrationBuilder migrationBuilder) ApiKeyId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { @@ -89,8 +88,7 @@ protected override void Up(MigrationBuilder migrationBuilder) FolderId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { @@ -113,8 +111,7 @@ protected override void Up(MigrationBuilder migrationBuilder) ImageId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { @@ -137,8 +134,7 @@ protected override void Up(MigrationBuilder migrationBuilder) OrganizationId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { @@ -161,8 +157,7 @@ protected override void Up(MigrationBuilder migrationBuilder) TournamentId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { @@ -185,8 +180,7 @@ protected override void Up(MigrationBuilder migrationBuilder) VenueId = table.Column(type: "bigint", nullable: false), CreatedAt = table.Column(type: "timestamp with time zone", nullable: false), Role = table.Column(type: "integer", nullable: false), - Principal = table.Column(type: "text", nullable: false), - Description = table.Column(type: "character varying(250)", maxLength: 250, nullable: false) + Principal = table.Column(type: "text", nullable: false) }, constraints: table => { diff --git a/src/Turnierplan.Dal/Migrations/TurnierplanContextModelSnapshot.cs b/src/Turnierplan.Dal/Migrations/TurnierplanContextModelSnapshot.cs index ee029614..7d3b755a 100644 --- a/src/Turnierplan.Dal/Migrations/TurnierplanContextModelSnapshot.cs +++ b/src/Turnierplan.Dal/Migrations/TurnierplanContextModelSnapshot.cs @@ -279,11 +279,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); @@ -307,11 +302,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("FolderId") .HasColumnType("bigint"); @@ -338,11 +328,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("ImageId") .HasColumnType("bigint"); @@ -369,11 +354,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("OrganizationId") .HasColumnType("bigint"); @@ -400,11 +380,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); @@ -431,11 +406,6 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Property("CreatedAt") .HasColumnType("timestamp with time zone"); - b.Property("Description") - .IsRequired() - .HasMaxLength(250) - .HasColumnType("character varying(250)"); - b.Property("Principal") .IsRequired() .HasColumnType("text"); From 133a12cf89380d305ec4216f5a3bf958bbe014cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20H=C3=B6rner?= Date: Fri, 27 Jun 2025 16:31:44 +0200 Subject: [PATCH 3/3] related fixes --- .../rbac-add-assignment/rbac-add-assignment.component.ts | 1 - src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Turnierplan.App/Client/src/app/portal/components/rbac-add-assignment/rbac-add-assignment.component.ts b/src/Turnierplan.App/Client/src/app/portal/components/rbac-add-assignment/rbac-add-assignment.component.ts index 56b1ab09..a1fb2199 100644 --- a/src/Turnierplan.App/Client/src/app/portal/components/rbac-add-assignment/rbac-add-assignment.component.ts +++ b/src/Turnierplan.App/Client/src/app/portal/components/rbac-add-assignment/rbac-add-assignment.component.ts @@ -69,7 +69,6 @@ export class RbacAddAssignmentComponent implements OnDestroy { const request: CreateRoleAssignmentEndpointRequest = { scopeId: this.targetScopeId, role: this.selectedRole, - description: null, // TODO apiKeyId: this.selectedPrincipalKind === PrincipalKind.ApiKey ? this.searchPrincipalInput.trim() : null, userEmail: this.selectedPrincipalKind === PrincipalKind.User ? this.searchPrincipalInput.trim() : null }; diff --git a/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs index f2db7972..a2fba1a8 100644 --- a/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs +++ b/src/Turnierplan.Dal/Migrations/20250627142711_Add_Rbac.cs @@ -255,8 +255,8 @@ protected override void Up(MigrationBuilder migrationBuilder) // 1000 is the numerical value for the "Owner" role migrationBuilder.Sql(""" -INSERT INTO turnierplan."IAM_Organization" ("Id", "OrganizationId", "CreatedAt", "Role", "Principal", "Description") -SELECT gen_random_uuid(), "Organizations"."Id", NOW(), 1000, ('User:' || "Users"."PrincipalId"), '' +INSERT INTO turnierplan."IAM_Organization" ("Id", "OrganizationId", "CreatedAt", "Role", "Principal") +SELECT gen_random_uuid(), "Organizations"."Id", NOW(), 1000, ('User:' || "Users"."PrincipalId") FROM turnierplan."Organizations" INNER JOIN turnierplan."Users" ON "Organizations"."OwnerId" = "Users"."Id"; """);