ExcelOpen をログインと連携したセキュアな仕組みへ変更する方法

■ ExcelOpenの現在の動作
XcuteでExcelOpenを実行すると、ブラウザからExcelOpenのファイルがダウンロードされます。
データを更新後に送信ボタンを押下してテーブルの値を変更後にExcelOpenのファイルは閉じますが、ダウンロードされたExcelOpenのファイルはそのままクライアントに残ります。

■ ExcelOpenの問題点
Loginの仕組みを利用してセキュアな運用で利用している時に、上記の仕様のままだと問題があります。
ダウンロードしたExcelOpenは、ログインしていない状態で開いてもデータの送信が可能となってしまいます。

■ セキュアな仕組みへの変更方法
ブラウザ間でセキュアな仕組みにする場合は、R1C2セルで取得したcookieの値をR1C7セルとR3C7セルのmycookieを参照するだけで実装できます。
しかし、デフォルト状態のExcelOpenでは、受け取りシートに送信するセルの範囲内にcookieの値を含まないため、セキュアな仕組みにできません。
そのため、ExcelOpenの送信範囲にcookieの値を渡して送信側で参照するように変更することで、セキュアな仕組みとなり、未ログイン状態でExcelOpenを開いて送信ボタンを押下してもエラーとすることが可能となります。

■ ひな形の修正方法
Excelopenのファイルで、R5C11セルに記述している範囲にcookieで指定したセルを含めるように変更すれば可能となります。
R1C2セルのCookieコマンドのデフォルト値は「R4C1」なので、デフォルト値を利用した場合は送信範囲にR4C1を含めるよう送信範囲を変更することになります。
しかし、XcuteではExcelOpenの実装時に下記事項を推奨しています。
・送信範囲は必要最小限の範囲とする(実行速度に影響がでるため)
・送信範囲は、動作に必要なパラメータを設定する行(5行目)を含めないように指定する
上記を満たすためには、cookieの出力セルをデフォルト値のR4C1セルから他のセルへと変更し、cookieの出力セルの変更に伴う修正を行うことが必要となります。

確認のためのサンプルプロジェクトと具体的な修正方法については、添付ファイルを御覧ください。

以上