見出し画像

【第483回】 MC Engagement のクライアントシークレットに有効期限が導入

Marketing Cloud Engagement の Spring '26 の新機能リリース としても発表されていた「API 認証」で使用される「クライアントシークレットに関わるセキュリティ強化のアップデートが、本日、改めてメールでも通知されました。

今回の変更は非常に重要な内容です。適切な対応を行わない場合、既存の API 連携が停止する可能性があります。

特に、以下のご担当者の方はご注意ください。

  • Marketing Cloud Engagement の開発担当の Salesforce パートナーの方

  • ユーザーの方で、過去に API 連携を実装しているが、現在は Salesforce パートナーとの保守契約がない方

稀に、自社で把握していない形で API 連携が実装されているケースも少なくありません。一度、「インストール済みパッケージ」を確認して、期限付きのパッケージがある場合で、その内容に心当たりがない場合は、過去に実装を担当したベンダーへ内容の確認することをオススメします。

インストール済みパッケージの見つけ方
・ 
セットアップ > プラットフォームツールアプリ の中にあります。


今回の変更点(2026 年 3 月 26 日〜)

以下の 3 つが新たに適用されます。

1. シークレットに有効期限(180 日)が追加

  • すべてのシークレットに 180 日間の有効期限(TTL)が設定されます

  • 期限を過ぎると自動的に失効します

※ 既存のシークレットは 2026 年 9 月 30 日で期限切れ となります。

2. 新しいシークレットのフォーマット

2026 年 3 月 26 日以降に生成されるシークレットは、以下の形式になります。

  • 64 文字

  • SFMC_ で始まる形式

3. 有効期限が画面で確認可能に

インストールパッケージの画面に有効期限(Expiration Date)列が追加され、各パッケージの期限を確認できるようになりました。


未実装か!? ローテーションの時期が近づくとメールで通知機能

今回のお知らせメールには含まれていませんでしたが、Spring '26 のリリースノートのドキュメントに従うと、今回、問題となるローテーションポリシー(期間)を設定できるようになる予定でしたが、現時点(2026 年 3 月 27 日時典)ではそのような設定はできません。
この機能によると、シークレットのローテーション時期が近づくと、マーケティング管理者宛てにメールが届くようなので理想的な機能です

私見ですが、Salesforce としては、この機能をこのタイミングで同時リリースすべきでした。この半年の間にリリースされることを祈ります。

※ リリースノートは正式なヘルプドキュメントとは見做されません。
このままリリースされない可能性もありますので注意してください。

ちなみに・・・
本日(2026 年 3 月 27 日)変更した場合は、本日から 180 日後の 2026 年 9 月 23 日に設定されます。これはデフォルト設定より期限が短くなりますので、今ローテーションすることは、全く意味がありません。9 月になってから実行するか、例えば、180 日ごとに行うのではなく、4 半期ごと(90 日ごと)に変えるなど、余裕を持って対応すると良いと思います


ローテーションの手順

Step 1:シークレットのローテーション

1. 新しいシークレットを生成するパッケージを開き、ステージングされたシークレットセクションの「生成」ボタンをクリックします。

2. 新しいシークレットの説明を記載して、次へ進みます。

3. シークレットが表示されるので、コピーします。

注意事項

  • シークレットは、この時のみ表示されます。必ずメモしてください。

  • もしコピーし損ねた場合は、再度「生成」ボタンをクリックしてください。新しいシークレットは、5 分間に 1 回までしか生成できず、生成しようとするとエラーが発生します。


Step 2:連携側の更新

API 連携しているアプリケーションやシステム側で、新しいシークレットへ置き換えます

注意:まずは、新しいシークレットで正しく動くかを確認する必要があります。

ちなみに、シークレットをステージングした後、ステージングされたシークレットとアクティブなシークレットのどちらを使用した認証リクエストも受け入れます。この動作により、ダウンタイムを最小限に抑えながらシークレットをローテーションできます。


Step 3:シークレットの有効化

Step 2 の挙動に問題ことがないことを確認したら、新しく生成したシークレットは、有効化が必要です。

注意:ステージングシークレットを有効化すると、以前のシークレットは完全に無効化され、新しいシークレットが有効になります。


なぜこの変更が必要なのか?

Salesforce により、以下のような脅威が確認されています。

  • 公開されたシークレットの悪用

  • 不正アクセス

  • フィッシングメールの送信

  • データの持ち出し

本対応はこれらのリスクを低減するための全体的なセキュリティ強化施策です。特定の顧客環境でインシデントが発生したことによるものではありません。


まとめ

  • クライアントシークレットに 180 日の有効期限が導入されます

  • 既存のクライアントシークレットは 2026 年 9 月 30 日で失効します

  • 今後は定期的な手動でのローテーション対応が必須となります

  • 未対応の場合、API 連携が停止する可能性があります


いかがでしたでしょうか。

今回の変更は単なる仕様変更ではなく、セキュリティ強化の一環として実施されたものです。
従来の「無期限で利用し続ける」という前提は、今回をもって完全に廃止されたと言えるでしょう。

本来あるべき形への移行とも捉えられますが、その一方で、手動での対応が必要となる場面が増えるため、設定ミスや対応漏れといったリスクには注意が必要です。

本リリースは影響範囲が広いため、早めの対策検討をおすすめします。
利用が無ければ無視できますので、まずは、自社環境で該当機能を利用しているかどうかを把握することから始めるとよいでしょう。

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら