public async Task OrderFinalizeAsync() { var order = await GetOrderInfoAsync(); var topDomain = await GetTopDomainAsync(); var csrBuilder = new CertificationRequestBuilder(); csrBuilder.AddName($"C=Country, ST=State, L=City, O=Org, CN={topDomain}"); //setup the san if necessary csrBuilder.SubjectAlternativeNames = order.Domains.Where(a => a != topDomain).ToList(); byte[] csrByte = csrBuilder.Generate(); await OrderContext.Finalize(csrByte); File.WriteAllText(Path.Combine(_workDir, $"{topDomain}-{FreeCertConsts.CertPemPrivateKeyName}"), csrBuilder.Key.ToPem(), Encoding.UTF8); }