PR

WindowsPowershellでAzure操作:サブスクリプション名変更

powershell Azure
記事内に広告が含まれています。

Azureサブスクリプション名を変更したい

Azureのサブスクリプション名は初期設定では「無料試用版」や「従量課金」といった具合の名前になっておりますが、管理上分かりやすい名前にしたいですね。
Azure Portal でも変更できますが、今回も Powershell で変更します。

前提条件

本記事はWindows Powershell 5.1 で調査したものです。

PS C:\> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.19041.868
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.19041.868
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1


PS C:\>

命名規則

実運用では名前を付けるにあたって命名規則を作るのが良いでしょう。Microsoftでも推奨する命名方法が公開されてますので参考にすると良いと思います。
とはいえ、今回は便宜上適当な名前を付けます。

名前付け規則を定義する - Cloud Adoption Framework
Azure のリソースと資産の名前付けに関する考慮事項について説明し、Azure のリソースと資産の名前の例を確認します。

Powershellで変更

まず、Powershell の Az モジュールを使います。導入~接続は以前の記事を参照ください。

それと、サブスクリプションを更新する Update-AzSubscription コマンドが入っていない場合は事前に Az.Subscription をインストールしておきます。インストールは管理者モードのPowershellウィンドウで行います。

PS C:\> Install-Module -Name Az.Subscription

信頼されていないリポジトリ
信頼されていないリポジトリからモジュールをインストールしようとしています。このリポジトリを信頼する場合は、Set-PSReposit
ory コマンドレットを実行して、リポジトリの InstallationPolicy の値を変更してください。'PSGallery'
からモジュールをインストールしますか?
[Y] はい(Y)  [A] すべて続行(A)  [N] いいえ(N)  [L] すべて無視(L)  [S] 中断(S)  [?] ヘルプ (既定値は "N"): Y
PS C:\>

さて、本題に入ります。例によって
・現状確認
・設定変更
・変更後確認
といった具合にコマンドを実行します。あと、サブスクリプションを複数持っている場合は、事前に Select-AzSubscription をしておきましょう。

PS C:\> $SubsId = "***********************************"
PS C:\> $SubsName = "MySubscriptionName"
PS C:\> Connect-AzAccount
<...省略>
PS C:\> Select-AzSubscription -SubscriptionId $SubsId
<...省略>
PS C:\> Get-AzSubscription

Name       Id                                   TenantId                             State
----       --                                   --------                             -----
無料試用版 ************************************* ********************* Enabled

PS C:\> Update-AzSubscription -SubscriptionId $SubsId -Action "Rename" -Name $SubsName

Value
-----



PS C:\> Get-AzSubscription

Name       Id                                   TenantId                             State
----       --                                   --------                             -----
無料試用版 ************************************* ********************* Enabled


PS C:\>

あれ?変わってないぞ?
Azure Portal で変更する時に画面に書いてあるのですが、変更が反映されるまで約10分かかるとのことです。まー、サブスクリプション名なんて頻繁に変えるものでは無いですから問題では無いでしょう。
また、 Update-AzSubscription の引数の -Action は、Microsoftのドキュメントには”Cancel” しか載ってないのですが、これはサブスクリプションをキャンセル、つまり利用を止めることになるので、とても危険です。”Rename” については Github のソースコードを見て見つけました。他にも “Enable” がありますが、これは “Cancel” したものを再度有効化する時に使うようです。というかこの記事を書いているときにやらかしました・・・orz
で、しばらく時間をあけて再度確認するとサブスクリプション名が無事変わっております。勿論、Azure Portal 上でも変わっていることを確認しました。Portalで名前が変わっていない場合は画面をリロードしてみてください。

PS C:\> Get-AzSubscription

Name               Id                                   TenantId                             State
----               --                                   --------                             -----
MySubscriptionName *********************************** ********************* Enabled


PS C:\> Disconnect-AzAccount

参考リンク

Update-AzSubscription
https://docs.microsoft.com/en-us/powershell/module/az.subscription/update-azsubscription?view=azps-5.7.0 (リンク先古すぎて消失)
github Azure powershell
https://github.com/Azure/azure-powershell

コメント

タイトルとURLをコピーしました