シングルサインオン・SSO
いつもの(?)リレーブログのお時間です(これ以外に何も書いていませんが)。前回の方の記事はこちらです。
今回のお題は、シングルサインオンです。(締め切り当日になって書き始めたのでクソ雑です…ゴメンナサイ)
シングルサインオンとは
シングルサインオン(Single Sign On)は、一度のユーザー認証で複数のwebサービスやアプリケーションが利用できるようになる仕組みです。パスワードやIDを複数覚える必要がなくなり、何回もユーザー認証をせずに済みます。そのため、ユーザーの負担を減らすことができる仕組みです。
SSOの仕組みと方式
シングルサインオンには何個かの方式があり、それぞれ簡単にまとめます(全部ではないですが)。
代行認証方式
クライアント側のコンピュータに常駐するエージェントがID、パスワードを自動で入力する方式です。ログイン画面などに入るのを検知して、自動的にID・パスワードをぶちこみます。 ブラウザとかについてるやつですかね。ChromeとかSafariとか。Chromeは認証なしでぶちこんじゃうので心理的に微妙な感じ。
リバースプロキシ方式
名前通り、中継サーバ上で認証を行う方式です。クライアントとwebサーバの間にプロキシを挟むことでプロキシが認証をして、サーバ側にユーザー情報を渡すらしいです(自信ない)。アプリケーションを増やしやすいのが特徴。
エージェント方式
こっちはサーバ側にエージェントを組み込んで認証する方式です。初回ログイン時に認証済みのCookieをクライアントに送りつけ、それを識別情報として使います。それ以降の認証時は、webサーバ上のエージェントがCookie情報をもとに連携している認証サーバにアクセスして、権限などのチェックをします。
SAML認証方式
SAMLはSecurity Assertion Markup Languageの略で、ID管理と認証を行うIDプロバイダ(IdP)が認証を行い、サービスプロバイダ(SP)に認証情報を送りつける方式です。ユーザーがサービスプロバイダにアクセスすると、サービスプロバイダがIDプロバイダに認証要求を送ります。するとIDプロバイダがクライアント側にログイン画面を表示させ、認証が成功するとIDプロバイダがサービスプロバイダに認証応答を送ることでユーザ認証を行います。 この方式は、OASISで規格化されており、よく使われているっぽいです。
まとめ
いかがでしたか系ブログみたいですが、結構いろいろと方式があるんですね。
こちらが次回の方のブログ。
参考文献
シングルサインオン(SSO)について シングルサインオン(SSO)とは?メリットと仕組みを解説 【図解つき】シングルサインオン(SSO)とは?機能や仕組み、導入メリット、デメリットをわかりやすく解説!