Пример #1
0
        static async Task Main(string[] args)
        {
            var cmdAllowedArgs = new CmdAllowedArgsFactory().Create();

            try
            {
                Output.WriteHeader("Secret Export");

                var argSettings = new ArgSettings(new CmdArgInfo(args, cmdAllowedArgs));

                _secretClient = new KeyVaultSecretClient(argSettings.KeyVaultUri);

                WriteSubHeader(argSettings);

                CheckFileExists(argSettings);

                var secrets = await GetSecretsAsync(argSettings);

                SaveSecrets(argSettings.FilePath, secrets);

                Output.WriteLine();
                Output.WriteLine("Done.");
            }
            catch (CmdArgException ex)
            {
                Output.WriteError(ex, cmdAllowedArgs);
            }
            catch (Exception ex)
            {
                Output.WriteError(ex);
            }
        }
Пример #2
0
        static async Task Main(string[] args)
        {
            var cmdAllowedArgs = new CmdAllowedArgsFactory().Create();

            try
            {
                Output.WriteHeader("Secret Import");

                _argSettings = new ArgSettings(new CmdArgInfo(args, cmdAllowedArgs));

                _secretClient = new KeyVaultSecretClient(_argSettings.KeyVaultUri);

                WriteSubHeader(_argSettings);

                var pairs = await new KeyValuePairFileReader().ReadFile(_argSettings.FilePath);

                await SetSecretsAsync(pairs);

                Output.WriteLine();
                Output.WriteLine("Done.");
            }
            catch (CmdArgException ex)
            {
                Output.WriteError(ex, cmdAllowedArgs);
            }
            catch (Exception ex)
            {
                Output.WriteError(ex);
            }
        }
Пример #3
0
        static async Task Main(string[] args)
        {
            var cmdAllowedArgs = new CmdAllowedArgsFactory().Create();

            try
            {
                Output.WriteHeader("Secret Show");

                var argSettings = new ArgSettings(new CmdArgInfo(args, cmdAllowedArgs));

                _secretClient = new KeyVaultSecretClient(argSettings.KeyVaultUri);

                Output.WriteLine($"KV URI: {argSettings.KeyVaultUri}");

                if (string.IsNullOrEmpty(argSettings.SectionName))
                {
                    await WriteAllAsync();
                }
                else
                {
                    await WriteSectionAsync(argSettings.SectionName);
                }

                Output.WriteLine();
                Output.WriteLine("Done.");
            }
            catch (CmdArgException ex)
            {
                Output.WriteError(ex, cmdAllowedArgs);
            }
            catch (Exception ex)
            {
                Output.WriteError(ex);
            }
        }
Пример #4
0
        private static async Task <IList <KeyVaultSecret> > GetSecretsAsync(ArgSettings argSettings)
        {
            if (!string.IsNullOrEmpty(argSettings.SectionName))
            {
                return(await _secretClient.GetSectionAsync(argSettings.SectionName));
            }

            return(await _secretClient.GetAllAsync());
        }
Пример #5
0
 private static void CheckFileExists(ArgSettings argSettings)
 {
     if (File.Exists(argSettings.FilePath))
     {
         if (!argSettings.UseFileOverwrite)
         {
             Output.WriteWarning($"File exists at: {argSettings.FilePath}.");
             Environment.Exit(0);
         }
     }
 }
Пример #6
0
        private static void WriteSubHeader(ArgSettings argSettings)
        {
            Output.WriteLine($"KV URI: {argSettings.KeyVaultUri}");
            Output.WriteLine($"File path: {argSettings.FilePath}");

            if (!string.IsNullOrEmpty(argSettings.SectionName))
            {
                Output.WriteLine($"Section name: {argSettings.SectionName}");
            }

            Output.WriteLine();
        }
Пример #7
0
 private static void WriteSubHeader(ArgSettings argSettings)
 {
     Output.WriteLine($"KV URI: {argSettings.KeyVaultUri}");
     Output.WriteLine($"File path: {argSettings.FilePath}");
     Output.WriteLine();
 }