IDaaS製品「トラスト・ログイン」を使ってみた

シングルサインオン製品 (IDaaS) のトラスト・ログインを使ってみたので、共有します。

画像サイズ大きめのスクリーンショットが多いですが、ご容赦ください。

##背景と利用目的

これまではお恥ずかしながら、業務で使っているクラウドサービスは同じパスワードを少しだけ変えて使い回してきました。
例えば
・password
・password1 (最後に1を追加)
・Password1 (最初が大文字、最後に1を追加)
・Password1! (最初が大文字、最後に1と!を追加)
といった具合。

しかし、最近立て続けにID (メールアドレス) とパスワードを利用した不正なアクセス試行らしきものが、何度か見られるようになりました（ナイジェリアから何度もアクセス試行→失敗があれば不安になりますよね）。

ちなみに<a href="https://haveibeenpwned.com/">こちらで、過去にパスワードが漏えいしたメールアドレスを検索できます</a>。自分が現在使っているメールアドレスを入力検索してみてください。もし漏えいが表示された場合、使い回しパスワードを利用している場合、高い確率でハックされるのでとても危険です。自分の場合はこうでした（Oh no, 漏えいしているぞ！）。

![TL_20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/90a409ef-d2c6-0979-ebcd-7b9d62f62b52.png)

過去に6件で漏えいしてた模様です。怖い。。。

![TL_21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/c90f9183-d273-b9c3-e651-a9cfa67c4aff.png)

このままではいつかハッキングされて、大変まずいことになると確信し、
・個人用のパスワードマネージャー
・企業向けのIDaaS
の両方を試してみようと思ったが、もし使ってみてよかったら、組織内でも使ってみようと思ったのでIDaaSを選択。いくつか比較してみた結果、トラスト・ログインも試してみることにしました。

最終的には、利用にあたっては以下の3つのゴールを達成したいと考えておりました。
・自分でパスワードを一切記憶せずに、トラスト・ログイン経由で全て記録してログインをすること。
・パスワードを可能な限り複雑で長くして不正アクセスを防ぐこと。
・パスワード使い回しをゼロに。

##現在使っているクラウドサービス

・Office 365 (Office Suite + OneDrive)
・Adobe Creative Cloud (Adobe製品利用)
・Freee (会計)
・Salesforce (SFA)
・サイボウズ (グループウェア)
・Kintone (業務アプリ作成)
・AWS (IaaS)
・Azure Portal (PaaS)
・Dropbox (オンラインストレージ)
・Googleアカウント
・Gmail (メール)
・Google Analytics (SEO関連)
・ahrefs (SEO関連)
・Google Adwords (広告)
・a8.net (アフィリエイト広告)
・Amazon (オンラインショッピング)
・Chatwork (チャットツール)
・Slack (チャットツール)
・Atlassian (Jira, Confluenceなど)
・Facebook
・Twitter
・Linkedin
などなど。

業務のアウトソース、受託をやっている関係で、使っているツールがかなりバラバラ、幅が広いです。

##登録

<a href="https://trustlogin.com/">トラスト・ログインの公式ホームページ</a>から登録できます。

![TL_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/48e68211-8856-1a96-17ef-02de76deeb25.png)

右上の「30秒で無料登録」ボタンをクリックすると、登録画面にいきます。

![TL_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/0963bae9-8f02-0bb8-71d6-0e0f01d79c8e.png)

こちらを入力すれば、すぐに使うことができます。IDaaSは、「問合せフォームから申し込んで、営業時間にレスが来てから2週間お試し」的なものが多いので、すぐ使えるのはメリットです。

##利用開始

まずはログイン画面に「企業ID」「メールアドレス」を入力すると、その後にパスワードの入力を求められるので、入力するとログインできます。

![TL_4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/bea67188-8a3e-b774-448a-ac8547a311ba.png)

ログイン後の画面はこちら。こちらはユーザーとしてログインした画面です。右上の「管理」をクリックすると、管理者ビューに切り替えられます。
ちなみに管理階層は、
・管理者（全権限あり）
・管理者（一部権限のみ）
・一般ユーザー
があります。

管理画面はこちら（あらかじめユーザーを5名登録しています）。

![TL_6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/46d2b220-e603-3be2-67c5-142af36747bf.png)

左サイドバーの役割は以下の通り。
・メンバー: メンバーの追加・編集・削除
・グループ: メンバーが複数名参加しているグループの作成・編集・削除
・アプリ: クラウドサービスの追加・編集・削除
・レポート: ログ検索・エクスポート
・設定: 有料機能のON/OFFや請求先設定など

##企業アプリ・グループアプリ・個人アプリ

前提として、トラスト・ログインでは「企業アプリ」「グループアプリ」「個人アプリ」の3つがあります。

企業アプリ
・管理者が一般ユーザーに付与するアプリ

グループアプリ
・管理者が特定のグループ参加者に付与するアプリ

個人アプリ
・一般ユーザーが各自で登録利用するアプリ

例えば、
・社員全員が使う「Office 365」は企業アプリとして登録
・開発部のみ全員が使う「AWS」はグループアプリとして登録
・マーケティングのSNS担当者のみが使う「Twitter」は個人アプリとして登録
といった具合で登録利用できます。

なお、「企業アプリ」「グループアプリ」は管理者が管理するアプリですが、個人アプリを許可するとユーザーが勝手に自分の好きなアプリを入れられます。個人で使っているFacebookとかLinkedinとかAmazon.co.jpといった具合です。一般ユーザーにとっては便利な機能ですが、「トラスト・ログインで管理するアプリはあくまで社用のアプリに限定したい」場合は、個人アプリの登録を不許可にすることも可能です。

##パスワード認証アプリとSAML認証アプリ

トラスト・ログインは、2つの認証方式に対応しています。

(1)パスワード認証（フォームベース認証、代理入力方式）
トラスト・ログインに保存されているパスワードを、ユーザーに代わり入力してくれる方式です。
入力を代行してくれるだけなので、通常のパスワード入力と比べて、特段にセキュリティ的に優れている点はないですが、パスワードの使い回しの防止、複雑で長いパスワードの設定という観点では役に立ちます。

(2)SAML認証
パスワードの文字列を直接やり取りしない方式で、セキュリティ的に優れています。
同じクラウドサービスで、パスワード認証とSAML認証の両方が提供されていたら、SAML認証を利用すべきです。
<a href="https://support.trustlogin.com/hc/ja/articles/231915988-SAML-Security-Assertion-Markup-Language-サムル-サムエル">なお、SAML認証とは何かついては、トラスト・ログインのページ参照。</a>

なお、(1)と(2)の数では、圧倒的に(1)のパスワード認証が多いです。SAML対応アプリはまだ多くありません。そもそもクラウドサービス・オンラインサービスの大半がSAML非対応なので仕方ありません。

##アプリの追加と編集

ダッシュボード右側の「追加」ボタンから、アプリ登録に進めます。サイドバーの「アプリ」からも進めますね。

![TL_7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/110c67d3-dea4-ee29-75e2-30753ebd94c8.png)

アプリ画面では、アプリの総数（App Count）が表示されています。5247のアプリが利用できます。これは、他のIDaaSベンダーと比べて異常に多いです。ちなみに、このアプリ対応の多さが、私がトラスト・ログインに興味を持った理由です。

![TL_8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/1bcc320a-f355-26c3-9fd6-75420d795d55.png)

ここで「Salesforce」と入力すると、6つのアプリが表示されました。
同じアプリでもパスワード認証と、SAML認証だと別々のアプリとしてカウントされています。

![TL_9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/86f68363-3f26-1345-41d3-d991ef892a73.png)

ここでは、パスワード認証を選んでみます。なお、表示されるアプリケーション名は変更できます。右上の登録ボタンを押せば登録完了です。

![TL_10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/184b1085-dafc-50d4-ae1b-1014989b168f.png)

次に、登録したアプリの詳細設定です。アプリ右側の鉛筆ボタンから進みます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/79ab7fc0-39fd-d9ab-c762-65bd3ff3872c.png)

このアプリを使えるユーザー追加、グループ追加、複数名のIDパスワード一括登録 (CSVアップロード)、などをこちらから行えます。

![TL_12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/e05b601d-de31-8c19-933c-0c608f6eddbf.png)

なお、アプリのパスワードは「一般ユーザーが各自のトラスト・ログインポータル上で入力設定」もできますし、「管理者が一括で入力設定」もできます。ここの優れている点は、新たに導入するアプリなどの場合「一般ユーザーにパスワードを教えずに、管理者が一括でパスワード設定して利用させられる」という点です。この場合は一般ユーザーは、アプリを利用するにはトラスト・ログインを経由せねばならないため、トラスト・ログイン経由でのログインを徹底させられます。

##シングルサインオンを利用する

アプリを登録し、シングルサインオンを利用する際の方法は以下の通りです。

(1)PC: ブラウザにトラスト・ログインのアドオンを登録して利用
　こちらが圧倒的に便利です。

(2)PC: トラスト・ログインのページにログインして、ポータルから利用
　こちらは毎度トラスト・ログインのページに行かねばならないため、おすすめしません。

(3)スマホ: アプリから利用
　2019/7現在、「トラスト・ログイン クラシック」というアプリが登録されているので、こちらから利用。
　
今回は、私が最も利用する(1)を解説します。ここでは、Slackにログインしてみます。slackのワークスペース、パスワードはあらかじめ管理者が設定済とします。また、<a href="https://support.trustlogin.com/hc/ja/articles/115010269727-%E5%88%A9%E7%94%A8%E3%81%A7%E3%81%8D%E3%82%8B%E3%83%96%E3%83%A9%E3%82%A6%E3%82%B6%E3%81%AF-">トラスト・ログインの対応ブラウザはChrome, Firefox, IE11</a>ですが、管理ページに対応しているのはChromeのみです。今回はChromeを利用します。

まず、<a href="https://chrome.google.com/webstore/category/extensions?hl=ja">Chromeウェブストア</a>に行き、検索窓にトラスト・ログインと入力します。

![TL_14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/ab5a8a3e-1298-bd12-a2fb-cc761c7e35c7.png)

「Trustlogin - IDaaS (Identity as a Service)」を「Chromeに追加」すると、ChromeのURLバーの右側にトラスト・ログインのアイコン（赤い盾のマーク）が出てきます。

![TL_15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/92bc54ef-d721-f39b-73c3-a1899d16c5e2.png)

トラスト・ログインのポータルにログインした状態で、URLバーのトラスト・ログインのアイコンをクリックすると、すぐにシングルサインオンが利用できます。

![TL_16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/b00922d7-c6b6-d6b5-34fd-d0ec1fed760d.png)

Slackのアイコンをクリックすると、即座にSlackのワークスペースが出てきます。これはとても便利で、気持ちがよいです。

![TL_17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/1f891b86-d0a3-1ede-9e91-5f8d0db99429.png)

トラスト・ログインは、5200アプリに対応しているとしていますが、「パスワード認証」と「SAML認証」で別々のアプリとしてカウントされているので、実数はもうすこし少ないと思います。それでも十分な数のアプリを網羅しています。冒頭で上げたクラウドサービスは、トラスト・ログインでは全て利用できました。これは結構すごいことだと思います。

##便利な点: 同じアプリを複数登録できる

トラスト・ログインで便利だと思うのは、「同じアプリを複数登録できる」という点です。
例えば、Slackで別々のワークスペースで、別々の企業とやりとりしているような場合、トラスト・ログインでSlackを複数個登録し、表示名にワークスペースが分かるような内容を入れておくと、ワンクリックでそのワークスペースに飛べます。ワークスペースのURL名はいちいち覚えていないので、これはとても便利な機能です。

![TL_18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/a25e9571-c000-51dd-a7e0-c318d5172cf6.png)

当社は、Googleの広告出稿のお手伝いもしていて、複数社のGoogle広告 (Adwords) や、Googleアナリティックスを見ることもあるのですが、この際にも便利だなと思いました。と思ったら、既に<a href="https://trustlogin.com/casestudy/interview06/">トラスト・ログインのホームページで事例になっていました</a>。オンライン広告代理店にはとても便利ですね。

##便利な点: 別な会社の人にも利用させられる

当社は、当社のメールアドレスを持たない協力会社の方にも業務を行っていただいていますが、こうした方もトラスト・ログインで管理できる点はプラスです。
シングルサインオンというと、「同じドメイン」「同じネットワーク」「同じ@以下のメールアドレス」という印象があったので...

下は、@以下が違うメールアドレスでも一緒に管理できます、ということを示すサンプルのスクショです。

![TL_19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/3cfa3aa5-ff85-d240-6f43-60e8f114ffb9.png)

##便利な点: 一般ユーザーにパスワードを教えなくていい

プロジェクトメンバーが退社する際やプロジェクトから抜ける際、権限がなくなった人のアクセスを防ぐためにもろもろパスワード変更を行っていました。かなりの手間でしたが、「不正アクセス、情報漏えいを防ぐためにはやむを得ない」と思ってやっていました。

が、トラスト・ログインでは、「一般ユーザーにパスワードを教えず、トラスト・ログイン経由でのみ必要な情報にアクセスさせ、必要なくなったら一般ユーザーの権限を削除」もしくは「ユーザーを削除」するだけでよくなりました。パスワードが持ち出される心配がない、というのは物理的な作業的にも、心理的にもとても楽です。

・人数が多い企業
・プロジェクト間の人の移動がかなりある企業
・頻繁に入退社がある企業
・協力会社の人の出入りが結構ある企業

これらの企業はかなり恩恵があると思います。

##料金プラン

トラスト・ログインは基本機能が無料で登録アプリ数などの制限はないので、無料で使い続けることも、有料版を利用することも可能です。
![TL_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/454176/685ec0ad-9d98-ba88-cfcb-7a0bdcc4addd.png)

有料プランには、「PRO (1ユーザー300円/月」「ENTERPRISE (1ユーザー500円/月)」というプランと、認証強化のみ利用するプラン (1機能1ユーザー100円/月) のプランがありますが、認証強化のみ利用する安価なプランは「認証強化の部分以外は無料プランと同じ」となるので注意が必要です。<a href="https://trustlogin.com/price/">詳しくは料金表をご覧ください。</a>

管理者からみた、無料プランと有料プラン (PRO, ENTERPRISE)の大きな違いは以下の通りです。
・無料プランはログ保存期間が1年しかありません。有料プランになると5年になります。
・有料プランだと電話サポートが利用できます。
・認証強化のオプションが複数個利用できます。

個人的には、問題発生時の原因究明を考えると、ログが1年というのは心許ないのでPROプランを検討しています（PROプランは、利用者が30名以上いないと利用できないので、小さい企業には使いづらいです）。

##まとめ

トラスト・ログインを組織で導入してみて、1か月ほど経過しましたが、ユーザーとしても、管理者としても、とても便利になったと感じています。
うちの会社の場合は、一般ユーザーの個人アプリ登録を許可したので、ログを見るとみんな色々なアプリを勝手に登録して便利にしているようです。シングルサインオンが、ブックマークのように使えて便利という声もありました。

個人アプリでこんなものが使われていました例をいくつか。

・Amazon (Amazon.co.jp)
・Google Adsense
・Google Blogger
・はてなブックマーク
・三菱UFJ銀行
・みずほ銀行
・住信SBIネット銀行
・楽天銀行
・SBI証券
・松井証券ネットストック
・三井住友VISAカード
・LINE ADs Platform
・LINE@
・LINEモバイル
・OCNマイページ
・IIJmio
・PayPal
・PayPay for Business
・お名前.com by GMO
・Xserver

<a href="https://trustlogin.com/">まずは無料で使ってみて、自社の運用に合うようでしたら利用の継続、ならび無料プラン継続か、有料プラン利用かを判断するといいかと思います。<a/>

ちなみに冒頭のゴールは達成できたのか、というと以下の通りです。

・自分でパスワードを一切記憶せずに、トラスト・ログイン経由で全て記録してログインをすること。
＞できました。全てのパスワードを自動生成してトラスト・ログインに投入しました。どれも覚えていません。

・パスワードを可能な限り複雑で長くして不正アクセスを防ぐこと。
＞できました。16桁で大文字、小文字、数字、記号全て使う設定にしました。桁数制限あるところは桁数を減らしています。

・パスワード使い回しをゼロに。
＞できました。全てユニークなパスワードになりました。

以上となります。