Saturday, July 11, 2020

「TextExpander」「TypeIt4Me」などスニペットの「Secure Input」問題を解決する


「TextExpander」や「TypeIt4Me」といったスニペットは、Macの文字入力を劇的に高速にしてくれるツールだ。特に、複数の定型文を高速に入力しなければならない場面によく出会う人は、必携と言ってもいい。

ただ、スニペットのトラブルでよく見るのが「Secure Input」問題だ。パスワードなど高度な安全性が求められる文字列を入力する際、その入力を他のアプリが横から見ることを許さない。一方で、スニペットは文字入力を横から監視していないと動作しないアプリなので、「Secure Input」機能とはあまり相性がよくない。10年以上前から、事あるごとに「動かない」というトラブルが報告されせているようだ。

When these browsers display a password field, they turn on secure event input so that no one, including TextExpander, can peek at your passwords. Problem is, if you use the Return key to submit a form from within its secure field, they won't turn secure event input off. This appears to be a bug they've inherited from some Firefox code they use. 
The workaround is to use the submit button rather than using Return in the password field. 1Password is similarly affected by this bug. The workaround there is to turn off auto-submit and just use auto-fill then press the button to submit. 
THE SOLUTION: Usually when you quit the application that enabled secure input (permanently) it will be disabled and all will be back to normal.
TextExpander vs Typeit4me: one bug to rule them

ここではFirefoxの問題とされているが、Chromeでもなんでも同じで、要は「Secure Input」をオンにしたアプリが、ちゃんとオフにしないで動いているから、他のところでもスニペットが動かないのだ。

時々、同じ問題で苦しむことはあったものの、何かの拍子で元に戻ることが多かったので、特に気にしないでいた。しかし、今回はちょっとしつこかった。いくつかのアプリを終了しても、エディタもブラウザも「TypeIt4Me」の動作を受け付けないので、試しに「TextExpander」をインストールして試用してみたら、こんな画面が。

見ると、電子ペーパー同期用アプリの「Digital Paper App」が引っかかっていると書いてある。これは助かる。喜び勇んで終了するものの、まだ「Secure Input」を有効にしているアプリがあるようだ。今度は「Unknown App」が邪魔していると書いてある。なんだよそれ!

ちなみに、TextExpanderは「Secure Input」が有効なとき、ステータスバーのアイコンで黄色い三角を表示してくれるので、わかりやすい。まあ、実際にスニペットで変換される文字列を入力してみればいいんだけどね。

で、最終的に引っかかっていたのは、Vivaldiだった。もちろん、Vivaldiが悪いのではなく、パスワードの入力画面が表示されたままのタブが最前面に出ていたのが原因だ。


アプリそのものがアクティブ(=最前面になっている)なわけでもないのに、このタブが最前面にいるために、システム全体で「Secure Input」が有効になってしまう。ブラウザを複数同時起動したり、ブラウザのウィンドウを複数起動したりしていると、気づきにくく、このミスを誘発しやすくなる。

スニペットをMacでバリバリ使っている人こそ、十分注意したほうがいいだろう。

No comments: