Kudu service overview
Kudu is the engine behind some features in Azure App Service that are related to source-control-based deployment and other deployment methods, like Dropbox and OneDrive sync.
Access Kudu for your app
Anytime you create an app, App Service creates a companion app for it that's secured by HTTPS. This Kudu app is accessible at these URLs:
- App not in the Isolated tier:
https://<app-name>.scm.azurewebsites.net
- Internet-facing app in the Isolated tier (App Service Environment):
https://<app-name>.scm.<ase-name>.p.azurewebsites.net
- Internal app in the Isolated tier (App Service Environment for internal load balancing):
https://<app-name>.scm.<ase-name>.appserviceenvironment.net
For more information, see Accessing the Kudu service.
Kudu features
Kudu gives you helpful information about your App Service app, such as:
- App settings
- Connection strings
- Environment variables
- Server variables
- HTTP headers
It also provides features like these:
- Run commands in the Kudu console.
- Download IIS diagnostic dumps or Docker logs.
- Manage IIS processes and site extensions.
- Add deployment webhooks for Windows apps.
- Allow ZIP deployment UI with
/ZipDeploy
. - Generate custom deployment scripts.
- Allow access with a REST API.
RBAC permissions required to access Kudu
To access Kudu in the browser by using Microsoft Entra authentication, you need to be assigned an appropriate built-in or custom role over the scope of the application. The assigned role must include permission for the Microsoft.Web/sites/publish/Action
resource provider operation. The following table shows example built-in roles that include this permission.
Role type | Example built-in roles |
---|---|
Job function roles | Website Contributor Logic Apps Standard Developer (Preview) |
Privileged administrator roles1 | Owner Contributor |
1 Privileged administrator roles grant much more permission than is needed to access Kudu. If need to create a new role assignment, consider if a job function role with less access can be used instead.
See the role-based access control overview to learn more about creating role assignments.
More resources
Kudu is an open-source project. It has documentation on the Kudu wiki.