首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Azure应用服务添加自定义域.Net核心

Azure应用服务添加自定义域.Net核心
EN

Stack Overflow用户
提问于 2021-12-31 19:26:27
回答 1查看 120关注 0票数 0

我正在遵循https://github.com/davidebbo/AzureWebsitesSamples的一个示例

代码语言:javascript
运行
复制
private static ResourceManagementClient _resourceGroupClient;
private static WebSiteManagementClient _websiteClient;
private static AzureEnvironment _environment;
private static DnsManagementClient _dnsClient;

static string _ClientId = Startup.StaticConfig.GetValue<string>("Azure:ClientId");
static string _ClientKey = Startup.StaticConfig.GetValue<string>("Azure:ClientSecret");
static string _TenantId = Startup.StaticConfig.GetValue<string>("Azure:TenantId");
static string _SubscriptionId = Startup.StaticConfig.GetValue<string>("Azure:SubscriptionId");
static string _ResourceGroupName = Startup.StaticConfig.GetValue<string>("Azure:ResourceGroupName");
static string _AppName = Startup.StaticConfig.GetValue<string>("Azure:AppName");

public static string ResourceGroupName { get => _ResourceGroupName; set => _ResourceGroupName = value; }

public static async Task MainAsync()
{
    // Set Environment - Choose between Azure public cloud, china cloud and US govt. cloud
    _environment = AzureEnvironment.PublicEnvironments[EnvironmentName.AzureCloud];

    // Get the credentials
    TokenCloudCredentials cloudCreds = await GetCredsFromServicePrincipal();

    var tokenCreds = new TokenCredentials(cloudCreds.Token);

    //var loggingHandler = new LoggingHandler(new HttpClientHandler());

    // Create our own HttpClient so we can do logging
    var httpClient = new HttpClient();

    // Use the creds to create the clients we need
    _resourceGroupClient = new ResourceManagementClient(_environment.GetEndpointAsUri(AzureEnvironment.Endpoint.ResourceManager), tokenCreds );
    _resourceGroupClient.SubscriptionId = cloudCreds.SubscriptionId;
    _websiteClient = new WebSiteManagementClient(_environment.GetEndpointAsUri(AzureEnvironment.Endpoint.ResourceManager), tokenCreds);
    _websiteClient.SubscriptionId = cloudCreds.SubscriptionId;
    _dnsClient = new DnsManagementClient(tokenCreds);

    AddCustomDomainToSite("mycustomdomain.com");

    
}

private static async Task<TokenCloudCredentials> GetCredsFromServicePrincipal()
{
    // Quick check to make sure we're not running with the default app.config
    if (_SubscriptionId[0] == '[')
    {
        throw new Exception("You need to enter your appSettings in app.config to run this sample");
    }

    var authority = String.Format("{0}{1}", _environment.Endpoints[AzureEnvironment.Endpoint.ActiveDirectory], _TenantId);
    var authContext = new AuthenticationContext(authority);
    var credential = new ClientCredential(_ClientId, _ClientKey);
    var authResult = await authContext.AcquireTokenAsync(_environment.Endpoints[AzureEnvironment.Endpoint.ActiveDirectoryServiceEndpointResourceId], credential);
    return new TokenCloudCredentials(_SubscriptionId, authResult.AccessToken);
}


static void AddCustomDomainToSite(string sDomainName)
{

    Domain domain = new Domain();

    _websiteClient.Domains.CreateOrUpdateAsync(_ResourceGroupName, "mycustomdomain.com", domain);
}

我正在尝试将mycustomdomain.com添加到我的Azure应用程序服务中。当我执行代码_websiteClient.Domains.CreateOrUpdateAsync(_ResourceGroupName, "mycustomdomain.com", domain);时,什么都不会发生。我没有收到任何错误,我也没有看到自定义域下列出的自定义域在我的应用服务。

我已经验证了域的所有权,我可以通过门户将其添加到我的应用程序服务中,但是我正在尝试通过C#添加它。有人能帮帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2022-11-01 14:14:49

您是否已经检查过"_websiteClient.WebApps.CreateOrUpdateHostNameBindingAsync(resourcegroup,appservicename、主机名、绑定)“?

我作为参数给出的绑定是这样一个:

var binding = new HostNameBinding{CustomHostNameDnsRecordType = CustomHostNameDnsRecordType.CName};

对我来说,这是为了向应用程序服务添加一个自定义域。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70545158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档