OCI「コストおよび使用状況レポート」でエラーが出た時の原因と対処(IAMポリシー不足)

検証ログ

起きたこと(症状)

OCIコンソールの 請求とコスト管理 → コスト管理 → コストおよび使用状況レポート を開いたところ、画面上部に「問題が発生しました」と出て、レポートが表示できない状況でした。

画面には次のように「必要なポリシー・ステートメント」が提示されます。

  • ステートメント1:define tenancy usage-report as <tenancy OCID>
  • ステートメント2:endorse group <group_name> to read objects in tenancy usage-report

さらに「このサービスはホーム・リージョン以外では使用できません」といった注意書きも出る。

原因(なぜこのエラーが出る?)

結論:権限不足(IAMポリシーがない/対象グループに付与されていない) が原因。

OCIのコストレポート(Cost Reports)は 毎日生成されるCSV で、Object Storageのバケットに保存されます。コンソールで「コストおよび使用状況レポート」を閲覧するには、レポート格納先(usage-report)を読めるように ルート・コンパートメント(テナンシ直下)にポリシーが必要です。 Oracle Docs+1

補足:なぜルート・コンパートメントにポリシーが必要?

このレポートは「自分のコンパートメント内のリソース」を見るのではなく、Oracle側のObject Storageに保存されたCost Report(CSV)を読み取りに行く仕組みです。
そのため権限も通常の allow ... in compartment ... ではなく、画面に出てくる cross-tenancy形式(define/endorse) が必要になり、「テナンシ全体に効くルート・コンパートメント(テナンシ直下)」にポリシーを作成する必要があります。

対処方法

1) 誰に権限を付けるか決める

  • 自分が所属している IAMグループ(例:Administrators / BillingAdmins / FinOps など)に付けるのが基本
  • 「閲覧できる人を増やしたい」場合は、専用グループ(例:finops-readers)を作ってそこにだけ付けるのが安全

2) ルート・コンパートメントにポリシーを作る

OCIコンソールで
Identity & Security → Policies へ移動し、ルート・コンパートメント(tenancy直下)にポリシーを作成。

3) 画面に出ている2行をそのまま貼る(重要)

「ポリシー・ビルダー」の手動エディタから、
スクショのエラー画面に出ているステートメント2行を正確にコピペする。

ステートメント1(tenancy OCIDは置換しない)

define tenancy usage-report as ocid1.tenancy.oc1..aaaaaaaa....(画面に出ているOCID)

ステートメント2(group_nameだけ置換する)

endorse group <group_name> to read objects in tenancy usage-report
  • <group_name>実在するグループ名に置換(例:Administrators
  • tenancy OCIDは「別のOCIDに置き換えない」点が明示されています(画面のOCIDが正)。 Oracle Docs+1

4) 反映後に再読み込み

ポリシー作成後、対象ユーザーがそのグループに所属していることを確認して、ページを再読み込み。表示できればOK。

ハマりがちなポイント(チェックリスト)

  • ルート・コンパートメントに作っているか?(子コンパートメントだと効かないことが多い)
  • group_nameのスペル(大文字小文字・ハイフン含め完全一致)
  • 自分がそのグループに入っているか
  • ホーム・リージョンで見ているか(画面にも「ホーム・リージョン以外では使用できない」旨が出る)
  • 「使用状況レポート(Usage Reports)」は非推奨になっていても、コストレポートのアクセス制御で “usage-report” という名前(エイリアス)が引き続き使われるので、ここは混乱しやすい。 Oracle Docs+1

まとめ

やることは結局3つだけでした。①ホーム・リージョンで開く、②ルート・コンパートメントにdefine/endorseを追加、③対象ユーザーが指定グループに所属していることを確認。これでCost and Usage Reportsが読めるようになります。

情報ソース

  • Oracle Cloud Infrastructure Docs(英語): Cost Reports(必要ポリシー:define tenancy usage-report ... / endorse group ...Oracle Docs
  • Oracle Cloud Infrastructure Docs(日本語): コスト・レポート(毎日生成されObject Storageに格納、Usage Reportsの非推奨について) Oracle Docs
  • Oracle Docs(英語): リソース/コスト/使用状況ビューの例(OCIDを置換しない注意、dynamic-group版も記載) Oracle Docs

コメント

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