using System; using System.Management.Automation; namespace Alkami.Ops.Certificates { /// /// Yeets certs for a given folder /// [Cmdlet("Remove", "SecretsInMachineSecretsFolder")] [OutputType(typeof(string))] public class RemoveSecretsInMachineSecretsFolder : Cmdlet { [Parameter(Position = 0, Mandatory = true)] public string SecretUsername; [Parameter(Position = 1, Mandatory = true)] public string SecretPassword; [Parameter(Position = 2, Mandatory = false)] public string SecretSite = "https://alkami.secretservercloud.com"; private string Folder = @"\ops.deployment-CertApi\MachineSecrets\"; protected override void ProcessRecord() { DeleteCertificatesInFolder(Folder); } /// /// Imports certificates to the machine from the MachineSecrets folder. /// /// private void DeleteCertificatesInFolder(string Folder) { Console.WriteLine("Yeeting certificates from the secret server."); // Create secret server client. using (var client = new SecretServer.SecretServerClient(SecretSite, SecretUsername, SecretPassword)) { // yeet zips var secretFolder = client.GetFolder(Folder); client.DeleteSecretsInFolder(secretFolder).GetAwaiter().GetResult(); } } } }