Authentication types by deployment methods in Azure App Service

With Azure App Service, you have multiple options for deploying your web application code and configuration. These deployment methods support one or more authentication mechanisms. This article provides details about the deployment methods and authentication mechanisms.

Note

To disable basic authentication for your App Service app, see Disable basic authentication in App Service deployments.

Deployment method Authentication  Reference documentation 
Azure CLI  Microsoft Entra ID  In Azure CLI version 2.48.1 or later, the following commands use Microsoft Entra if basic authentication is turned off for your web app or function app:

- az webapp up
- az webapp deploy
- az webapp log deployment show
- az webapp log deployment list
- az webapp log download
- az webapp log tail
- az webapp browse
- az webapp create-remote-connection
- az webapp ssh
- az functionapp deploy
- az functionapp log deployment list
- az functionapp log deployment show
- az functionapp deployment source config-zip

For more information, see az appservice and az webapp
Azure PowerShell  Microsoft Entra  In Azure PowerShell version 9.7.1 or later, Microsoft Entra is available for App Service. For more information, see PowerShell samples for Azure App Service
SCM/Kudu/OneDeploy REST endpoint  Basic authentication

Microsoft Entra 
Deploy files to App Service 
Kudu UI  Basic authentication

Microsoft Entra 
Deploy files to App Service
FTP/FTPS  Basic authentication  Deploy your app to Azure App Service by using FTP/S 
Visual Studio  Basic authentication   Quickstart: Deploy an ASP.NET web app

Develop and deploy WebJobs by using Visual Studio

Troubleshoot an app in Azure App Service by using Visual Studio

GitHub Actions integration in Visual Studio

Deploy your application to Azure by using GitHub Actions workflows created by Visual Studio 
Visual Studio Code Microsoft Entra  Quickstart: Deploy an ASP.NET web app

Working with GitHub in VS Code 
GitHub with GitHub Actions  Publish profile (basic authentication)

Service principal (Microsoft Entra)

OpenID Connect (Microsoft Entra) 
Deploy to App Service by using GitHub Actions 
GitHub with the App Service build service as a build engine Basic authentication Continuous deployment to Azure App Service
GitHub with Azure Pipelines as a build engine Publish profile (basic authentication)

Azure DevOps service connection 
Deploy to App Service by using Azure Pipelines 
Azure Repos with the App Service build service as a build engine Basic authentication  Continuous deployment to Azure App Service 
Azure Repos with Azure Pipelines as a build engine  Publish profile (basic authentication)

Azure DevOps service connection 
Deploy to App Service by using GitHub Actions 
Bitbucket  Basic authentication  Continuous deployment to Azure App Service 
Local Git  Basic authentication  Local Git deployment to Azure App Service 
External Git repository Basic authentication  Setting up continuous deployment by using manual steps 
Run directly from an uploaded ZIP file Microsoft Entra  Run your app in Azure App Service directly from a ZIP package 
Run directly from an external URL  Not applicable (outbound connection)  Run from external URL instead 
Maven plug-in for Azure App Service (Java) Microsoft Entra  Quickstart: Create a Java app on Azure App Service
Gradle plug-in for Azure App Service (Java) Microsoft Entra  Configure a Java app for Azure App Service
Web hooks  Basic authentication  Web hooks 
App Service migration assistant  Basic authentication  Azure App Service migration tools 
App Service migration assistant for PowerShell scripts  Basic authentication  Azure App Service migration tools 
Azure Migrate discovery/assessment/migration for App Service  Microsoft Entra  Tutorial: Assess web apps for migration to Azure App Service

Modernize ASP.NET web apps to Azure App Service code