Single Sign On(SSO) とは?
概要
- シングルサインオンとは、1度の認証で、複数のWebサービスやクラウドサービスにアクセスする仕組みのこと
何が便利になるのか?
- ID・パスワードの入力や管理の手間を省き、セキュリティを強化することが可能
現在利用されている技術とその概要
OAuth2
生い立ち
ログインフロー
- https://qiita.com/TakahikoKawasaki/items/200951e5b5929f840a1f external_link
- https://qiita.com/TakahikoKawasaki/items/200951e5b5929f840a1f#%E3%81%8A%E3%81%BE%E3%81%91 external_link この図がすごいわかりやすい
- Authlete にあたる部分をアプリに実装する
- js であれば passportjs external_link や ruby であれば OmniAuth external_link などのライブラリを使って実装することが多い
- Authlete にあたる部分をアプリに実装する
利用例
- Google アカウントや Facebook アカウントを利用してアクセストークンを得ることができる
- GROWI - Google の場合
- GROWIからgoogleへ認可リクエスト送信 external_link
- リダイレクトURLに下記コールバックURLを指定 external_linkしている
- googleからアクセストークンを受け取りログイン処理をしてクライアントに返す所 external_link
- GROWIからgoogleへ認可リクエスト送信 external_link
OpenID Connect
生い立ち
idToken
- JWS
- JWE
- JWT
ログインフロー
- code
- token
- id_token
- none
利用例
SAML
生い立ち
ログインフロー
利用例
参考
- https://blogs.manageengine.jp/adsp-sso/ external_link
- https://ja.wikipedia.org/wiki/OAuth external_link
- https://qiita.com/kojisaiki/items/48adf59d5d634fd330af external_link
- https://qiita.com/TakahikoKawasaki/items/498ca08bbfcc341691fe external_link
- https://ja.wikipedia.org/wiki/Security_Assertion_Markup_Language external_link