created_at
updated_at
tags
toc

1Password AC #2: Master Password をマルチアカウントで使い回すべき理由

Intro

このエントリは、1Password Advent Calendar の 2 日目である。

このシリーズでは、組織において 1Password Business を運用する上での考慮点を解説していく。

個人で 1Password を使っている人が、1Password Business を導入している組織にジョインする場合、新しく組織用のアカウントが発行される。

つまり、1Password をマルチアカウントで運用することになる。関わる組織が増えていけば、切り替えるアカウントもどんどん増えていくが、1Password はマルチアカウントの UI がよくできているため、負担になることは特にないだろう。

このとき、追加する別アカウントの Master Password は、それまで使っているものを「使い回す」ことが推奨されている。

「パスワードを使い回すのは避けるべき」というのが、認証において啓蒙し続けられた基本だった。ではなぜ 1Password のマルチアカウントでは、推奨されるのだろうか。

覚えるべき最後のパスワード

ただ 1 つの Master Password のみを記憶し、それ以外は全て忘れて良い

これが 1Password の基本的な考え方だ。

これは、アカウントを複数作っても同じである点に注意したい。

例えば、Jxck がすでに jxck@example.com の個人アドレスで 1Password を個人利用していたとする。

その後、Business Account として jxck@example.co.jp のアドレスでチームに入る際は、jxck@example.com で作った Master Password と同じものを設定するのが推奨だ。

If you already have a 1Password account, consider using the same password you already use.

https://support.1password.com/multiple-accounts/

Master Password を持っていたら使い回しを促すパスワード登録画面

認証の原則は、「パスワードを使い回さない」だったため、マルチアカウントを追加する場合も「Master Password は作り直すべき」と思うかもしれない。

では、なぜ使い回すことが推奨なのかを知るために、1Password のマルチアカウント設計を紐解いていく。

Multi Account

1Password は、ユーザが様々なチームに参加する場合、それぞれにアカウントを作り、アプリ内でアカウントを切り替えて使うように設計されている。

マルチアカウントの設計方針には、様々なバリエーションがある。例えば、ユーザがただ 1 つのアカウントを持ち、そのアカウントをチームに追加する方式を考えてみよう。

マルチアカウント

ところが、1Password はチームのスコープの境界を、ドメインによって行っている。チームに参加できる人は「そのドメインのメールアドレスを持っている」という事実で確認しているのだ。

したがって、1Password ではチームにジョインするために、そのメールアドレスのアカウントを新しく作り、それを追加する。個人アカウントも、個人メールで作ったマルチアカウントの 1 つという運用だ。

メールに紐づいたマルチアカウント

これは、どちらかというと「アカウントが複数ある」というよりも、「一人のユーザに、メールアドレスごとのスコープが切られている」という状態に近いと考える方が良いだろう。

これにより、ユーザは「私用のクレデンシャル」と「業務用のクレデンシャル」を、別のアカウントに紐づけて保存できる。そして、例えばその社員が退職して組織を抜ける場合、組織管理者は組織用に発行したアカウントを削除でき、「業務用のクレデンシャル」は全て消え、「私用のクレデンシャル」は残る。

この運用ができるのが、1Password のマルチアカウントが、メールアドレスに対して追加されることのメリットだと言える。

無意味な二段階アンロック

個人事業主で、様々なチームと並行して作業する場合、マルチアカウントがどんどん増えていくことになる。

Business アカウントを提供する組織側が、「Master Password は他のパスワードを使い回さず、新たに専用のものを作成すること」といったルールを強制したとしよう。

当然、既存の 1Password ユーザは、Password Generator で新しいパスワードを作り、それを私用の 1Password に保存することになる。

これは、ステップが増えただけで、正規化すれば「私用の Master Password で業務用アカウントに入っている」のと変わらない。

それを防ぐために「Master Password は私用の 1Password には保存しない」などと追加のルールを設ければ、参加する組織の数だけ、別々の Master Password を記憶に頼って使い分けることになるのだ。

こうなると、必然的に「覚えやすい Master Password」を考えるようになってしまう。

また、マルチアカウントをアプリや拡張で切り替える場合、Master Password が異なると認証をやり直す必要が出る。それが続けば、覚えやすいだけでなく「打ちやすい Master Password」に自然となり得る。

覚えやすい Master Password

Master Password は、他の全てのパスワードを集約しているため、十分に安全で堅牢なものを指定する必要がある。にもかかわらず、複数必要なために、覚えやすく打ちやすいパスワードを作るとなると、総体的な安全性が低下してしまうのだ。

そこで、ユーザは Master Password を 1 つだけ用意し、全てのアカウントはその Master Password を使ってアンロックするのが推奨となる。

Master Password を共通利用

代わりに、その「覚えるべきたった 1 つの Master Password」は

  • 十分長くて推測も総当りも不可能
  • 記憶以外どこにも保存されていない
  • その 1 つだけを死守し他は覚えなくて良い

という運用をするのだ。

「では、どうやって堅牢な Master Password を作るべきか」は別のエントリで解説する。

アカウント固有の Secret Key

それでも、ユーザが Master Password を適切に管理しきれるかは、組織側では管理しきれない。仮にユーザの Master Password がどこかで漏洩したら、ユーザがアカウントを持っているすべてのチームに侵入可能になってしまう。

したがって、1 つの Master Password だけで全組織のクレデンシャルがアンロックできることは、組織側の懸念を消すことはできない。これを防ぐために、1Password は各アカウントごとに異なる Secret Key を発行している。

最初にログインする際に二要素目として入力するため、もし攻撃者が Master Password だけを手に入れても、どのアカウントにもログインはできない作りだ。仮に Secret Key が一緒に漏洩したとしても、被害に遭うのはその組織だけで、別の組織にまで被害が及ぶことはない。

Secret Key は、1Password 側が作る十分に長いランダムな文字列であり、十分に長いため記憶に頼って保存することはできない。つまり、実質的に「保有」の追加要素であり、2FA として機能する。しかし、ログイン時に一度使うだけであるため、通常の利用で毎回入力する必要がない。

Business での 2FA

Business アカウントでは、これに加えて TOTP の 2FA を有効にすることもできる。いわゆる Authenticator で QR を読み取り、ログインの際には表示される乱数を入力する方式だ。

これがあれば、Secret Key が漏洩しても、アカウントを奪うことはできなくなる。

「2FA を有効にするなら、Secret Key はいらないのでは?」と思うかもしれない。

実は、1Password で 2FA の有効化は、Personal でも Business でもできる。しかし、Personal でそれをやると詰んでしまう可能性があるため、実際に運用が可能なのは管理者がリカバリできる Business だけだろう。

このリカバリ周りの運用については、別エントリで解説する。

1Password の運用

以上より、1Password のアカウントは以下のように運用することになる。

  • Master Password
    • 十分に堅牢で長いパスワードを作成する
    • それを記憶にのみ保存する
    • 全てのアカウントで共通して使う
  • Secret Key
    • 1Password がアカウントごとに発行する
    • 所有要素として厳重に保管する
  • TOTP 2FA
    • Business では有効にする

Outro

「Password は使いまわしてはいけない」というルールは、パスワードマネージャを使わずに、サービスごとにパスワードを作って、記憶に頼った運用をしていた時代が前提となる。

1Password を使用している時点で、個々のサービスのパスワードは十分に安全な乱数を個別に発行し、それを集約して保管することができているため、その懸念はもうない。

一方、「パスワードマネージャのパスワード」は、それらを集約し「覚えるべき最後のパスワード」となるため、そこで考えることは、従来のパスワードとは前提が異なるのだ。

1Password 以外にも別のパスワードマネージャを使用している場合はまた話が別だが、1Password 内のマルチアカウントについては、1Password の推奨する通り「持っている 1 つを共通して使う」で問題ないことを、自信を持って運用できるように解説した。

もちろん、そのために Master Password は十分に堅牢である必要がある。

「そんな Master Password はどうやって作ればいいのか?」については、次回解説する。