コード例 #1
0
        public async Task TestRequestDnsCertificate()
        {
            var config = new AppSettingsAuthConfig();
            var client = await ArmHelper.GetWebSiteManagementClient(config);

            var kuduClient = KuduHelper.GetKuduClient(client, config);

            var body = new DnsAzureModel()
            {
                AzureDnsEnvironment = new AzureDnsEnvironment(config.Tenant, new Guid("14fe4c66-c75a-4323-881b-ea53c1d86a9d"), config.ClientId, config.ClientSecret, "dns", "ai4bots.com", "@"),
                AcmeConfig          = new AcmeConfig()
                {
                    Host              = "ai4bots.com",
                    PFXPassword       = "******",
                    RegistrationEmail = "*****@*****.**",
                    RSAKeyLength      = 2048
                }
            };

            var res = await kuduClient.HttpClient.PostAsync(
                "https://webappcfmv5fy7lcq7o.scm.azurewebsites.net/letsencrypt/api/certificates/challengeprovider/dns/azure?api-version=2017-09-01",
                new StringContent(JsonConvert.SerializeObject(body), Encoding.UTF8, "application/json"));

            await ValidateResponse(body.AcmeConfig, res);
        }
コード例 #2
0
        public async Task <IHttpActionResult> Generate(DnsAzureModel model, [FromUri(Name = "api-version")] string apiversion = null)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var res = await CertificateManager.RequestDnsChallengeCertificate(model.AzureDnsEnvironment, model.AcmeConfig);

            return(Ok(res));
        }