/// <summary> /// Handles the Click event of the lbAccountRegisterSave control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> protected void lbAccountRegisterSave_Click(object sender, EventArgs e) { var email = tbAccountEmail.Text; if (!cbTOSAgree.Checked) { divTOS.Attributes["class"] = "alert alert-danger"; return; } var account = AcmeHelper.LoadAccountData(); account.Email = email; account.TestMode = cbTestMode.Checked; var acme = new AcmeService(account.TestMode); acme.Register(email, hlTOS.NavigateUrl); account.Key = Convert.ToBase64String(acme.RSA); AcmeHelper.SaveAccountData(account); ltAccountEmail.Text = email; pnlAccountRegister.Visible = false; pnlAccountDetail.Visible = true; HideSecondaryBlocks(false); ShowDetails(); }
public async Task RequestCertificate_Success() { AcmeService acmeService = Services.GetService <AcmeService>(); var cetInfo = Settings.Certificates[0]; byte[] certPfx = await acmeService.RequestCertificateAsync(cetInfo); }
public async Task RequestAndUploadCertificate_Success() { AcmeService acmeService = Services.GetService <AcmeService>(); KeyVaultService keyVaultService = Services.GetService <KeyVaultService>(); var cetInfo = Settings.Certificates[0]; byte[] certPfx = await acmeService.RequestCertificateAsync(cetInfo); await keyVaultService.UploadCertificateAsync(cetInfo.KvCertName, cetInfo.KeyVault.Uri, certPfx, cetInfo.PfxPassword); }
internal async Task <CertificateInstallModel> RequestInternalAsync(IAcmeConfig config) { var service = new AcmeService(config, this.challengeProvider); var cert = await service.RequestCertificate(); var model = new CertificateInstallModel() { CertificateInfo = cert, AllDnsIdentifiers = config.Hostnames.ToList(), Host = config.Host, }; return(model); }
/// <summary> /// Handles the Click event of the lbRegister control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> protected void lbRegister_Click(object sender, EventArgs e) { HideSecondaryBlocks(true); pnlAccountDetail.Visible = false; pnlAccountRegister.Visible = true; var account = AcmeHelper.LoadAccountData(); tbAccountEmail.Text = account.Email; cbTestMode.Checked = account.TestMode; nbExistingAccount.Visible = !string.IsNullOrWhiteSpace(account.Email); var acme = new AcmeService(false); hlTOS.NavigateUrl = hlTOS.Text = acme.TermsOfServiceUrl; divTOS.Attributes["class"] = "alert alert-info"; }
internal async Task <string> RequestAndInstallInternalAsync(IAcmeConfig config) { try { Trace.TraceInformation("RequestAndInstallInternal"); var service = new AcmeService(config, this.challengeProvider); var cert = await service.RequestCertificate(); this.certificateService.Install(new CertificateInstallModel() { CertificateInfo = cert, AllDnsIdentifiers = config.Hostnames.ToList(), Host = config.Host, }); return(cert.Certificate.Thumbprint); } catch (Exception ex) { Trace.TraceError("Unabled to create Azure Web Site Management client " + ex.ToString()); throw; } }