mirror of
https://github.com/bitwarden/server.git
synced 2025-06-30 15:42:48 -05:00
[SM-713] Add database support for secret access policies (#3681)
* mssql add column and migration * Add secret access policies to EF models and config * Clear new access policies on service account delete * Add SM cleanup code on delete * Fix EF org user bulk delete * Run EF migrations
This commit is contained in:
@ -1732,6 +1732,27 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.HasDiscriminator().HasValue("group_project");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.GroupSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
|
||||
b.Property<Guid?>("GrantedSecretId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("GrantedSecretId");
|
||||
|
||||
b.Property<Guid?>("GroupId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("GroupId");
|
||||
|
||||
b.HasIndex("GrantedSecretId");
|
||||
|
||||
b.HasIndex("GroupId");
|
||||
|
||||
b.HasDiscriminator().HasValue("group_secret");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.GroupServiceAccountAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
@ -1763,6 +1784,7 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
.HasColumnName("GrantedProjectId");
|
||||
|
||||
b.Property<Guid?>("ServiceAccountId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("ServiceAccountId");
|
||||
|
||||
@ -1773,6 +1795,27 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.HasDiscriminator().HasValue("service_account_project");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccountSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
|
||||
b.Property<Guid?>("GrantedSecretId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("GrantedSecretId");
|
||||
|
||||
b.Property<Guid?>("ServiceAccountId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("ServiceAccountId");
|
||||
|
||||
b.HasIndex("GrantedSecretId");
|
||||
|
||||
b.HasIndex("ServiceAccountId");
|
||||
|
||||
b.HasDiscriminator().HasValue("service_account_secret");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserProjectAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
@ -1794,6 +1837,27 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.HasDiscriminator().HasValue("user_project");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
|
||||
b.Property<Guid?>("GrantedSecretId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("GrantedSecretId");
|
||||
|
||||
b.Property<Guid?>("OrganizationUserId")
|
||||
.ValueGeneratedOnUpdateSometimes()
|
||||
.HasColumnType("char(36)")
|
||||
.HasColumnName("OrganizationUserId");
|
||||
|
||||
b.HasIndex("GrantedSecretId");
|
||||
|
||||
b.HasIndex("OrganizationUserId");
|
||||
|
||||
b.HasDiscriminator().HasValue("user_secret");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserServiceAccountAccessPolicy", b =>
|
||||
{
|
||||
b.HasBaseType("Bit.Infrastructure.EntityFramework.SecretsManager.Models.AccessPolicy");
|
||||
@ -2245,6 +2309,23 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.Navigation("Group");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.GroupSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.Secret", "GrantedSecret")
|
||||
.WithMany("GroupAccessPolicies")
|
||||
.HasForeignKey("GrantedSecretId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.Models.Group", "Group")
|
||||
.WithMany()
|
||||
.HasForeignKey("GroupId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.Navigation("GrantedSecret");
|
||||
|
||||
b.Navigation("Group");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.GroupServiceAccountAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccount", "GrantedServiceAccount")
|
||||
@ -2277,6 +2358,22 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.Navigation("ServiceAccount");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccountSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.Secret", "GrantedSecret")
|
||||
.WithMany("ServiceAccountAccessPolicies")
|
||||
.HasForeignKey("GrantedSecretId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccount", "ServiceAccount")
|
||||
.WithMany()
|
||||
.HasForeignKey("ServiceAccountId");
|
||||
|
||||
b.Navigation("GrantedSecret");
|
||||
|
||||
b.Navigation("ServiceAccount");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserProjectAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.Project", "GrantedProject")
|
||||
@ -2293,6 +2390,22 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.Navigation("OrganizationUser");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserSecretAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.Secret", "GrantedSecret")
|
||||
.WithMany("UserAccessPolicies")
|
||||
.HasForeignKey("GrantedSecretId")
|
||||
.OnDelete(DeleteBehavior.Cascade);
|
||||
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.Models.OrganizationUser", "OrganizationUser")
|
||||
.WithMany()
|
||||
.HasForeignKey("OrganizationUserId");
|
||||
|
||||
b.Navigation("GrantedSecret");
|
||||
|
||||
b.Navigation("OrganizationUser");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.UserServiceAccountAccessPolicy", b =>
|
||||
{
|
||||
b.HasOne("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccount", "GrantedServiceAccount")
|
||||
@ -2376,6 +2489,15 @@ namespace Bit.MySqlMigrations.Migrations
|
||||
b.Navigation("UserAccessPolicies");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.Secret", b =>
|
||||
{
|
||||
b.Navigation("GroupAccessPolicies");
|
||||
|
||||
b.Navigation("ServiceAccountAccessPolicies");
|
||||
|
||||
b.Navigation("UserAccessPolicies");
|
||||
});
|
||||
|
||||
modelBuilder.Entity("Bit.Infrastructure.EntityFramework.SecretsManager.Models.ServiceAccount", b =>
|
||||
{
|
||||
b.Navigation("GroupAccessPolicies");
|
||||
|
Reference in New Issue
Block a user