Kshitij Jhangra
Kshitij Jhangra

Reputation: 607

Azure functions not executing. Access Denied everytime

Can anyone help as I am unable to execute the azure functions and getting this error message everytime.

Problematic screenshot

Upvotes: 1

Views: 4137

Answers (3)

Pranav Singh
Pranav Singh

Reputation: 20091

Same error I also faced due to anti-virus but can't modify anti-virus since it can be changed by IT Security/networking team and process is time-taking & long process. Another workaround is :

  1. Install azure-functions-core-tools via npm

    npm install -g azure-functions-core-tools@3

  2. Change Executable & Working Directory in Debug settings for azure Project settings

Working Directory : C:\<Project path>\bin\Debug\netcoreapp3.1

Executable : C:\Users\<username>\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\func.exe

enter image description here

Upvotes: 1

Kshitij Jhangra
Kshitij Jhangra

Reputation: 607

Finally after two days of struggle I got the answer. The Azure core Tools emulator "func.exe" is located in AzureFunctionstools folder which is located in appdata.

Appdata folder is the place for all the applications to install their configrations and helping component like .dlls or so. And, thus Appdata is an important folder which is hidden by default.

In many case changing the visibility of appdata folder from hidden to visible resolves the problem.

I tried to execute a sample exe from inside and outside of appdata folder and the sample exe was not accessible when it was inside appdata. Same scenario happens with "func.exe", it was executing outside of appdata folder. It was a clear indication that something is restricting access. and only an antivirus would do that.

I make changes in the antivirus policy (added the path in Exception) and it started working.

Here are the screenshots for reference:

The error message when Visual Studio executes the "func.exe" to work with Azure functions.

Error message when I tried to execute "func.exe" explicitly outside Visual studio

As a solution: you can perform the following:

  1. Make the appdata visibility from hidden to visible. or,
  2. Right click on the folder, PRoperties > Security and provide the full access rights to the user. or,
  3. Disable the antivirus and retry, it should work. If it is then add the folder path or the application name "func.exe" as an Exception.

One more solution that I figured out today especially when the antivirus is in client mode and linked with its server for policy. 4. You need to whitelist the path in the server policy and after 5 minutes say, Update the Antivirus, restart the Visual Studio and its done.

Upvotes: 1

Ghan
Ghan

Reputation: 351

Indeed, this is an antivirus policy issue. One can confirm this by going to your antivirus logs. I was using Symantec. Steps to view logs in Symantec -

  • Open Symantec>View Logs>Client Management>View Logs.

The logs will contain an entry with keyword "BLOCK" with the path of blocked exe (as in snapshot attached in question).

1/27/2020 4:04:05 PM    User Event  10  Block   [AC1-1.1] List all applications you want to block below, by clicking the Add button. - Target MD5=d028f52957a8759ccbe6845e79090898 - Target Arguments="host start --port 7071 --pause-on-error" Create Process  0   1/27/2020 4:03:04 PM    1/27/2020 4:03:04 PM    Block applications from running | [AC1-1.1] Block these applications    10.202.100.23   16776   C:\Users\<username>\AppData\Local\AzureFunctionsTools\Releases\2.43.0\cli_x64\func.exe  200704 Bytes    Alert

Once my security team updated the policy, the azure function ran perfectly!

Upvotes: 1

Related Questions