Microsoftが、サプライチェーンセキュリティ強化のためNuGet APIキーの有効期限を短縮

Microsoftは、.NET開発者向けパッケージリポジトリであるNuGetのセキュリティを強化するため、2026年8月17日より新規発行するNuGet.org APIキーの有効期限を365日から30日に短縮します。8月17日より前に作成されたAPIキーは11月1日まで有効で、それ以降開発者は新しいキーを生成するか、NuGet Trusted Publishingへ切り替える必要があります。

Image

今回の変更はAPIキーに伴うリスクそのものを解消するものではありませんが、キーが流出した場合に悪用できる期間を短縮する効果があります。

Microsoftが変更に踏み切った理由

NuGet.orgのAPIキーは、開発者がソフトウェアパッケージを公開する際のパスワードのような役割を果たします。このキーがコードリポジトリに保存されていたり、複数のシステム間で共有されていたり、自動化されたビルドパイプラインに組み込まれていたりすると、キーを入手した第三者が悪意のあるパッケージや許可されていない更新版を公開できてしまいます。

「長期間有効な認証情報は便利ですが、誤って流出した場合の影響を大幅に増大させてしまいます。最近発生したNX Console NPMパッケージの侵害も、盗まれた認証情報が悪用されたものでした。攻撃者はこの盗んだ認証情報を使って悪意のあるNX Consoleパッケージを公開しました。NX Dev Teamによると、このパッケージは削除されるまでの36分間に6,000回もアクティブ化されたということです。他の同様の攻撃では、被害範囲がさらに広がったケースもあります」とMicrosoftは説明しています

Trusted Publishingの仕組み

2025年9月に導入されたTrusted Publishingは、永続的なAPIキーの代わりにOpenID Connect(OIDC)認証を使用する仕組みです。公開リクエストをOIDCで検証し、その公開セッション限定の一時的なAPIキーを発行して、セッション終了後は自動的に無効化します。この方式により、コードリポジトリやCI/CDシステムから長期間有効なAPIキーを排除できるほか、公開リクエストが承認済みのソースから送信されたものであることを検証でき、キーレス公開へと向かう業界の潮流にも合致します。

OpenID Connect(OIDC)は、OAuth 2.0を基盤に構築されたID認証レイヤーです。関係するすべてのウェブサイトやサービスとパスワードを共有することなく、アプリケーションがユーザーやサービスの身元を確認できるようにします。

開発者が取るべき対応

引き続きAPIキーを使用する開発者は、NuGet.orgへパッケージを公開しているすべてのワークフローを洗い出し、2026年8月17日より前に作成されたキーをすべて置き換える必要があります。Microsoftはまた、各キーの権限を必要最小限に制限すること、ソースコードやログにキーを保存しないこと、流出したキーは即座に削除すること、有効期限の通知が実際に監視されているアカウントに届くようにすることも推奨しています。なお、NuGet.orgのウェブサイトを通じた手動でのパッケージ公開は引き続き利用可能です。

MicrosoftはGitHub ActionsやGitLabを利用している開発者に対し、できるだけ早くTrusted Publishingへ移行するよう推奨しています。それ以外のCI/CDプラットフォームを利用している開発者は、自身の公開ワークフローが30日ごとに失効するAPIキーに対応していることを確認し、残っている長期間有効なキーはすべて2026年11月1日より前に置き換える必要があります。同社は、今後も対応するCI/CDプラットフォームをTrusted Publishingについて順次拡大していく方針だとしています。

翻訳元: https://www.helpnetsecurity.com/2026/08/04/microsoft-reducing-nuget-api-keys-lifetime/

ソース: helpnetsecurity.com