7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ついに来た!New RelicのAPI Keyに最終利用日時・無効化・チーム所有者が追加されたので棚卸ししてみた

7
Last updated at Posted at 2026-10-15

New RelicのAPI Keys画面に、ずっと欲しかった3つの機能がついに追加されました!User keyの最終利用日時(Last used)、キーの無効化と再有効化(Deactivate / Activate)、Ingest keyへのチーム所有者(Owning team)です。退職者や異動者が残していったキーの棚卸しを実際にやってみたので、画面の操作とNerdGraphでのやり方をご紹介します。

image.png

API Keyの棚卸しで困っていたこと

New Relicを長く使っていると、検証用に発行したUser keyや、チームごとに作ったLicense keyがいつの間にかたまっていきます。棚卸しをしようと一覧を開いても、「このキーはまだどこかで使われているのか」「消したら本番のデータ送信が止まるのではないか」が画面からは分からず、結局そのまま放置してしまう、というのはよくある話ではないでしょうか。

とくに困るのが、人の出入りに伴うキーの扱いです。退職者の発行したUser keyはCIやスクリプトに埋め込まれたままではないか。部署異動した人のキーはいつ止めてよいのか。作った本人が異動してしまったLicense keyは、いま誰が面倒を見ているのか。自分の周りでも、「キーの持ち主を探して各チームに聞いて回ったら一週間かかった」「不要だと思って消したキーが実はバッチで使われていた」という相談を何度も聞いてきました。キーの管理は、セキュリティの話であると同時に、本番を止めないための運用の話でもあります。

この「API Keyの一覧を見ても何も判断できない」状態は、New Relicを使っているお客様から本当によく相談をいただくFAQでした。「最後に使った日は分からないの?」「消さずに止めるだけってできないの?」と聞かれるたびに、自分も歯がゆい思いをしていました。それがついに、3つまとめて実装されました。まさにこの困りごとに直接効く、待望のアップデートです。ひとつずつ見ていきます!

ついに来た!今回追加された3つの機能

Last used(最終利用日時)は、そのUser keyが最後に使われた日時を一覧に表示する機能です。これまでは「使われているかどうか」を推測するしかありませんでしたが、しばらく使われていないキーをひと目で見つけられるようになりました。地味に見えて、棚卸しをしたことがある人ならいちばん喜ぶ機能だと思います!

Deactivate / Activate(無効化・再有効化)は、キーを削除せずに一時的に止める機能です。無効化したキーは認証が通らなくなり、必要なときはいつでも再有効化できます。インシデントのとき、漏れた疑いのあるキーを即座に止められます。削除前の「止めても誰も困らないか」という確認にも使えます。

Owning team(チーム所有者)は、Ingest key(License key)に担当チームを割り当てる機能です。キーそのものに持ち主の情報が付くので、ローテーションや無効化の前に「誰に声をかければよいか」が一覧から分かります。

対象になるキーの種類は機能ごとに違います。

機能 User key License key(Ingest key) Browser key
Last used(最終利用日時) ○ × ×
Deactivate / Activate(無効化・再有効化) ○ ○ ○
Owning team(チーム所有者) × ○ ×

Deactivate / Activateはどのキーにも使えますが、アカウント作成時に作られるデフォルトのキーだけは無効化できません。

3つともUIだけでなくNerdGraph(New RelicのGraphQL API)からも扱えるので、定期的な棚卸しの自動化もできます。こちらは後半でご紹介します。

こんな場面で効きます

3つの機能が実際にどう効くのか、自分が「早く来てほしい!」といちばん待っていた2つの場面でお話しします。年度の切り替わりや組織変更のたびに頭を悩ませてきた、あの場面です。

退職した人が残していったキー

User keyは発行したユーザーに紐づいていて、他の人に引き継ぐことはできません。New Relicからそのユーザーを削除すればUser keyも無効になりますが、実際には「削除する前に、そのキーがCIやバッチで使われていないか確かめたい」という場面のほうが多いのではないでしょうか。ここでLast usedの出番です。退職日のあとも使われ続けているキーがあれば、どこかに埋め込まれている証拠なので、持ち主が不在でも手がかりが残ります。確かめたうえでDeactivateすれば、知らないところで動いている処理が止まったときに、すぐ気づいて差し替えられます。

一方で、その人が作ったLicense keyはユーザーを削除しても残り続けます。これまでは「誰が作ったか分からないキー」が増える一方でしたが、Owning teamを付けておけば、作った本人がいなくなってもキーの持ち主はチームとして残ります。

部署異動した人のキー

異動の場合はユーザーが残るので、キーは有効なままです。元の部署の人は「もう使っていないはず」と思い、異動先の人はキーの存在すら知らない、という宙ぶらりんの状態になりがちです。Last usedで直近の利用がないことを確かめ、Deactivateでいったん止めて、異動先からも元の部署からも何も言われなければ削除する、という流れで安全に片づけられます。異動先で引き続き必要なら、Activateで戻すだけです。

これまでは「本人に聞く」以外に手がありませんでした。画面で確かめて、止めて、戻せる手段がそろったのは、今回のアップデートのうれしいところです!

前提と権限

API Keys画面は、New Relicにログインして[Administration]から[API Keys]を開くか、https://one.newrelic.com/api-keysに直接アクセスすると表示されます。EUリージョンのアカウントはone.eu.newrelic.com、JPリージョンのアカウントはone.jp.newrelic.comに読み替えてください。本記事の画面は2026年10月時点のUSリージョンのものです。

操作ごとに必要な権限は次のとおりです。

  • Last usedとOwning teamを見る … Key read access
  • Owning teamを付ける・外す … Key edit access
  • 自分のUser keyを無効化・再有効化する … 追加の権限は不要
  • 他のユーザーのUser keyを無効化・再有効化する … Manage all user API keys

自分のキーを止めるだけなら特別な権限は要りません。組織全体の棚卸しをする場合は、管理者にManage all user API keysを含むロールをもらっておくとスムーズです。

設定方法

ここからは実際の画面で、棚卸しに使う操作を順番に見ていきます。

1. [Administration]から[API Keys]を開く

画面右下のユーザーメニューに[Administration]があります。直接https://one.newrelic.com/api-keysを開いても同じ画面に着きます。

2. [Last used]列で、最後に使われた日を確認する

一覧の[Last used]列に、そのUser keyが最後に使われた日時が出ます。使われていないキーは、ここが古い日付のままか空欄になっています。

3. キーの行の三点リーダーから[Deactivate key]を選んで確定する

キーの行の右端にある[...]を押すと[Deactivate key]が出ます。確認のダイアログで確定すると、そのキーは即座に認証が通らなくなります。

4. [Status]を[Deactivated]で絞り込み、[Activate key]で戻す

無効化したキーは一覧から見えなくなるので、[Status]フィルターで[Deactivated]を選んで表示します。行の[...]から[Activate key]を選べば元どおりです。

5. Ingest keyの行の[Team]列で[Edit]を押し、チームを選んで[Save]

License keyの行にカーソルを合わせると、[Team]列に[Edit]が現れます。チームを選んで[Save]を押すだけで、持ち主の情報がキーに付きます。

Owning teamは1つのキーに複数のチームを付けられます。付けたあとは[Team]フィルターでチームごとのキーを一覧できるので、「〇〇チームが持っているキーを全部見たい」というときにも使えます。

実際に棚卸しをやってみた

自分のアカウントで、たまっていたUser keyを対象に棚卸しをしてみました。やったことはシンプルで、「Last usedで候補を絞る → Deactivateで止める → しばらく待つ → 問題がなければ削除する」の4段階です。

まず[Last used]列を見て、直近1か月以上使われていないキーに目星を付けました。以前なら「たぶん使っていないはず」で止まっていたところが、日付で裏付けが取れるのは安心感が違います。次に、候補のキーをいきなり削除せず、[Deactivate key]で止めました。止めたキーを使っている処理があれば認証エラーで気づけるので、「消してから本番が止まった」という最悪のパターンを避けられます。

数日待って、誰からも「動かなくなった」という声が上がらなければ削除します。もし声が上がったら、[Activate key]で元に戻すだけなので、再発行や設定の書き換えは要りません。削除の前に無効化を挟むひと手間で、棚卸しのハードルがかなり下がったと感じました。

License keyについては、Last usedがまだ表示されない代わりに、Owning teamを付けておきました。これで次に棚卸しをするときに、持ち主探しから始めなくて済みます。

License key(Ingest key)を無効化すると、そのキーで送信しているデータの取り込みが再有効化するまで止まります。エージェントやFlex、ログ転送などで使われている可能性があるので、Owning teamのチームに声をかけてから止めるのがおすすめです。

NerdGraphでもできる

同じことはNerdGraphからもできます。GraphiQL(https://api.newrelic.com/graphiql)で試せるので、まずは最終利用日時の取得からどうぞ。keyUsageにキーのIDを渡すと、lastUsedAtが返ってきます。配列で複数のIDを渡せるので、一覧で取ったIDをまとめて投げられます。

Screenshot 2026-10-15 at 12.43.26.png

lastUsedAt を取得する
query {
  actor {
    apiAccess {
      keyUsage(keyIds: "USER_KEY_ID") {
        keyId
        lastUsedAt
      }
    }
  }
}

無効化とチームの割り当ては、更新のミューテーションapiAccessUpdateKeysで行います。enabledで有効と無効を切り替え、owningTeamIdsにチームのIDを渡します。ここで渡すのはキーの文字列ではなくキーのIDです。

キーの無効化とチームの割り当て
mutation {
  apiAccessUpdateKeys(
    keys: {
      ingest: {
        keyId: KEY_ID,
        enabled: true,
        owningTeamIds: [TEAM_ID]
      }
    }
  ) {
    updatedKeys {
      id
      name
      enabled
    }
    errors {
      message
    }
  }
}

公式ドキュメントでは、enabled: trueがキーを無効化し、enabled: falseが有効のまま保つ、と説明されています。フィールド名から受ける印象と逆なので、本番のキーに対して実行する前に、検証用のキーで挙動を確かめてから使ってください。

注意点

試していて気をつけたほうがよいと感じた点をまとめておきます。

  • Last usedはUser keyのみ対応です。License keyとBrowser keyの行には表示されません
  • Owning teamはLicense key(Ingest key)のみ対応です。User keyとBrowser keyには付けられません
  • アカウント作成時に作られるデフォルトのキーは無効化できません。ローテーションが必要な場合はサポートに連絡してください
  • 他のユーザーのUser keyを止めるにはManage all user API keys権限が必要です
  • NerdGraphのenabledは、上に書いたとおり、検証用のキーで挙動を確かめてから使ってください

最後に

いかがでしたでしょうか。
Last usedで「使われていないキー」を根拠をもって見つけ、Deactivateで削除の前に安全に止め、Owning teamで持ち主探しをなくす、という流れがUIだけで完結するようになりました。退職や異動のたびに「このキー、どうしよう」と手が止まっていた方にとっては、長らくお待たせしました、と言いたくなる待望のアップデートです。「消したら本番が止まるかも」という不安なくキーをローテーションできるので、棚卸しがぐっと楽になります。
操作そのものは数分で終わりますので、年度末や組織変更のタイミングに合わせて、ぜひお試しください!

参考

New Relic株式会社のQiita Organizationでは、
新機能を含む活用方法を公開していますので、ぜひフォローをお願いします。

image.png

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?