Unable to configure CName in Azure APIM consumption plan - azure

We have Azure subscription. We have configured APIM service consumption plan. We are unable to configure CNAME under Gateway option of APIM screen. It gives error with correlation Id and says contact Azure support team.

Ensure that your custom cname is already binded to API Management default hostname before calling update. There is a fix which will show exact error message in future.

Azure API Management Consumption Tier is built over Azure App Services which is built over a framework different than the framework the other APIM tiers built over and called (Antares).
This actually requires you first to register a CNAME record at your service provider before adding a custom domain (upload the cert) at the API Management Level.
If the you are trying to use the custom domain api.xyz.ie and your service name is abcd, the CNAME should be registered as follows:
CName api.xyz.ie abcd.azure-api.net
This procedure most probably is just to verify your ownership for the domain.

Related

How to Access a custom domain outside azure which I bought in azure portal

ok so I bought a custom domain within azure portal for my website. but now that my msdn subscription is over in azure I want to move my website to some other service or a cheaper solution as it is just a static website to show my video player app and I dont wanna purchase expensive subscriptions for it.
As I am searching for a solution regarding moving my website to another new azure account or outside azure to somewhere else I am trying to find where can I access my domain ownership outside azure portal? Because I assume on the backend azure must be using some service to purchase the domain right? as per portal renewal to my domain is still pending till next year so I technically still own that domain and I wanna keep my website on it live, just dont wanna pay for expensive azure subscription.
it is just a static website with ssl certification service applied on it for https.
If you already have bought custom domain using Azure portal then you may want to know that App Service Domains use GoDaddy for domain registration and Azure DNS to host the domains. In addition to the yearly domain registration fee, usage charges for Azure DNS apply.
For information, see Azure DNS Pricing.
In your case you can transfer away your domain and Transferring of domain out of Azure (not a registrar) to another registrar is supported and you may currently do so via API and PowerShell.
You will need to get an authorization code which you can take to the registrar of choice to proceed with transferring out of your domain.
You can use the transfer out API:
PUT https://management.azure.com/subscriptions/<SUBSCRIPTION-ID>/resourceGroups/<RESOURCE-GROUP-NAME>/providers/Microsoft.DomainRegistration/domains/<DOMAIN-NAME>/transferout?api-version=2021-02-01
You may be able to run this API on Azure Resource Explorer.
Check this blog for more details on this.
Also check this similar discussion here might be help.

Azure Web App - Change Exisitng Web App to use a New Custom Domain

I support an existing Azure web-app that is linked to a custom domain. App Service Certificates are used to for the Web Apps TLS settings and bind to the custom domain.
There is now a requirement to register a new custom domain (using Azure is OK), un-link the exsiting domain and config-link the new custom domain to the existing Azure web-app.
I am trying to figure out a logical ordering of steps to achieve this. The Azure web-app is live however over the weekend the web-app is not in use. There are 3 non-production environments to test out the sequence of steps to ensure the web-site still remains accessible after the change.
Can you help with the sequence of steps to achieve the above?
Regards
There are 2 ways to add a new custom domain in the Azure Web Application:
Removing the existing custom domain and configuring the new Custom Domain Name
Using Deployment Slots
Way 1:
A) Remove the existing Custom Domain:
If your hostname has SSL bindings, remove them first and then delete the hostname.
Using PowerShell: If the web application having multiple custom domain names/
$webApp = Get-AzWebApp -ResourceGroupName "<<Resource-Group-Name>>" -Name "<<App_Name>>"
$webApp.HostNames.Clear()
$webApp.Hostnames.Add($webApp.DefaultHostName)
set-AzWebApp -ResourceGroupName "<<Resource-Group-Name>>" -Name
<<App_Name>> -HostNames $webApp.HostNames
The above cmdlets will remove the all custom hostnames except the default one.
To remove a specific hostname for the collection:
$webApp.HostNames.Remove("your_hostname_goes_here")
Only a Global Administrator can manage domains in Azure AD. Make sure you have enough permission to do this.
Custom domain from Azure AD will not be removed until the custom domain is primary. Make your other domain having extension as onmicrosoft.com as primary and then you should be able to remove the custom domain from Azure AD.
To know the limitations in deleting a custom domain name, please refer this MS Doc.
B) Adding a New Custom Domain:
Before Adding the Custom Domain, make sure you edit DNS records to add DNS entries for the root domain.
To get a domain verification Id, go to Azure Portal > <Your App Service> > Custom domains - Copy CDV ID and IP address.
Create the DNS Records for your domain and enable the mapping in your app. For more information, please refer this MS Doc and article.
The above documentation also contains the information of securing the custom DNS with a TLS/SSL binding and migration of domain from one to another App.
Way 2: Using Deployment Slots
Make your old custom domain web app to the staging slot.
Host the new custom domain web app in a new slot (suppose: Production Slot)
Using Azure CLI, you can add a slot to your web app using below cmdlets:
az webapp config hostname add [--hostname]
[--ids]
[--resource-group]
[--slot]
[--subscription]
[--webapp-name]
For more information, you can refer this MS Doc of Set up Deployment Slot Environments in Azure App Service and an Stackify article of azure deployment slots.

Is it possible to add custom domain in Azure Api Management through Azure rest api or azure cli

We have an Azure API Management Service and we need to configure custom domain with SSL certificate and We are trying to automate the process of adding the custom domain in Api management. Is it possible to add custom domain through Azure rest api or azure cli?
Yes, you can use either the PowerShell module, New-AzureRmApiManagementCustomHostnameConfiguration, or the Management API, Gateway Hostname Configuration.

Azure - Allow access to a website deployed on Azure App Service only for a single country

I have website deployed on Azure App Service and I want to restrict access to my website from any other country accessing it but only a specific country can access that website.
Is there any way where I can restrict/allow at the infrastructure level inside Azure?
Even though AppService does not provide, Yes this can be done with Azure CDN provider does via the Geo Level Filtering. More details can be found here.
Is there any way where I can restrict/allow at the infrastructure level inside Azure?
Agree with Sajeetharan. It seems Azure Web App could not restrict the access just by country directly. You can have a try with Azure CDN, it can restrict the access by country.
But, as the comment you said, you do not have to restrict CDN, in this case, you can consider to restrict IP addressees in Azure. You can also use IP Restrictions menu in Azure app services to add restrictions:
You can check the document Azure App Service Access Restrictions for some more details.
Besides, you can try to use web.config or use IP restrictions feature of the webapp:
Check this thread for some more info.
Hope this helps.
Answer is: Azure Front Door with Front Door WAF policy
After going through with different Microsoft documentation I finally implemented the solution with Azure Front Door where you can set Frontend hosts and Backend pools with forwarding/redirecting. And in Frontend hosts, you can select WAF policy.
In the backend pool, you can select any application e.g. App Service or any IP where your app is deployed.
In WAF policy there are multiple options to restrict your traffic and one of them is geolocation restriction.
Just apply geolocation restriction according to your desired country and it will work like a charm.

Verify Ownership of Azure App Service Domain

I have registered a domain name through the Azure portal. I'm currently in the process of trying to verify ownership of it on Office365 so I can register email for it.
However, it looks like Azure uses GoDaddy as their DNS provider. Unfortunately, since I registered through Azure portal I don't have a way to sign into GoDaddy and go through the necessary steps to prove ownership of the domain.
On the Azure side, I attempted to delegate the app service domain to an Azure DNS Zone per the DNS Zone blade for said app service domain. However, when I click the delegate button, I get the following error:
Failed to update the domain to use Azure DNS: An error has occurred.
No further information. Is there anyway I can actually give proof that I own this domain?
GoDaddy support said they couldn't help me and that I need to call the registrar. However, I don't have a paid support plan with Azure so I can't actually call them.

Resources