You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/app-service/deploy-configure-credentials.md
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ ms.date: 06/27/2025
11
11
12
12
# Manage deployment credentials for Azure App Service
13
13
14
-
You can deploy local apps to [Azure App Service](overview.md) by using [local Git deployment](deploy-local-git.md) or [FTP/S deployment](deploy-ftp.md). App Service supports two types of credentials for secure local app deployment, *user-scope* and *app-scope* credentials. These credentials are different from your Azure subscription credentials.
14
+
You can deploy local apps to [Azure App Service](overview.md) by using [local Git deployment](deploy-local-git.md) or [FTP/S deployment](deploy-ftp.md). App Service supports two types of credentials you can use for secure local app deployment, *user-scope* and *app-scope* credentials. These credentials are different from your Azure subscription credentials.
@@ -29,7 +29,13 @@ Basic authentication is less secure than other authentication methods and is dis
29
29
<aname="userscope"></a>
30
30
## Set user-scope credentials
31
31
32
-
You can configure user-scope credentials by using Azure CLI or the Azure portal. For FTP/S deployment, you need both a user name and password. For local Git deployment, you only need a user name. User names must be unique within Azure.
32
+
You can configure user-scope credentials by using Azure CLI or the Azure portal.
33
+
34
+
- For FTP/S deployment, you need both a user name and password.
35
+
- The user name must be unique within Azure and follow the format `<app-name>\<user-name>`. Since user-scope credentials are linked to the user and not to the app, the username must be in this format to direct the sign-in action to the FTP/S endpoint for the app.
36
+
- The password must be at least eight characters and contain capital letters, lowercase letters, numbers, and symbols. The JSON output shows the password as `null`.
37
+
38
+
- For local Git deployment, you only need a user name, which must be unique within Azure and can't contain the `@` character.
33
39
34
40
# [Azure CLI](#tab/cli)
35
41
@@ -38,25 +44,22 @@ To create user-scope credentials, run the [`az webapp deployment user set`](/cli
38
44
```azurecli-interactive
39
45
az webapp deployment user set --user-name <username> --password <password>
40
46
```
41
-
- For FTP/S, the password must be at least eight characters and contain capital letters, lowercase letters, numbers, and symbols. The JSON output shows the password as `null`.
42
-
- For local Git, you only need to provide a user name. The user name can't contain the `@` character.
43
-
44
-
- The user name must follow the format `<app-name>\<user-name>`. Since user-scope credentials are linked to the user and not to the app, the username must be in this format to direct the sign-in action to the FTP/S endpoint for the app.
47
+
For local Git, you only need to provide a user name
45
48
46
49
# [Azure PowerShell](#tab/powershell)
47
50
48
-
You can't create user-scope credentials by using Azure PowerShell. Use Azure CLI or the Azure portal to create the credentials instead. To deploy to FTP/S or local Git, you can use app-scope credentials.
51
+
You can't create user-scope credentials by using Azure PowerShell. Use Azure CLI or the Azure portal to create the credentials instead. Or you can use app-scope credentials to deploy to FTP/S or local Git.
49
52
50
53
# [Azure portal](#tab/portal)
51
54
52
-
You must have at least one app to use for setting user-scope deployment credentials in the [Azure portal](https://portal.azure.com). You can set the credentials in any app that has **SCM Basic Auth** and **FTP Basic Auth** enabled. The credentials then apply to all apps for all subscriptions in your Azure account that have **SCM Basic Auth** and **FTP Basic Auth** enabled.
55
+
You must have at least one app to set user-scope deployment credentials in the [Azure portal](https://portal.azure.com). You can use any app that has **SCM Basic Auth** and **FTP Basic Auth** enabled. The credentials then apply to all apps for all subscriptions in your Azure account that have **SCM Basic Auth** and **FTP Basic Auth** enabled.
53
56
54
57
To configure deployment credentials:
55
58
56
59
1. Select **Deployment Center** under **Deployment** in the left navigation menu of an app.
57
-
1.If **Local Git** is configured as the build source, select the **Local Git/FTPS credentials** tab. Otherwise, select the **FTPS credentials** tab.
58
-
1. In the **User-scope** section, add a **Username**. For local Git deployments, the user name can't contain the `@` character.
59
-
1. For FTP/S deployments, add and confirm a **Password**. The password must be at least eight characters and contain capital letters, lowercase letters, numbers, and symbols.
60
+
1.Select the **FTPS credentials** tab, or if **Local Git** is configured as the build source, the **Local Git/FTPS credentials** tab.
61
+
1. In the **User-scope** section, add a **Username**.
62
+
1. For FTP/S deployments, add and confirm a **Password**.
60
63
1. Select **Save**.
61
64
62
65
After you set the credentials, you can see your deployment user name on your app's **Overview** page. If local Git deployment is configured, the label is **Git/deployment username**. Otherwise, the label is **FTP/deployment username**. The page doesn't show the password.
@@ -65,17 +68,13 @@ After you set the credentials, you can see your deployment user name on your app
65
68
66
69
-----
67
70
68
-
### Deploy to FTP/S with user-scope credentials
69
-
70
-
To authenticate to an FTP/S endpoint by using user-scope credentials, you must prepend the user name with the app name in the format `<app-name>\<user-name>`. Since user-scope credentials are linked to the user and not to the app, the username must be in this format to direct the sign-in action to the correct FTP/S endpoint for the app.
71
-
72
71
<aname="appscope"></a>
73
72
## Get application-scope credentials
74
73
75
-
The application-scope credentials are automatically created. The FTP/S app-scope user name always follows the format `app-name\$app-name`. The local Git user name follows the format `$app-name`.
74
+
The application-scope credentials are automatically created. The FTP/S app-scope user name always follows the format `app-name\$app-name`. The local Git user name uses the format `$app-name`.
76
75
77
76
>[!NOTE]
78
-
>When you use `git remote add` in shells that use the dollar sign for variable interpolation, such as Bash, you must escape any dollar signs in the username or password by using `\$`, to avoid authentication errors.
77
+
>When you use `git remote add` in shells that use the dollar sign for variable interpolation, such as Bash, you must use `\$` to escape any dollar signs in the username or password, to avoid authentication errors.
79
78
80
79
You can get your app-scope credentials by using Azure CLI, Azure PowerShell, or the Azure portal.
81
80
@@ -93,7 +92,7 @@ For [local Git deployment](deploy-local-git.md), you can also use the [`az webap
93
92
az webapp deployment list-publishing-credentials --resource-group myResourceGroup --name myApp --query scmUri
94
93
```
95
94
96
-
The returned Git remote URI doesn't have `/<app-name>.git` at the end. When you add a remote, append `/<app-name>.git` to the URI to avoid an error `22` with `git-http-push`.
95
+
The returned Git remote URI doesn't have `/<app-name>.git` at the end. If you use the URI to add a remote, append `/<app-name>.git` to the URI to avoid an error `22` with `git-http-push`.
1. From the left navigation menu of your app, select **Deployment Center** > **FTPS credentials** or **Local Git/FTPS credentials**.
149
148
1. To reset your app-scope credentials and get a new password, select **Reset** at the bottom of the **Application-scope** section.
150
-
1. To reset your user-scope credentials, select **Reset** at the bottom of the **User-scope** section. This action deletes both user name and password, and disables user-scope credentials. To reenable, enter a new username and password, and select **Save**. This action takes effect across all the apps in your account that use the user-scope credentials.
149
+
1. To reset your user-scope credentials, select **Reset** at the bottom of the **User-scope** section. This action deletes both user name and password, and disables user-scope credentials.
150
+
1. To reenable and reset your user-scope credentials, enter a new username and password, and select **Save**. This action takes effect across all the apps in your account that use the user-scope credentials.
Copy file name to clipboardExpand all lines: includes/app-service-deploy-credentials.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ ms.author: cephalin
8
8
9
9
-**User-scope credentials** provide a user with one set of deployment credentials for their entire Azure account. A user who is granted app access via role-based access control (RBAC) or coadministrator permissions can use their user-level credentials until access is revoked.
10
10
11
-
You can use your user-scope credentials to deploy any app to App Service via local Git or FTP/S in any subscription that your Azure account has permission to access. Don't share these credentials with other Azure users.
11
+
You can use your user-scope credentials to deploy any app to App Service via local Git or FTP/S in any subscription that your Azure account has permission to access. You don't share these credentials with other Azure users.
12
12
13
13
-**App-scope credentials** provide one set of credentials per app, which can be used to deploy that app only. The app-scope credentials for each app are generated automatically during app creation and can't be configured manually, but they can be reset anytime.
0 commit comments