public void Invoke_KeyとIVを環境変数から取得して正常に復号化されること() { var config = new TripleDESCryptoSecretInfoRepositoryConfig( key: "PwshTools.CryptSecretString.Key.Tests.Cmdlet.2", iv: "PwshTools.CryptSecretString.IV.Repos.Cmdlet.2" ); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, UnitTestSecretKey, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, UnitTestSecretIV, EnvironmentVariableTarget.User); var cmdlet = new CryptSecretStringCommand( new TripleDESCryptoSecretInfoRepository(config) ) { Value = "6GQG8+pOFu7Fz1Qn0LPphw==", Decrypt = new SwitchParameter(isPresent: true) }; var result = cmdlet .Invoke <string>() .Single(); result.Should().Be("hogehoge"); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); }
public void CreateInfo_正常に生成出来ること() { var config = new TripleDESCryptoSecretInfoRepositoryConfig( key: "PwshTools.CryptSecretString.Key.Tests.Repos.1", iv: "PwshTools.CryptSecretString.IV.Repos.Tests.1" ); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.GetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, EnvironmentVariableTarget.User) .Should().BeNull(); Environment.GetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, EnvironmentVariableTarget.User) .Should().BeNull(); var info = new TripleDESCryptoSecretInfoRepository(config).CreateInfo(); info.Key.Should().Be( Environment.GetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, EnvironmentVariableTarget.User) ); info.IV.Should().Be( Environment.GetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, EnvironmentVariableTarget.User) ); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); }
public void Invoke_KeyとIVが引数と環境変数にない場合環境変数にKeyとIVが登録されていること() { var config = new TripleDESCryptoSecretInfoRepositoryConfig( key: "PwshTools.CryptSecretString.Key.Tests.Cmdlet.3", iv: "PwshTools.CryptSecretString.IV.Repos.Cmdlet.3" ); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.GetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, EnvironmentVariableTarget.User) .Should().BeNull(); Environment.GetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, EnvironmentVariableTarget.User) .Should().BeNull(); var cmdlet = new CryptSecretStringCommand( new TripleDESCryptoSecretInfoRepository(config) ) { Value = "hogehoge", Decrypt = new SwitchParameter(isPresent: false) }; var result = cmdlet .Invoke <string>() .Single(); Environment.GetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, EnvironmentVariableTarget.User) .Should().NotBeNullOrEmpty(); Environment.GetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, EnvironmentVariableTarget.User) .Should().NotBeNullOrEmpty(); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); }
public void GetInfo_正常に取得できること() { var config = new TripleDESCryptoSecretInfoRepositoryConfig( key: "PwshTools.CryptSecretString.Key.Tests.Repos.2", iv: "PwshTools.CryptSecretString.IV.Tests.Repos.2" ); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); var testKey = "TestKey"; var testIV = "TestIV"; Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, testKey, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, testIV, EnvironmentVariableTarget.User); var info = new TripleDESCryptoSecretInfoRepository(config).GetInfo(); info.Key.Should().Be(testKey); info.IV.Should().Be(testIV); Environment.SetEnvironmentVariable(config.TripleDESCryptoKeyEnviromentVariableName, null, EnvironmentVariableTarget.User); Environment.SetEnvironmentVariable(config.TripleDESCryptoIVEnviromentVariableName, null, EnvironmentVariableTarget.User); }