FIPs Compliance Issue

greight01greight01 Posts: 2
edited March 27, 2017 2:09AM in ReadyRoll
My machine has FIPS enabled and I cannot turn it off. This particular database utilizes the 'ENCRYPTBYPASSPHRASE' functionality and I am assuming this is what is causing the problem.

For MS Build I had to set 'enforceFIPSPolicy' as false in the MS Build config files. I cannot find a config file for Ready Roll.

This is Ready Roll Core that comes with Visual Studio 2017. I am on Windows 10 and the database is SQL Server 2016.

Any help would be greatly appreciated.

Data = System.Collections.ListDictionaryInternal
Message = Error encountered while parsing migration 'Migrations001_20170321-0928_xxx.sql': This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.
InnerException = System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.
at System.Security.Cryptography.SHA256Managed..ctor()
at ReadyRoll.Migrations.MigrationScriptFileHelpers.GetScriptChecksum(String text, Encoding encoding)
at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
TargetSite = Void Load(ReadyRoll.Migration, Boolean, Boolean, Microsoft.Build.Utilities.TaskLoggingHelper, ReadyRoll.Entities.SqlDSP, Boolean, Boolean, System.Nullable`1[System.Int32])
StackTrace = at ReadyRoll.Migrations.MigrationLoader.Load(Migration migration, Boolean emptyFile, Boolean metaDataOnly, TaskLoggingHelper logger, SqlDSP sqlDsp, Boolean forceContinueOnError, Boolean fixMetadata, Nullable`1 migrationIndex)
at ReadyRoll.Migrations.MigrationLoader.AddMetaData(Migration migration, SqlDSP sqlDsp, Boolean automaticTransactionHandling)
at ReadyRoll.Services.SandboxShadowProjectSyncService.SyncSandboxToShadowAndProject(IDatabaseProject databaseProject, Boolean generateScriptOnly, IProgress`1 progress, ProgressReporter progressHandler, IList`1& newFiles, IList`1& modifiedFiles, Migration& reparsedMigration)
at ReadyRoll.Services.DatabaseProjectSyncService.Synchronize(IDatabaseProject databaseProject, Boolean generateScriptOnly, Boolean applyMigrationsFromProject, IProgress`1 progress, ProgressReporter progressHandler, Migration& generatedMigration, IList`1& newFiles, IList`1& modifiedFiles)
at ReadyRoll.Services.DatabaseProjectSyncService.Synchronize(IDatabaseProject databaseProject, Boolean generateScriptOnly, Boolean applyMigrationsFromProject, IProgress`1 progress, ProgressReporter progressHandler, String& generatedMigrationFilePath, String& generatedMigrationSql, IList`1& newFiles, IList`1& modifiedFiles)
at ReadyRoll.VsPackage.Commands.SyncCommand._synchronize(Boolean applyMigrationsFromProject)
at ReadyRoll.VsPackage.Commands.SyncCommand.<Execute>d__13.MoveNext()
HelpLink =
Source = ReadyRoll
HResult = -2146233088

Comments

  • I'm afraid that unless you can disable FIPS within the Visual Studio process that launches Ready Roll, there is no way around this as RR is not FIPS compliant, and will not be made so in the near future.

    I'm sorry that we can't be of more help in this instance.
    Have you visited our Help Centre?
  • Just to add to what Russell said, currently the only way to get ReadyRoll working would be disable FIPs in Visual Studio. This should be possible by also setting enableFIPSPolicy=false in the devenv.exe.config file, as described in this Stack Overflow article.
    Daniel Nolan
    Product Manager
    Redgate Software
Sign In or Register to comment.