{Azure}Azure CLI を使用して Azure サービス プリンシパルを操作する

 

https://tech-blog.cloud-config.jp/2022-09-16-auto-azure-login-for-cli
https://learn.microsoft.com/ja-jp/azure/active-directory/develop/howto-create-service-principal-portal
https://learn.microsoft.com/ja-jp/cli/azure/create-an-azure-service-principal-azure-cli

 

-- 1. 前作業

az login --use-device-code
az account show

az version

az configure --list-defaults
az configure --defaults location=japaneast
az configure --list-defaults

az group create \
--name rg9999999 \
--location japaneast


az group list
az upgrade


-- 2. サービス プリンシパルを作成する

 

az account show \
--query id \
--output tsv

 

az ad sp create-for-rbac \
--name sp99999999 \
--role Contributor \
--scopes /subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/rg9999999

 


az ad sp list --spn 22222222-2222-2222-2222-222222222222

※ spnはappIdを指定

 

-- 3. サービス プリンシパルを使用してサインインする


az logout

az login \
--service-principal \
--username 22222222-2222-2222-2222-222222222222 \
--password XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \
--tenant 33333333-3333-3333-3333-333333333333

※ usernameはappIdを指定


az account show

 


az vm create \
--resource-group rg9999999 \
--name vm01 \
--image Debian \
--size Standard_B1ls \
--admin-username azureuser \
--generate-ssh-keys \
--storage-sku Standard_LRS

 

ssh azureuser@192.0.2.1


az logout

az login --use-device-code

 

-- 4. クリーンアップ


az ad sp delete でなぜか削除できないので画面から削除

 

az group list
az group delete \
--name rg9999999 \
--yes

az group delete \
--name NetworkWatcherRG \
--yes