Thursday, 29 August 2019

Restart Azure Web App Using Azure Logic App


Introduction:
In this article, we are going to see how to restart the Azure web app using Azure Logic App. I am considering that you know about the azure logic app. If you want to read more about the azure logic app and its working, then refer to the below link.

Prerequisite:
For Creating Logic App which will restart the Azure web app, you must need the following items and access.
  1.      Azure portal access where Azure web App is deployed.
  2.    Tenant Id of your azure account
  3.    Client_id
  4.    Client_secret
  5.    Azure Subscription Id
  6.   Resource Group
  7.   App name


Steps:
Restart Azure web app using Azure logic app will have three simple steps as shown below.


Figure 1
We will discuss the figure 1 steps in detail in the following section.

Start Designing of the Azure Logic App:
Step 1: Get Access Token (HTTP)
Firstly, we need to add the HTTP action in-order to generate and get the access token. This action is having a post method and required tenant_id, client_id, client_secret.
"method": "POST"
"uri": "https://login.microsoftonline.com/{tenant_id}/oauth2/token"
"body": "grant_type=client_credentials&client_id={client_id} &client_secret{client_secret}&resource=https://management.core.windows.net/"
"Content-Type": "application/x-www-form-urlencoded"


Figure 2
After execution, we will get a JSON result which will have an access_token value which is required to restart the app.
JSON result looks like as below


Figure 3
Step 2: Parse JSON
Parse the JSON and get the body and define the schema using Use sample payload to generate the schema.


Figure 4



Step 3: Restart App (HTTP)
For this HTTP request, we need a subscription id, resource group and app name of the azure web app. We need to pass the access_token from the previous step in the Authorization field.
"method": "POST"
"uri": "https://management.azure.com/subscriptions/{subscription_id}/resourceGroups/{resource_group}/providers/Microsoft.Web/sites/{webApp_name}/restart?api-version=2016-08-01"
"Authorization": "Bearer @{body('Parse_JSON')?['access_token']}",
"Content-Type": "application/json"


Figure 5

Run Logic App:
Your logic app is ready and now run this and see results in history.


Figure 6

The activity log of web app:
Check the webApp activity log. You might need to wait for 1-2 mins in-order to update this.


Figure 7

Expected Result
 
The Logic app has configured properly and worked as per expected. It is restarting the azure web app, and we can configure this on-demand and schedule it. For on-demand, we can use email receiving event and restart it on receiving an email with a specific subject line. This is as given below.  

Automate the Logic app on receiving an email:
To automate this process, we can configure the above logic app on receiving an email with some defined text in the subject. Now, whenever you will receive an email with the defined subject then logic app will run automatically.



Figure 8

Summary
 
In the above article, we saw how to restart the Azure web app using the logic app. We also saw how to use email receiving an event to restart the app. Apart from the restart, we can perform many more operations like stop, start, etc. For more triggered APIs, refer to the below URL and configure those in the above logic app accordingly.  

https://docs.microsoft.com/en-us/rest/api/appservice/webapps/stop

Wednesday, 14 August 2019

How to configure the TLS and resolve errors related to this on Azure webApp!


Today, we are going to discuss and see how to configure the TLS and resolve errors related to this. There are different versions of TLS.

Protocol
Published
TLS 1.0
1999
TLS 1.1
2006
TLS 1.2
2008
TLS 1.3
2018

First, you should know what TLS is, for this, you can refer the below two URLs.
  1.  https://en.wikipedia.org/wiki/Transport_Layer_Security
  2.  https://www.cloudflare.com/learning/ssl/transport-layer-security-tls/

We must configure the right TLS on azure web app and on our security service (in my case I am using Cloudflare), if it is not configured properly then we will get the below error. For testing of app’s security, make sure you are using Internet Explorer or Microsoft Edge.

This might be because the site uses outdated or unsafe TLS security settings. If this keeps happening, try contacting the website’s owner.  



In order to resolve this issue, you must follow the below steps.

Step 1: Check your system’s internet options on your local system.


Step 2: if still facing the same issue then check TLS settings on the azure web app.


Step 3: Check TLS settings on your middle-security service (In my case I am using Cloudflare). It should match with Azure TLS or lower version.


Refresh your browser and your app is running properly.


Keep enjoying the secure app!