現在の「ソフトウェア製品」は、そのほとんどが何かしらのクラウドオンラインサービスと連携しているかと思います。
以前は、PCショップみたいなところで箱に入ったソフトウェア製品を購入して、その中に入っているインストール用のDVDなどを使って製品をインストール、といったことが主流だったと思いますが、
しかし現在ではそのインストーラーもほとんどがWebサイト経由でのダウンロードによるものとなっており、
たとえ店舗で「ソフトウェア製品」の箱を購入しても、中に入っているのはダウンロード用のサイトへのURLと、認証用のコードが入っているだけ、という場合が多いかと思います。
そしてソフトウェア製品を提供する側も、上記のような現代の事情に合わせて、その作業のほとんどがクラウド上で行われており、
ソフトウェア製品を利用するお客様のデータなどもすべて、クラウド上にあるというのが現在の状況だと思います。
となると、そのクラウド上にあるソフトウェア製品本体や、お客様のデータが入っているところにアクセスするためのセキュリティ認証というのは、当然ですが とてつもなく強固でなくてはならないと思います。
そこで、我々のチームでは(というか全社的に、もしくは業界全体的に広く使用されていると思いますが)、その製品本体やデータベースへのアクセスのためセキュリティ認証のひとつとして、Yubikeyという物理的なキーを使用しています。

<一般的なUSBメモリなどと同じくらいのサイズです>
このYubikeyを使用した認証は、現在主流である電話などを併用しての二段階認証よりもさらに上のレベルのセキュリティ認証とされておりまして、
このYubikeyをUSBポートに刺してセキュリティ認証をしないと、プロダクション(製品本体や、関連データ)にアクセスすることができません。
このYubikeyは、開発者ひとりひとりが個々のものを持っており、中には秘密キーが入っているわけですが、
とにかく、開発者としては、これがないとほぼ仕事になりません![]()
このYubikeyを例えば忘れて会社に来たとすると、もうアウトです![]()
別の方法で認証することはできません。
(よく、二段階認証ができない場合のために秘密の質問などを設定しておくサービスがあると思いますが、プロダクションへのアクセスはそういった代替認証を認めていません)
なのでその日は、Yubikeyを取りに行くだけのために一度帰宅するしかありません
。
もちろん、そのYubikeyを悪意のある人が盗んだとしても、それを刺しさえすればログインできるわけではなく、Yubikey自体のPINを知らなければそもそも使えませんし、それにYubikey以外にもログインのために必要な特殊な要件がありますので、
仮にYubikeyを盗んでかつPINも何かしらの方法で(例えば本人を拷問して吐かせるなどして
)知ったとしても、まだプロダクションにはアクセスできません。
また、万が一自分のYubikeyを紛失してしまったら、セキュリティチームにそのなくしたYubikeyを無効化してもらい、新しい秘密キーを格納したYubikeyを再発行してもらう必要があります。
さて、このYubikeyなのですが、以前はそこそこの大きさがあり(長さ3センチくらい?)自分のPCに刺しっぱなしにしてそれを持ち運ぶと、確実に折れてしまいました![]()

このタイプのYubikeyを使っている人は、家と会社を行き来する際に、毎回PCからYubikeyをはずした状態にして、それぞれを運ぶ必要があったので、
Yubikeyをポケットに入れたつもりが入っていなかったとか
、
会社の机の上に置きっぱなしで帰ってしまった、といったトラブルが起こりえたのでした。
しかし、現在では以下のようなタイプの、頭がとても小さいタイプのYubikeyを発行してもらえるので、

これであれば、USBポートに刺しっぱなしにして、PCの方の持ち運びのみに気を使えば、Yubikeyだけなくすとか、折れてしまうといったトラブルを回避できると思います。![]()

(わかりにくいですが、右側のUSBポートにYubikeyが刺さっています)
私は正直、実際にこのタイプのYubikeyを入手するまでは、小さすぎて心もとなく、なんとなく不安だったのですが
、
実際にこのタイプのYubikeyを入手して使用してみたら、もう便利すぎて
、
当然これをPCに刺したままにしておけば、紛失したり壊したりするリスクは軽減されますので、運用しやすくなりました![]()
※なお、このYubikeyという認証用デバイスは、秘密の独自デバイスではありません![]()
そのKey自体は普通に市販されていますし、あらゆる団体や企業で導入することが可能です![]()
ただやはり、普通の電話やSMSの二要素認証に比べて手間がかかりますし、そもそも普通の二要素認証はすでに極めてセキュアな認証ですので、よほどの重要な秘密保持をするのでない限り、導入することはないものと思われます。

