mirror of
https://github.com/azure/login.git
synced 2026-03-15 09:20:56 -04:00
Improved SP creation docs (#96)
* Improved SP creation docs * Update README.md Co-authored-by: aksm-ms <58936966+aksm-ms@users.noreply.github.com>
This commit is contained in:
27
README.md
27
README.md
@@ -110,7 +110,6 @@ jobs:
|
||||
build-and-deploy:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- uses: azure/login@v1
|
||||
with:
|
||||
creds: ${{ secrets.AZURE_CREDENTIALS }}
|
||||
@@ -141,29 +140,31 @@ The following steps describe how to create the service principal, assign the rol
|
||||
|
||||
2. Use the [az ad sp create-for-rbac](https://docs.microsoft.com/cli/azure/ad/sp?view=azure-cli-latest#az_ad_sp_create_for_rbac) command to create a service principal and assign a Contributor role:
|
||||
|
||||
For web apps (also more secure)
|
||||
|
||||
```azurecli
|
||||
az ad sp create-for-rbac --name "{sp-name}" --sdk-auth --role contributor \
|
||||
--scopes /subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Web/sites/{app-name}
|
||||
```
|
||||
|
||||
Replace the following:
|
||||
* `{sp-name}` with a suitable name for your service principal, such as the name of the app itself. The name must be unique within your organization.
|
||||
* `{subscription-id}` with the subscription you want to use
|
||||
* `{resource-group}` the resource group containing the web app.
|
||||
* `{app-name}` with the name of the web app.
|
||||
|
||||
This command invokes Azure Active Directory (via the `ad` part of the command) to create a service principal (via `sp`) specifically for [Role-Based Access Control (RBAC)](https://docs.microsoft.com/azure/role-based-access-control/overview) (via `create-for-rbac`).
|
||||
|
||||
The `--role` argument specifies the permissions to grant to the service principal at the specified `--scope`. In this case, you grant the built-in [Contributor](https://docs.microsoft.com/azure/role-based-access-control/built-in-roles#contributor) role at the scope of the web app in the specified resource group in the specified subscription.
|
||||
|
||||
If desired, you can omit the part of the scope starting with `/providers/...` to grant the service principal the Contributor role for the entire resource group:
|
||||
For usage with other Azure services (Storage Accounts, Active Directory, etc.)
|
||||
|
||||
```azurecli
|
||||
az ad sp create-for-rbac --name "{sp-name}" --sdk-auth --role contributor \
|
||||
--scopes /subscriptions/{subscription-id}/resourceGroups/{resource-group}
|
||||
```
|
||||
|
||||
For security purposes, however, it's always preferable to grant permissions at the most restrictive scope possible.
|
||||
Replace the following:
|
||||
* `{sp-name}` with a suitable name for your service principal, such as the name of the app itself. The name must be unique within your organization.
|
||||
* `{subscription-id}` with the subscription ID you want to use (found in Subscriptions in portal)
|
||||
* `{resource-group}` the resource group containing the web app.
|
||||
* [optional] `{app-name}` if you wish to have a tighter & more secure scope, use the first option and replace this with the name of the web app.
|
||||
|
||||
More info can be found [here](https://docs.microsoft.com/en-us/cli/azure/ad/sp?view=azure-cli-latest#az_ad_sp_create_for_rbac).
|
||||
|
||||
This command invokes Azure Active Directory (via the `ad` part of the command) to create a service principal (via `sp`) specifically for [Role-Based Access Control (RBAC)](https://docs.microsoft.com/azure/role-based-access-control/overview) (via `create-for-rbac`).
|
||||
|
||||
The `--role` argument specifies the permissions to grant to the service principal at the specified `--scope`. In this case, you grant the built-in [Contributor](https://docs.microsoft.com/azure/role-based-access-control/built-in-roles#contributor) role at the scope of the web app in the specified resource group in the specified subscription. If desired, you can omit the part of the scope starting with `/providers/...` to grant the service principal the Contributor role for the entire resource group. For security purposes, however, it's always preferable to grant permissions at the most restrictive scope possible.
|
||||
|
||||
3. When complete, the `az ad sp create-for-rbac` command displays JSON output in the following form (which is specified by the `--sdk-auth` argument):
|
||||
|
||||
|
||||
Reference in New Issue
Block a user