ガイド更新日:
Microsoft の公式 Credits / Entra 資料に基づく実装です。ログイン後の設定、Billing profile reader 権限と請求額の照合は実口座で未検証です。自動テストは実口座検証ではありません。
- 必要な認証情報
- Client secret Value
- 監視通貨
- USD · Azure グローバル商用
- 監視の対象
- MCA Credits · 最終請求後
- 単一の Microsoft Customer Agreement(MCA)請求プロファイルの最終請求後の公式 currentBalance。配下のサブスクリプションとプロジェクトで共有し、Foundry デプロイや Quota Monitor の個別財布ではありません。USD の creditCurrency/currentBalance のみ対応し、換算しません。
キーを接続せず Azure Credits を手動で確認
- Azure Portal → Cost Management + Billing → Billing scopes で MCA アカウントと支払い元の請求プロファイルを選びます。
- Payment methods → Azure credits の Available balance と通貨を読みます。最終請求後の値であり、未請求使用量を差し引いたリアルタイム残高ではありません。
- 期限、対象製品、保留中の変更と支払い方法を確認し、プロファイルごとに分けて照合します。手動確認のために秘密を提出する必要はありません。
Microsoft Azure / Foundry を Quota Monitor に接続する
1. MCA Credits の対象アカウントか確認
Azure Portal にログインし、Cost Management + Billing を検索します。Billing scopes で Foundry の支払い元を選び、Billing account type を確認します。単一スコープの場合は Settings → Properties で Microsoft Customer Agreement と表示されることを確認します。
確認:対象 Billing profile → Payment methods → Azure credits で USD Credits と Available balance を確認します。未対応の契約やクラウドなら中止し、接続のためだけに契約変更や購入をしません。
2. 請求プロファイルの完全なリソース ID をコピー
Cost Management + Billing で対象プロファイルを開き、Properties の Billing profile ID をコピーします。形式は /providers/Microsoft.Billing/billingAccounts/{billing-account-id}/billingProfiles/{billing-profile-id} です。
確認:アカウントとプロファイルを含む完全なパスが必要です。短い ID しか表示されない場合は請求所有者に確認します。ブラウザー URL、/subscriptions/...、表示名や請求書セクション ID は使いません。
3. 専用 Entra アプリを登録
請求アカウントのディレクトリで Microsoft Entra ID → App registrations → New registration を開きます。名前を Quota Monitor credits、アカウント種類を single-tenant とし、Redirect URI は空欄で Register を選択します。アプリの ID である service principal も作成されます。
確認:Overview の Directory (tenant) ID と Application (client) ID をコピーします。どちらも UUID で Object ID とは異なります。登録が禁止されている場合は既存管理者に専用アプリの作成を依頼し、自分の権限を昇格しません。
4. アプリに請求プロファイルの Reader を割り当て
既存の Billing profile owner または Billing account owner が Cost Management + Billing → 対象プロファイル → Access control (IAM) → Add を開きます。Billing profile reader を選び、名前 / Application ID で Quota Monitor credits を検索し、アプリを選択して Add します。
確認:個人ユーザーではなくこの service principal、かつこのプロファイルへの割り当てです。サブスクリプション IAM Reader、Cost Management Reader、請求書セクションのロールではありません。Owner/Contributor、Microsoft Graph/モデル権限は追加せず、組み込みロールを使うため JSON ポリシーも不要です。
5. Client secret の Value を保存
Microsoft Entra ID → App registrations → Quota Monitor credits → Certificates & secrets → Client secrets → New client secret を開きます。監視専用の説明と組織規則に沿う期限を指定し、Add を選びます。
確認:一度だけ表示される Value と期限を安全に保存します。Secret ID ではありません。紛失時は新しい秘密を作り、未使用の監視用秘密だけを削除します。業務キーを流用せず、秘密をエージェントやオンラインの API テストサイトに送信しません。
6. Quota Monitor のプロジェクトに接続
対象プロジェクト → 接続追加 → 新規接続で Microsoft Azure / Foundry(MCA · USD)を選び、名前を付けます。手順 3 の Directory (tenant) ID / Application (client) ID、手順 2 の Billing profile resource ID、手順 5 の Client secret Value を入力して保存します。
確認:4 項目はマスク表示され、一緒に暗号化されます。独自 URL、サブスクリプションのフィルターやブラウザー OAuth ログインは不要です。MCP 経由では安全な入力リンクを使い、チャットに秘密を貼りません。
7. 同期して正しい帳簿残高と照合
初回同期を待つか最新残高を照会します。成功時刻と MCA Credits · 最終請求後の表示を確認し、同じプロファイルの Azure credits の Available balance と比較します。推定残高、今月の費用や別プロファイルと比較しません。
確認:currentBalance.value が 24.5 USD なら $24.5 です。セント換算はしません。照会時刻が新しくてもリアルタイム値にはなりません。相違は請求・入金時刻を確認し、使用料を再控除せず、報告は匿名化した金額・時刻・エラーコードだけにします。
8. Azure で利用条件と支払いを確認
カードのプラットフォームを開くリンクから Cost Management + Billing に移り、同じプロファイルを再選択します。権限のある請求管理者が Azure credits と契約を確認します。購入、支払いと利用資格は Azure 上で管理します。
確認:ゼロ Credits でも別の支払い方法で課金が続く場合があります。新しい Credits は反映まで最大 24 時間かかる場合があり、すべての Foundry サービスや外部モデルに使えるとは限りません。
9. 期限前に交換、または権限を撤回
期限前に専用アプリの新しい Client secret を作り、代わりの接続を追加して同期を確認します。古い接続のプロジェクト参照と接続を削除し、Certificates & secrets で古い監視用秘密を削除します。接続枠が足りない場合は交換期間を計画します。
確認:監視を完全に止める場合は、このプロファイルの Access control (IAM) から Billing profile reader も解除します。不要になった専用アプリ/秘密のみ削除します。Quota Monitor の接続削除は Azure の権限を失効させず、業務キーは削除しません。
Quota Monitor が取得する Microsoft Azure / Foundry のデータ範囲
- リアルタイムの前払い財布ではありません。未請求費用や調整は反映せず、observedAt は照会時刻です。estimatedBalance への置換や使用量による再計算はせず、isEstimatedBalance=false を必須とします。
- グローバル商用 MCA 請求プロファイルの Credits のみ。EA、MOSP、パートナー/CSP、別の Sponsorship ポータル、中国・政府クラウドは未対応です。Foundry キーやサブスクリプション ID だけでは接続できません。
- ゼロでも Azure のリクエストが止まるとは限らず、従量課金が続く場合があります。期限、対象製品、サポート、Marketplace の制限は残り、特定の Foundry モデルの利用を保証しません。同じプロファイルを重複合算しません。
- 204、金額欠落、USD 以外、推定応答や権限エラーをゼロにしません。前回成功値を保持して失敗を表示します。Microsoft によると新しい Credits の反映に最大 24 時間かかることがあります。
- 現時点では期限付き Client secret のみ。証明書、マネージド ID、フェデレーションは未対応です。Microsoft はより強い保護のため証明書を推奨します。組織が秘密の保管を禁止している場合はポータルを使ってください。モデル呼び出し、支払い、リソース作成や権限変更は行いません。
- ダッシュボードには、最後に成功した照会結果を表示します。手動更新で再照会できますが、プロバイダーの請求反映の遅延は解消できません。照会が失敗したあとに残る古い残高は、新しい結果ではありません。
Microsoft Azure / Foundry のよくある質問とトラブルシューティング
- MCA や Azure credits タブが見つからない場合は?
- 選択したスコープの Properties で Billing account type を確認し、対象 Credits があるか請求所有者に確認します。EA、MOSP、CSP/パートナー、独立 Sponsorship、主権クラウドは未対応です。回避のために広い権限や Credits の購入を求めません。
- 400/401 の認証失敗は?
- Directory (tenant) ID / Application (client) ID を確認し、Certificates & secrets で期限・失効を調べます。Secret ID でなく Value を入力してください。Foundry キー、サブスクリプション ID、Object ID、個人パスワードや Cookie では代用できず、テナント規則が secret 認証を禁止する場合もあります。
- 403 を管理者権限なしで解決できますか?
- 既存の請求所有者が対象プロファイルの Access control (IAM) でアプリの Billing profile reader を確認します。サブスクリプション Reader / Cost Management Reader とは別です。テナントとプロファイルを確認し、反映後に再試行します。監視アプリに Owner や Global Administrator を付与しません。
- Scope の拒否や 404 は?
- Properties から /providers/Microsoft.Billing/billingAccounts/ と /billingProfiles/ を含む完全な ID をコピーします。URL ホスト、クエリ、サブスクリプション、請求書セクション、エンコードした区切り文字は不可です。似た名前で選ばず、請求所有者に確認します。
- 値が変わらない、違う、データがない場合は?
- isEstimatedBalance=false の currentBalance だけを使い、estimatedBalance は使いません。最終請求後の値なので再照会で未請求費用は精算されません。204、項目不足、未対応通貨、推定応答では前回成功値を維持します。同一プロファイル・帳簿値と比較し、新しい Credits は最大 24 時間待つ場合があります。
- ゼロ、429、アクセス撤回について
- ゼロは有効な帳簿値でもリクエスト停止を保証しません。429 は連続クリックせず後で再試行し、失敗後は前回成功時刻を確認します。撤回は Azure で専用 secret と請求ロールを削除します。報告するのは匿名化したコード・時刻のみで、トークンの生応答は送信しません。
Microsoft Azure / Foundry の公式資料
- 公式資料 · learn.microsoft.com/en-us/azure/cost-management-billing/manage/mca-check-azure-credits-balance(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/rest/api/consumption/credits/get(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/azure/cost-management-billing/manage/understand-mca-roles(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/azure/cost-management-billing/automate/cost-management-api-permissions(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/entra/identity-platform/howto-create-service-principal-portal(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/cloud-computing/finops/toolkit/hubs/configure-scopes(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-client-creds-grant-flow(新しいタブで開きます)
- 公式資料 · learn.microsoft.com/en-us/entra/identity-platform/scopes-oidc(新しいタブで開きます)
Quota Monitor が作成したガイドで、プロバイダーの公式チュートリアルではありません。画面や権限は変更される場合があるため、公式ページも確認してください。検証済みの範囲は、ここに記載した内容に限られます。