はじめに
最近導入を検討しているSingle Sing Onについて調べたもの軽くまとめます。
一度のユーザ認証処理によって独立した複数のソフトウェアシステム上のリソースが利用可能になる特性である。
この特性によって、ユーザはシステムごとにユーザIDとパスワードの組を入力する必要がなくなる。
要は、1つの認証ステムの認証をクリアできれば、その認証情報を使い、許可されているすべてのサービスが利用可能になる仕組みの事。
シングルサインオン導入のメリット
管理すべきログイン情報が1つで済む
ログイン情報が複数存在する場合、ユーザはログイン情報を忘れないようにとメモを取ります。
よくあるのが、情報の書かれたメモや付箋を人目につく箇所に貼ってしまっている状態。情報漏洩のリスクが高まります。
情報漏洩のリスクが低くなる
認証が一度で済んでしまえば覚えるべき情報も少なくなり、メモや付箋に記録する必要無し。
認証が一度で済むのでシステムごとの認証作業が不要になる
多くのソフトウェアを使う業務の場合、それぞれの認証作業が不要になる事で工数の削減につながり、社員の生産性も向上。
ID、PW忘れによる管理者側の管理負担も軽減
管理のしやすさはもちろんのこと、セキュリティ対策としては今後の大きな課題になってくるログイン情報の管理。
SSOを導入し、一括集中管理を行うことができれば課題は一気に解決されますね。
SSOの代表的な認証方式
-
エージェント方式
Webサーバにエージェントと言われるソフトウェアを組み込むことで認証を実現する方式。
※webアプリケーションのみに対応
-
リバースプロキシ方式
WebブラウザとWebアプリケーションの間にリバースプロキシーサーバを設置し、そこに認証エージェントを導入することで認証を実現する。
※webアプリケーションのみに対応
-
フェデレーション方式
ユーザーの認証や属性、認可に関する情報を記述するマークアップ言語。異なるドメイン間でクッキーを利用せずに認証情報の伝達が可能。
クラウドサービスSSOも実現できる。
フェデレーション方式に使えるプロトコルは標準化が進められており、SAML(Security Assertion Markup Language)やOpenID Connecが使われている。
最近試しているSSOのシステムではSAMLが使われています。
最近良く目にするソーシャルログイン。一般ユーザにも身近なSSO。
最近こういうログインページ良く見かけませんか?
facebookのアカウントを持っていれば、そのアカウント情報を使ってログインできちゃう!
ボタンをポチっと押すだけでOK。面倒な入力作業を省くことができるので、便利ですよね。
これもSSOの一つです。
おわりに
基本的にニーズが大きいのは企業向けなのかもしれませんが、案外一般ユーザにもニーズありそうだなと思っています。ソーシャルログインも普及してきていますし。
最近は個人でもネットを使って買い物、クレジットカードのWEB明細、SNS、その他アプリケーションやサイトを利用している方が多いですよね。
サイトごとに一つ一つID/PWを入れてっていう作業も面倒ですし、個人だとより管理が煩雑になりがち。
今後個人向けのSSOの簡単な仕組みがあれば便利だな。と思ったりしました。