当社ではGoogle Chrome用、Microsoft Edge用、Mozilla Firefox用(および、EメールクライアントのThunderbird用)拡張機能を多数開発・メンテナンスしています。 原則として開発した成果物のソースコードは公開しており、その多くはストアに掲載していますが、諸事情からストアには未掲載の物もあり、「具体的にどのような開発実績があるのか?」を知りたい方にとっては全体を把握しにくい状況にあるのは否めません。
そこで本記事では、現時点で各Webブラウザー製品にて使用可能な拡張機能を簡単な解説と共に列挙してみます。
情報流出対策
以下の拡張機能は、誤操作や人為的ミスによる機密情報の外部流出を防ぐことを意図して開発した物です。 「人間が注意力を発揮して防ぐ」ことには限界があるため、より効果的な対策を行うには「危険な操作はそもそもできなくする」「人間が注意するべき箇所を自動的に示す」などソフトウェアでの対応が有効です。
- Alert on paste private URL(Firefox)
- 「認証が必要で、限られた人しか閲覧できないWebサイトのURL」を事前に設定しておくことで、それらのWebサイト上でクリップボードにコピーした内容を、それら以外のWebサイト(SNSなど)の投稿フォームにペーストしたときに、警告を表示したり、ペースト操作自体を禁止したりします。
- ポリシー設定での集中管理に対応しています。
- Firefox、Chrome、Edgeで動作します。
- FlexConfirmMail(Thunderbird、Outlook)
- メールを送信する直前に宛先や添付ファイルなどの再確認を促して、誤送信の発生を防ぎます。
- ポリシー設定での集中管理に対応しています。
- Upload Blocker(Firefox)
- Webページ上のフォームを用いたファイルの送信操作を禁止します。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
操作を制限する物
以下の拡張機能は、特定の用途向けのデジタルサイネージのようにWebブラウザーを運用する上で必要となる動作制限を実現する物です。 Webブラウザー本体に元々備わっているカスタマイズ機構では要件を満たせない場合も、拡張機能を用いることで柔軟な制御が可能です。
- Download Blocker(Firefox)
- 特定のContent-Typeのファイルのみダウンロードを許可し、それ以外の種類のファイルのダウンロードを禁止します。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- PrintCanceler
- 事前の設定で許可したWebページでのみ印刷操作を許可し、それ以外の場面での印刷操作を禁止します。
- Edgeではポリシー設定によって印刷操作を禁止できますが、「このページの印刷は許可する」「このページの印刷は許可しない」といった制御は行えません。この拡張機能は、印刷操作の禁止についてより柔軟な制御を可能とします。
- 現時点ではEdgeでのみ動作し、ChromeやFirefoxで使用するには改修が必要です。
- 事前の設定で許可したWebページでのみ印刷操作を許可し、それ以外の場面での印刷操作を禁止します。
- RepostConfirmationCanceler(Edge)
- WebフォームからPOSTメソッドで内容を送信した後に表示されたページを再読み込みしようとした際の「フォームの内容を再送信しますか?」のダイアログを自動でキャンセルすることにより、再読み込みによる意図しないフォームの再送を防ぎます。
- Webアプリ側の改修による再送対策を取れない事情がある場合に有用です。
- 現時点ではEdgeでのみ動作し、ChromeやFirefoxで使用するには改修が必要です。
消費メモリー量を削減する物
以下の拡張機能は、システムの負荷を抑えるためにWebブラウザーの動作に一定の制限を設ける物です。 クライアント数が非常に多い環境や、調達可能なコンピューター資源が制限されている場面などで、コストの増大を回避しながらの運用を支援します。
- Duplicated Tabs Closer
- URLが同じである重複したタブを検出して自動的に閉じるようにします。
- 使用可能なメモリー量に厳しい制約がある状況(複数クライアントから1台のWindows Serverへリモートログインして使用する場面など)でのブラウザーの動作パフォーマンスを維持します。
- ポリシー設定での集中管理に対応しています。
- Chrome、Edge、Firefoxのすべてで動作します。
- Flexible Expire History by Days
- アイドル状態(ユーザーがPCを操作していない状態)が一定以上の時間発生したタイミングで、指定日数以前の履歴を自動消去します。
- ポリシー設定での集中管理に対応しています。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- Keep in tab
- リンクの遷移時に自動的に新規タブを開くように実装されているWebサイトにおいて、新規タブが無闇に開かれないようにします。
- 使用可能なメモリー量に厳しい制約がある状況(複数クライアントから1台のWindows Serverへリモートログインして使用する場面など)でのブラウザーの動作パフォーマンスを維持します。
- ポリシー設定での集中管理に対応しています。
- 現時点ではChromeとEdgeでのみ動作し、Firefoxで使用するには改修が必要です。
- Reload on Idle(Firefox)
- アイドル状態(ユーザーがPCを操作していない状態)が一定以上の時間発生したタイミングで、タブを強制的に再読み込みします。
- Webページの実装やブラウザーの実装上の制約によって、メモリーリークに類する現象の発生を避けられない状況において、通常の使用になるべく影響を及ぼさずにメモリー不足の発生を回避します。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
運用負荷を軽減する物
以下の拡張機能は、特殊な運用を取る必要がある場面やユーザーの手動操作が必要な場面について、面倒を減らして運用負荷の軽減を図る物です。 抜本的な解決には大がかりな対応が必要な場合でも、拡張機能を用いて現実的なコストの範囲で課題を解決できます。
- GitHub Wiki ToC Generator(Firefox)
- 現在表示中のGitHub Wikiのページを解析して、見出し情報から目次のリストを自動生成します。
- ページ内の見出しからの目次の自動生成に対応していないタイプのWikiを運用する場合や、自動生成の目次を本文領域内に埋め込みたい場合などに有用です。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- List Addons in Windows' Programs(Thunderbird)
- ブラウザーに導入されている拡張機能の情報を、Windowsのインストール済みアプリ一覧に転記するようにして、拡張機能の管理の一元化を支援します。
- 現時点ではFirefoxおよびThunderbirdでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- Open new tab for target blank
- ブラウザー自身の設定によってリンクから新規タブを自動的には開かない(現在のタブにリンク先などを読み込む)運用を取っている場合に、
target="_blank"指定されたリンクのみ特別にタブで開くようにします。 - 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- ブラウザー自身の設定によってリンクから新規タブを自動的には開かない(現在のタブにリンク先などを読み込む)運用を取っている場合に、
- ProxyDialogAutoFiller
- 認証が必要なプロキシーを使用していて、認証情報を正規の手順で各端末に配布・反映することが難しくユーザー自身での手動認証操作がどうしても必要な場合に、認証操作を自動化します。
- 現時点ではEdgeとChromeでのみ動作し、Firefoxで使用するには改修が必要です。
- Remove duplicated linebreaks from textarea(Firefox)
- 他のアプリケーションでコピーした文字列をWebページのテキスト入力欄に貼り付ける際に、元の文字列の改行コードがCR+LFと解釈されて貼り付け後のテキストの改行が二重になってしまう場面で、重複した改行を自動的に取り除きます。
- コピー&ペーストで無駄な改行が発生しやすい運用状況下で有用です。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
ブラウザーの動作の差異を吸収して互換性を向上する物
古いIE向けに制作されたWebサービス(Webアプリ)は、現代のWebブラウザーで閲覧すると、細かい部分の動作の差異によって期待通りの結果を得られなくなることがあります。 IEの暗黙的な振る舞いを他のブラウザー上で拡張機能を使って再現することで、Webサービス側の大がかりな改修なしにブラウザーの移行が可能となります。
- Merge Named Browser Windows(Firefox)
window.open()やtarget属性によって同じ名前のウィンドウやタブが開かれる場面で、すでに開かれている同じ名前のウィンドウやタブがある場合に、すでに開かれている方と新しく開かれた方のどちらか片方だけを残すようにします。- ポリシー設定での集中管理に対応しています。
- Chrome、Edge、Firefoxのすべてで動作します。
- Unminimize Browser Window On Load
- 最小化されたウィンドウ内のタブでページの読み込みが発生したときに、ウィンドウの最小化を自動的に解除します。
- ポリシー設定での集中管理に対応しています。
- Chrome、Edge、Firefoxのすべてで動作します。
その他、利便性の向上を図る物
以下の拡張機能は筆者が必要に迫られて個人的に開発・公開している物ですが、日常の業務においても業務効率の改善に寄与しているため、参考として併せてご紹介します。
- Copy Selected Tabs to Clipboard(Firefox)
- 複数のタブでWebページを開いて閲覧している場面で、それらのタブを選択して、URLなどの情報を任意の書式でクリップボードにコピーする機能を提供します。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- ポリシー設定での集中管理に対応しています。
- Save Selected Tabs to Files(Firefox)
- 複数のタブで画像やWebページなどを開いて閲覧している場面で、それらのタブを選択してダウンロードフォルダー下にまとめてダウンロードする機能を提供します。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- ポリシー設定での集中管理に対応しています。
- Second Search(Firefox)
- 社内Webサイトなど、OpenSearch形式の検索プラグインが提供されていない検索窓について、ブラウザーのUI上から直接検索を実行できるようにします。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- ポリシー設定での集中管理に対応しています。
- Text Link(Firefox)
- リンクになっていないURL文字列がWebページ中に登場する場面で、リンクになっていないURL文字列をダブルクリックすることでリンクのように開きます。
- 現時点ではFirefoxでのみ動作し、ChromeやEdgeで使用するには改修が必要です。
- ポリシー設定での集中管理に対応しています。
- Tree Style Tab(Firefox)
- 階層表示に対応した縦型のタブバーを提供します。情報を深掘りして調査する必要がある場面で、検索結果からタブを複数開き、それらのタブからさらにまた詳細情報をタブで開いた後、それらを行き来しながら内容を突き合わせる、といった作業を行う場面でタブを探し直すストレスを軽減します。
- Firefoxでのみ動作し、技術的な制約のためChromeやEdgeでは使用できません。
- ポリシー設定での集中管理に対応しています。
まとめ
以上、当社で手がけていて現行のブラウザーで使用可能な拡張機能を簡単にご紹介しました。
ここでご紹介した拡張機能は、動作する場面や設定で動作を変更可能な範囲・動作するブラウザーなどが限定されている場合がありますが、その多くは技術的な制約よりは、単純に開発時の要件を満たすための最小限の実装のみを行ったためにそうなっている、という状況にあります。 「説明を見た感じでは有用そうだけれども、うちで運用するにはこの部分の機能が不足している」といったミスマッチがある場合は、サポート契約の範囲内で要件に合わせた改修を承ることも可能です。 Chrome、Edge、Firefox(およびThunderbird)の運用で何かお困り事がある企業の運用担当者さまは、是非お問い合わせフォームよりご連絡下さい。