Google Chrome 80におけるSameSite Cookie仕様変更のDocusignアプリへの影響について
2020年2月にリリースされたGoogle Chrome 80におけるSameSite Cookieの仕様変更に関する詳細、それに伴うDocusignアプリへの影響の可能性や回避策について解説します。
本ブログは、2020年2月5日にリリースされた以下の米国版のブログの抄訳です。追加情報があれば、本ブログやTwitter(@DocuSignDevJP)にて随時お知らせいたします。
Chrome v80 cookie behavior impacts Docusign apps
どのような変更ですか?
Google社はChromeブラウザのセキュリティを日々改善しています。Chrome 80以降、ChromeはSameSite Cookieのデフォルト属性値を変更し、安全でないCookieをブロックします。これらの変更は、複数のフェーズでリリースされる予定です。重要なマイルストーンとして、
Chrome 80安定版リリース: 2020年2月4日 ※ 訳者注記: すでにリリースされていますが、SameSite関連の設定はまだ変更されないバージョンです。
Cookieデフォルト設定の変更(Enforcement Rollout): 2020年2月17日
a. CookiesのデフォルトSameSite設定 = Lax
b. SameSite = Noneの安全でないCookieはリジェクトされる
この変更は、Cookieに依存してユーザーセッションを保存および追跡し、さまざまなドメインでホストされているWebページに埋め込まれて使われているアプリケーションに影響を与えます。 Docusignはこの問題を認識しており、現在、Docusignが所有するすべての製品に対して修正を行うよう取り組んでいます。
ユーザーにどのような影響がありますか?
2月17日以前に、ChromeのSameSite Cookieの設定をお客様が行われた場合、以下のようなエラーが発生する可能性があります。
埋め込みページにてエンベロープの送信や署名を行うページを表示すると、その埋め込み部分で空白表示される
空白ページが表示された際に、「XXXは接続を拒否しました。」(XXX refused to connect.)というエラーメッセージが表示される
ログインに失敗し、ユーザーは[ログイン/ログアウト]ページにリダイレクトされる
エラーページが読み込まれ、「Bad request」というエラーメッセージが表示される
APIなどでシステムと連携している場合、間違ったベージが表示される(例: フィールド配置を行う送信者画面ではなく、ホーム画面が表示される)
回避方法
この変更がご利用のDocusign環境に影響がある場合、ご利用中のアプリケーションがコンプライアンスに準拠できるようになるまで、Chromeを以前の動作に戻すことができます。
ご注意: これらの設定は、セキュリティに関連するものです。Chromeのフラグ設定の変更を適用する前に、必ず御社ITご担当者とご確認くださるようお願いいたします。
Chromeブラウザを開き、URLアドレスバーに「chrome://flags/」と入力
検索ボックスに「SameSite」と入力し、フラグ設定を検索する
下記のスクリーンショットにある、2つの設定を「Disabled」に変更
Chromeブラウザを再起動
バックエンドで何が変わっていますか?
システム連携しているアプリケーションでは、全てのCookieに次の設定変更を行う必要があります。
Cookieに「SameSite=None」属性を追加する
Chrome 66以前などの一部の古いブラウザー、およびMacOS 10.14またはiOS 12上のSafariは、SameSite属性をサポートせず、この属性を持つCookieを拒否します。 そのため、アプリケーションは古いバージョンのブラウザをチェックし、検出された場合にSameSite属性を送信しないようにする必要があります。
Cookieに「Secure」属性を追加する
IFrameにサードパーティのサービスを埋め込むアプリケーションは、サードパーティのサービスがSameSiteおよびSecure属性を正しく送信していることを確認する必要があります。