mirror of
https://github.com/bitwarden/server.git
synced 2025-06-30 07:36:14 -05:00
[PM-8108] Add Duo SDK v4 metadata to Duo Two Factor Provider (#4774)
* Migrate Duo Two Factor Configuration to support both v2 and v4 * Postgres Migrations * SQLite migrations * comment updates for SQLite; Query changes for consistency; * comment clean up; formatting
This commit is contained in:
@ -0,0 +1,29 @@
|
||||
/* Update User Table */
|
||||
UPDATE
|
||||
`User` U
|
||||
SET
|
||||
U.TwoFactorProviders = JSON_SET(
|
||||
JSON_SET(
|
||||
U.TwoFactorProviders, '$."2".MetaData.ClientSecret',
|
||||
JSON_UNQUOTE(U.TwoFactorProviders ->'$."2".MetaData.SKey')),
|
||||
'$."2".MetaData.ClientId',
|
||||
JSON_UNQUOTE(U.TwoFactorProviders -> '$."2".MetaData.IKey'))
|
||||
WHERE
|
||||
JSON_CONTAINS(TwoFactorProviders,
|
||||
'{"2":{}}')
|
||||
AND JSON_VALID(TwoFactorProviders);
|
||||
|
||||
/* Update Organization Table */
|
||||
UPDATE
|
||||
Organization o
|
||||
SET
|
||||
o.TwoFactorProviders = JSON_SET(
|
||||
JSON_SET(
|
||||
o.TwoFactorProviders, '$."6".MetaData.ClientSecret',
|
||||
JSON_UNQUOTE(o.TwoFactorProviders ->'$."6".MetaData.SKey')),
|
||||
'$."6".MetaData.ClientId',
|
||||
JSON_UNQUOTE(o.TwoFactorProviders -> '$."6".MetaData.IKey'))
|
||||
WHERE
|
||||
JSON_CONTAINS(o.TwoFactorProviders,
|
||||
'{"6":{}}')
|
||||
AND JSON_VALID(o.TwoFactorProviders);
|
2693
util/MySqlMigrations/Migrations/20240909181805_GenerateDuoSDKVersion4TwoFactorMetadata.Designer.cs
generated
Normal file
2693
util/MySqlMigrations/Migrations/20240909181805_GenerateDuoSDKVersion4TwoFactorMetadata.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,22 @@
|
||||
using Bit.Core.Utilities;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Bit.MySqlMigrations.Migrations;
|
||||
|
||||
/// <inheritdoc />
|
||||
public partial class GenerateDuoSDKVersion4TwoFactorMetadata : Migration
|
||||
{
|
||||
private const string _duoTwoFactorDataMigrationsScript = "MySqlMigrations.HelperScripts.2024-09-05_00_SyncDuoVersionFourMetadataToVersionTwo.sql";
|
||||
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.Sql(CoreHelpers.GetEmbeddedResourceContentsAsync(_duoTwoFactorDataMigrationsScript));
|
||||
}
|
||||
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
throw new Exception("Irreversible migration");
|
||||
}
|
||||
}
|
@ -31,5 +31,6 @@
|
||||
<EmbeddedResource Include="HelperScripts\2022-03-01_00_Down_MigrateOrganizationApiKeys.sql" />
|
||||
<EmbeddedResource Include="HelperScripts\2024-04-25_00_EnableOrgsCollectionEnhancements.sql" />
|
||||
<EmbeddedResource Include="HelperScripts\2024-08-26_00_FinalFlexibleCollectionsDataMigrations.sql" />
|
||||
<EmbeddedResource Include="HelperScripts\2024-09-05_00_SyncDuoVersionFourMetadataToVersionTwo.sql" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
Reference in New Issue
Block a user