Azure 請求閲覧者ロールとプレビュー版 Invoice API
執筆者: Vikram Desai (Azure コマーシャル エクスペリエンス、プリンシパル プログラム マネージャー)
このポストは、4 月 25 日に投稿された Azure Billing Reader role and preview of Invoice API の翻訳です。
Azure に新たにビルトインの請求閲覧者ロールが追加されました。このロールでは、VM や Storage アカウントなどのサービスへのアクセスは許可されませんが、課金情報へのアクセス権を委任できるため、サブスクリプションのコスト報告データの確認や請求書のダウンロードなど、Azure の課金情報を管理するユーザーに割り当てることができます。また、サブスクリプションの請求書をプログラムによりダウンロードする、新しい Billing API のパブリック プレビューをリリースします。
追加ユーザーの請求書ダウンロードを許可する
これまでは、請求書をダウンロードして閲覧できるのはサブスクリプションのアカウント管理者に限られていましたが、今後はサブスクリプションに割り当てられたロール (所有者、共同作成者、閲覧者、ユーザー アクセス管理者、請求閲覧者、サービス管理者、共同管理者) のユーザーにも請求書の閲覧を許可できるようになります。請求書には個人情報が含まれるため、アカウント管理者はサブスクリプションに割り当てられたロールのユーザーに閲覧権限を付与する必要があります。ユーザーの請求書閲覧を許可する手順は次のとおりです。
- Azure 管理ポータルにアカウント管理者の資格情報でログインします。
- 追加ユーザーの請求書ダウンロードを許可するサブスクリプションを選択します。
- サブスクリプション ブレードの [Billing] セクションにある [Invoices] タブを選択し、[Access to invoices] コマンドをクリックします。この機能はプレビュー段階のため、ダウンロードできない請求書もあります。アカウント管理者はすべての請求書にアクセスできます。
- サブスクリプションに割り当てられたロールのユーザーの請求書ダウンロードを許可します。
ユーザーを請求閲覧者ロールに追加する
所有者、ユーザー アクセス管理者、サービス管理者、共同管理者などの管理者ロール ユーザーは請求閲覧者のアクセス権を他のユーザーに委任できます。請求閲覧者ロールのユーザーは、使用状況や請求書といったサブスクリプションの課金情報を閲覧できます。現在、課金情報が閲覧できるのは企業向け以外のサブスクリプションに限られます。今後、企業向けサブスクリプションにも対応予定です。
- 請求閲覧者のアクセス権を委任するサブスクリプションを選択します。
- サブスクリプション ブレードから [Access control (IAM)] を選択します。
- [Add] をクリックします。
- [Billing Reader] ロールを選択します。
- アクセス権を委任したいユーザーを選択または追加します。
請求閲覧者ロールのユーザーのアクセス権の詳細については、「Azure のロールベースのアクセス制御のための組み込みロール」を参照してください。
Billing API を使用して請求書をダウンロードする
これまでサブスクリプションの請求書は Azure 管理ポータルからのダウンロードに限られていましたが、今後、管理者ロール (所有者、共同作成者、閲覧者、サービス管理者、共同管理者) および請求閲覧者ロールのユーザーは、サブスクリプションの請求書をプログラムによりダウンロードできるようになります。Invoice API では、Azure サブスクリプションの現在および過去の請求書をダウンロードできます。プレビュー版ではダウンロードできない請求書もあります。API 関連の詳細な資料はこちら (英語) から、サンプルはこちら (英語) から入手できます。API 経由で請求書をダウンロードする機能は、サポート、Enterprise Agreement、Azure イン オープンなど、一部のサブスクリプションでは利用できません。API 経由で請求書をダウンロードするには、前述のように、アカウント管理者がサブスクリプションに割り当てられたロールのユーザーにアクセスを許可する必要があります。
Azure PowerShell (英語) を使用すると、サブスクリプションの最新の請求書を簡単にダウンロードできます。
- Login-AzureRmAccount を使用してログインします。
- Set-AzureRmContext -SubscriptionId <subscription Id> を使用してサブスクリプションのコンテキストを設定します。
- Get-AzureRmBillingInvoice –Latest を実行して、最新の請求書の URL を取得します。
出力されたリンクから、最新の請求書を PDF 形式でダウンロードできます。以下にその例を示します。
PS C:\> Get-AzureRmBillingInvoice -Latest
Id : /subscriptions/{subscription ID}/providers/Microsoft.Billing/invoices/2017-02-09-117274100066163
Name : 2017-02-09-117274100066163
Type : Microsoft. Billing/invoices
InvoicePeriodStartDate : 1/10/2017 12:00:00 AM
InvoicePeriodEndDate : 2/9/2017 12:00:00 AM
DownloadUrl : https://{billingstorage}.blob.core.windows.net/invoices/{invoice identifier}.pdf?sv=2014-02-14&sr=b&sig=XlW87Ii7A5MhwQVvN1kMa0AR79iGiw72RGzQTT% 2Fh4YI%3D&se=2017-03-01T23%3A25%3A56Z&sp=r
DownloadUrlExpiry : 3/1/2017 3:25:56 PM
請求書をローカル ディレクトリにダウンロードするには、以下を実行します。
PS C:\> Get-AzureRmBillingInvoice -Latest
PS C:\> Invoke-WebRequest -Uri $invoice.DownloadUrl -OutFile <directory>\InvoiceLatest.pdf
今後、プログラムによる請求機能へのアクセスの拡張を、この API に追加する予定です。