flashを2021年以降もオフラインで使い続けるためにしておくべきこと(メモ)
対象となる読者
現在、Flashによるオフラインのコンテンツを運用していて、2021年以降も運用を続けたいと考えている方。調査中のため、2021年1月1日以降も下記の設定で動き続けるかは不明。随時更新予定。情報を頂けると、ありがたい。
更新:2021/1/28 internet explorerでActiveXによる「ブロックされているコンテンツを許可しますか」の表示を出さない方法
2021年以降どうなるのか?
オフラインでもFlashを実行できなくなります。詳しい情報については、公式のサポートページからご確認ください。アドビによるサポートが終了すると、オンラインやオフラインに関わらず、アドビがデフォルトでFlashをブロックするようになります。ブラウザで動くコンテンツだと、以下のような画像が表示されるようになります。
この記事ではブロックを回避するための設定方法について、記述します。
結論
・Flashが動作している環境の復元ポイントを作成しておく。
Adobe側ではブロックだけだが、WindowsではFlashを削除するアップデートが予定されている。戻す方法は復元ポイントを使って復元するか、OSの再インストールのみとなっている。
・mms.cfgというファイルを作成して、各OSごとの指定されたディレクトリに保存することで、ブロックを回避することができる。
・ブラウザで動作させる場合は、Microsoft EdgeでInternet Explorerのモードを使用するかInternetExplorer 11を使用する。下記を参照
下記の内容でmms.cfgを、Windowsであれば
C:\Windows\SysWOW64\Macromed\Flash に保存する。なお、管理者権限で開く必要がある。
mms.cfg
EOLUninstallDisable = 1
EnableAllowList = 1
AllowListRootMovieOnly = 1
AllowListUrlPattern = http://localhost/
AllowListUrlPattern = https://localhost/
mms.cfg内で何をしているか?
説明の前に、たびたびEOLという文字を目にすると思うが、これはFlashのサポート終了時期を意味しており、Flashの「End Of Life」の略である。
EOLUninstallDisable = 1
デフォルトの値は0。1の値はシステムの管理者に、フラッシュプレイヤーのアンインストールの推奨を止めさせることを許可する。
EnableAllowList = 1
デフォルトでは0である。システム管理者にフラッシュプレイヤーがallowURLsからのみロードすることを許可する。
EOLの後、EnableAllowListはデフォルトで1となり、mms.cfgでのセッティングは無視される。(ここではサポート終了前から、動作確認を行うために1にしている)
AllowListRootMovieOnly = 1
親のSWFにのみ、許可リストの制限を適用する。ロードされたSWFから任意のURLへの後続の要求は許可される。このオプションによってAllowListUrlPatternをシンプルにすることができる。
AllowListUrlPattern = http://localhost/
http://localhost/以下のディレクトリ内でのSWFの実行を許可している。
ブラウザでの動作確認
Windows10で動作するInternetExplorerで、フラッシュのコンテンツの動作確認を行った。その際に、下記のようなアラートが出た。
このアラートを消すために、Windowsの標準機能のIISを使ってサーバーを立てた。「http://localhost/~」でアクセスすると、アラートが何故かでなくなった。
また展示用のフラッシュコンテンツなので、batファイルからキオスクモードで全画面で立ち上げるようにしている。
start.bat
@echo off
start iexplore.exe -k http://localhost/~