目的/内容
パスワード管理ツール「KEEPER」の導入に関する内容をブログ化してみました。KEEPERを導入検討されている方、是非ご覧ください。
そもそもパスワード管理ツールっているの?
組織で仕事をする際は、自分一人だけではなく複数で一緒に仕事をするパターンもあると思います。そんな時に様々な事象があると思います。
パスワード共有機能
“組織単位”ではなく、プロジェクト単位/担当アカウントなど、任意に指定したユーザー間でパスワードを管理出来ます。パスワード管理は特定のアカウント情報だけを共有したり、フォルダ単位(アカウント情報を複数保存している場合に有効)で共有設定を施す事ができます。
パスワード生成機能
KEEPERではランダムな文字列を組み合わせたパスワードの自動生成が可能で、アカウント情報をよりセキュアに保護することができます。またパスワードの生成は文字数/利用文字などの条件指定が可能です。
KEEPER導入前の状態
クラウドネイティブではIdPにOktaを利用しており、パスワード管理ツールはLastPass Enterpriseを利用してましたが、今回はKEEPERに変更する事で 以下の組み合わせとなりました。
Before 「LastPass」+「Okta」
After 「KEEPER」 +「Okta」
KEEPER移行準備(環境編)
KEEPERとOktaのSSO連携
※ SSO連携するまでは自前のアカウント(メールアドレス+マスターパスワード)でのログインとなります。
KEEPER管理者コンソール画面より「ノードを追加」を選択します。
2. 利用する際の名称(任意で入力)を入れて「ノードを追加」を選択するとベースとなる環境が作成されます。
続いてOktaと連携する為の初期設定を行います。
作成したノードを選択し、プロビジョニング > メソッドを追加 を選び、SSO連携の設定を進めます。いくつかの選択肢がありますが、今回は「SSO Connect(TM) Cloudを使用したシングルサインオン」にて設定を行います。
環境設定名/法人ドメインを登録する
識別しやすい名称を入力します。当社では以下の通り入力しました。(環境設定名:SSO 法人ドメイン:cloudnative.co.jp)
Okta上KEEPERアプリ追加
Oktaのアプリケーション管理画面にて「KEEPER」を検索し、アプリアイコンを選択します。
基本設定画面内「ServerBaseURL」欄を探す
General >App Settings に項目「ServerBaseURL」があります。こちらにKEEPERで発行されたURLを貼り付けます。
KEEPER管理者コンソールよりSSO設定画面を開く
証明書のアップロード+注意点
SSO連携させる為のURL(法人ID)をコピーし、Oktaに入力します。Okta側の管理画面の不具合?のようですが、証明書アップロード時に「ファイル選択が出来るもののアップロードが出来ない。」という問題にあたりました。結論からいうとOkta画面のレイアウトが悪くアップロードボタンが隠れてしまっていました。(マウスでボタンを直接クリックできない為、Tabキーでページ内カーソル移動)
- Browseボタンを押して証明書を選択した時の画面
2. 「Enable Single Logout」 横のチェックボックスにカーソルを合わせてからキーボードの「Tab」キーを押してカーソル移動することで、Uploadボタンにたどり着けました。(ゲームの隠しコマンドみたい。。)
※ 3月30日時点で、Okta側の表示エラー(Uploadボタンが見えない状態)が治っている事を確認しました。現在は下記の通り問題の無いレイアウト/表示となっています。
KEEPERとOktaのプロビジョニング連携Oktaのプロビジョニング設定へアクセス
Okta内KEEPERアプリのプロビジョニング設定を開き、Base URL項目を確認します。(赤枠)
KEEPER側設定 新規作成
管理者>プロビジョニング画面内「メソッドを追加」より新規設定を作成します。
連携方法の選択、接続URL&トークンの貼り付け
連携方法(今回はSCIM)を選択し、進めていきます。
SCIMを選んで、次へ。
次画面で発行されたURLとトークンをコピーし、Okta設定画面に張り付けて連動設定は完了です。
連携確認
SSO/プロビジョニング 両方の設定がうまくいくとステータスが「アクティブ」になり、正しく連携出来ている事が確認できます。
プロビジョニング時の注意点
KEEPERとOktaはSSO連携だけでなく、ユーザープロビジョニングにも対応し、ユーザー情報以外に所属グループ/環境も引き継ぐことが出来ますが、ユーザープロビジョニングを行うには予めいくつか設定が必要な点があります。
クラウドネイティブでは「administrator」、「backoffice」、「general」の3つのグループを運用をしていますが、それぞれ以下の注意点があります。
Oktaと連携させるグループ
連携させるにはKEEPER内にOktaと同名グループのチームがある必要があります。連携させるグループ名と同名でKEEPERのチーム内にグループを「手動で作成」します。
適用させる強制ポリシー
連携させるグループをロール内に作成します。当社では「general」というロールを連携用に作成しました。
チームに紐づくロール
チームに適用されているロールは画像右下赤枠部分で確認することが出来ます。またロール横の+ボタンをクリックする事でそれぞれのチームに対してロールを割り当てる事が出来ます。
ロールへのユーザー追加について
チームにロールが追加されていればメンバーは全員適用となりますが、チームに所属してないメンバーをロールに追加したい場合は「ユーザー」より個別でユーザーの追加が可能です。ユーザー追加画面にて該当行のチェックボックスを選択し、OKを押すことで追加されます。
テナント(環境)に合わせたKEEPER基本設定(管理コンソール)
テナントにおける標準設定は「強制ポリシー」と呼ばれる画面にて適用が可能です。
(例:ログインプラットホーム制限、モバイルデバイスにおける生体認証ログイン、MFA、ボルト制限、ログインセッション時間制限)
今回、KEEPER上のCNテナントでは以下2つの設定を有効化しました。
PBKDF2最小反復回数
- 指定なし →「100,000回」に変更。
- 暗号化システムの1つ。Wiki上のテキストではありますが、2011年時点でLastPassはサーバ側で100,000回のストレッチングをしている。との事で同等の数値に設定しました。詳細はこちらへ。
アカウント移転に関する同意
何かしらの事情でユーザーアカウントを削除、無効化する際に 該当アカウントに残されたデータを組織の管理者に移転する為の同意です。
予め、ユーザーの同意を得る事で、ユーザーデータを管理者に引き継ぐ事が出来ます。
※ ユーザーへは初回ログイン時に移転の同意を求める画面が表示されます。
注意点:SSO(Okta)との設定重複
クラウドネイティブではOkta側で設定(パスワード文字数、文字列)を設定している為、細かな設定はOkta側の設定を優先する為、KEEPER上でのポリシー(設定)は無しとしました。
KEEPER移行準備(ユーザー編)
CSV形式でユーザーデータ移行
注意)LastPass、KEEPER どちらのシステムもセキュリティの観点から、管理者が一括してユーザーデータをエクスポート/インポートする事は出来ませんのでデータは個々で移行作業が必要となります。
LastPass、KEEPER共にメニュー画面からCSV化(データのやりとり)が出来るので、移行作業は比較的簡単に行えます。
- LastPass CSV画面
- KEEPER CSV画面
もちろんLastPass上でフォルダ分けしていた設定もKEEPER上で同様に引き継ぎされますので、移行後の情報整理も容易です。
ユーザーデータ移行時の注意点
- LastPassからCSVエクスポートをする場合はブラウザ拡張機能(例:Chrome拡張)から設定画面にログインしないとエクスポートが出来ない(仕様)という制限があります。
- LastPassからCSVエクスポートする際、エクスポートデータに既存の共有フォルダがある場合(例:Shared-General)は、KEEPERインポート時に間違って重複登録/シェアしないよう注意が必要です。
- 他のパスワード管理ツールを使用中の方も一度テストを実施してご確認ください。
- KEEPERシステム上で共有設定を行う事で、登録しているサイトパスワードを組織内のユーザーにシェアする事が出来ます。(個々の登録データ、フォルダ単位で設定可能)
KEEPERへの運用並行期間
移行実施中の注意事項
LastPassとKEEPERの一時的な重複(ブラウザ拡張機能)
KEEPERインストール後、パスワード管理ツールが干渉してしまう為、速やかにLastPass(ブラウザ拡張機能)をアンインストールします。
ブラウザ拡張機能の提供設定変更(強制→任意)
クラウドネイティブではGoogleWorkspaceで強制的にLastPassのブラウザ拡張機能を配信していた為、任意にアンインストールできるように設定を変更し、KEEPERの利用を開始したユーザーから手動で拡張機能を無効化できるようにしました。
KEEPER 各種画面
マイボルト画面
KEEPERログイン時に表示されるマイボルト画面です。
表示されている内容を簡単に紹介すると
Shared-general(上の赤四角)
このフォルダ内に組織で共有しているアカウント情報を格納しています。(フォルダマーク内に共有マークあり)
サイト別アカウント情報(下の赤四角)
アカウント/パスワードが保存されたレコードが一覧として見えています。もちろんフォルダ別で整理する事も可能です。アカウント名を消してますが、サイト別のログインIDも表示されているので、一覧で目視確認が出来る為、見やすいです。
共有フォルダ画面
共有設定された「Shared-general」フォルダの詳細画面です。
このフォルダに格納されたアカウントデータは任意の共有先(キャプチャの場合はgeneralチーム)に共有されます。共有/編集の権限も調整出来るので、「閲覧のみ」や「閲覧+編集権限あり」など自由なアレンジが可能です。
KEEPER拡張機能紹介
BreathWatch
この機能を使うとユーザが使用しているパスワードを自動的に照合し、ダークウェブで出回っているワードと突合します。ダークウェブで出回っているワードと利用しているパスワードに一致するものがある場合、パスワードの変更が促されます。
例)各ユーザーの登録状況/脆弱性の表示
管理コンソール側ではユーザー全体の状況が可視化されます。
一覧表示は危険性、合格、無視、それぞれで並び替えが可能です。
高度なレポート&アラート
いくつかの条件(サインイン/サインイン失敗/サインイン回数)を組み合わせて、SIEM連携やメール通知などを施す事ができます。
今回はログイン(Webブラウザやブラウザ拡張機能からのログイン、モバイル端末など)をトリガーにメール通知を設定、それぞれのログイン時にメールで通知が入ります。
例)特定のユーザーがKEEPERにサインインした時に通知
BreachWatch画面
ユーザーが登録しているデータをBreachWatchが自動的に判別して、登録数や危険性について数値化します。「文字列が長ければ良い!」という訳ではありません。「簡単な文字列」や「既にダークウェブに出回っているワード」とヒットした場合はパスワードの変更が促されます。
KEEPERとLastPassの比較(金額/機能)
- 当環境における単価費用(2社)
- LastPass Enterprise: 約7,692円/ユーザー($72×106.83円換算)
- KEEPER: 9,800円/ユーザー (3,300円分の拡張機能費用含む)
- KEEPERの優位性
- 組織内の登録レコード共有
LastPassでは管理者権限を持つユーザーがパスワードの共有設定や編集設定を調整する仕組みとなっていますが、KEEPERではユーザーレベルで編集可否/登録レコードの読み取り権限の設定など細かく調整が出来る為、より柔軟な設定が可能です。
2. 登録情報の追加
各サイトごとにログインID/パスワードの登録が可能ですが、文字列以外にも様々な情報を登録することが可能です。(メモテキスト、添付ファイル、クレジットカード情報)
3. 日本語操作+日本語サポート
KEEPER運営による日本語でのサイト構築、システム画面、コミュニケーション(メール、ビデオ通話)が出来るため、この手のシステムにありがちな言語の壁が問題となる可能性は非常に低いと思います。
当社におけるKEEPER導入コスト
ユーザー数+拡張機能の単価と年額
一人当たりの年間コスト)9,800円/人
組織合計)254,800円/年 (26ユーザー)
詳細は以下の通り
- 基本プラン)KEEPER Enterpriseライセンス 6,500円/人
- オプション)BreachWatch 2,200円/人
- オプション)高度なレポート&アラートモジュール 1,100円/人
その他
PC以外のデバイス連携
Webブラウザログイン、ブラウザ拡張機能ログイン以外にスマホアプリやデスクトップアプリからもアクセスが可能です。
他社サービスにおいては契約プランによってはデバイスを跨いだアカウントの利用に制限がありますが、KEEPER Enterpriseにおいてはデバイス起因によるログイン制限はありません。(スクショはスマホアプリより)
試用について
Webから14日のフリートライアルの申し込みが可能です。TOPページ上部の「法人のお客様」から登録しましょう。
URL:https://www.keepersecurity.com/ja_JP/
環境構築時のトラブル(大まかな流れ)
権限調整時に不具合が発生し、当社メンバーでは対応できなかった為、KEEPER社に権限調整を依頼しました。しかし、KEEPER社はテナント管理者からの依頼でもユーザーの権限調整は行わない方針のため、当テナントの初期化を依頼し、再構築しました。
トラブルを引き起こしたタイムライン(この流れはダメ!)
- 設定調整時、森アカウントは手動で作成した管理者権限を有していた。
- 一方、他のエンジニアメンバーはKEEPERの環境を作成した時に最初に作られる管理者権限を持っていた。
- 管理コンソールのアクセスに二要素認証(KEEPERアプリへのプッシュ通知or別の管理者の承認)を有効にした。
- 他のエンジニアメンバーは管理コンソールへアクセス出来なくなってしまった。
- モバイル端末にKEEPERアプリを入れてなかった。また、アプリをインストールしても二要素認証が求められて動けず。
- 別の管理者の承認は、唯一管理コンソールに入れる森の承認を受け付けする事が出来なかった。
※ 権限が他のエンジニアメンバーの方が上(森<他エンジニアメンバー)だったため。
環境構築/利用言語が日本語
先の項目でも紹介しましたが、この手のツールでは珍しく 公式に「日本語」がサポートされている(Web、システム、サポート)ので、言語の壁障は少ないと思います。(一部和訳においては直訳な部分もありますが、大体は補完できる範囲です。)
窓口関連 ユーザーサポート
営業窓口+プロフェッショナルサービス回数
日本語でのコミュニケーション(メール、オンラインMTG)が可能で、万が一の際にはエンジニアを窓口とした「プロフェッショナルサービス」によるサポートがあるのが安心です。実際に当社でも営業担当の方とエンジニアの方を交えたオンラインMTGを行いました。
社内処理用
KEEPERの営業担当さんへメール連絡することで、ライセンスの見積書/請求書 など 各種書類もレスポンスよくご用意頂けました。
最後に。
偶然のトラブルが重なった事もあり、自社環境連携から運用移行、ブログ化まで時間を要しましたが、今後同じようにKEEPERの導入や運用移行を考えられている方の参考になれば!と思います。
ここまでご覧頂きありがとうございました!