OpenID(オープンアイディー)
OpenIDとは、異なるシステム間で利用者の識別情報を共有して使用できる仕組みです。
会員制のWebサイトなどの各サービスを利用する場合、各サービスごとに「ログインID」と「パスワード」を登録する必要があります。そのため、登録するサービスが増えれば増えるほど、利用者は各サービスのログイン情報を管理するのが大変であり、たまにしか使用しないサービスであれば、パスワードを忘れてしまうことも。
そこでOpenIDを利用すると、1つのログイン情報でOpenIDに対応している異なるサービスにログインすることが可能です。
OpenIDは「ユーザーID」や「パスワード」などのログイン情報を連携先のサービスには知らせずに認証を行うことができる仕組みのため、利用者のプライバシーが守られる利点があります。
また、OpenIDのサービスを提供している企業は、GoogleやYahooなどの有名な大手企業が多いため「ユーザID」や「パスワード」の管理も安心できます。
(ただし、ログイン情報を管理している企業で情報漏洩が起きたり、利用者がフィッシング詐欺に遭いログイン情報を盗まれたりすると、他の連携サービスにも影響が出でしまう危険性もあります。)
OpenID Authentication
OpenID Authenticationは、最初に制定された標準規格。初版は単に「OpenID 1.0」と呼ばれていたが、第2版では「OpenID Authentication 2.0」が正式名称です。
現在では後継のOpenID Connectに置き換えられています。
OpenID Connect
OpenID Connectは、OpenID Authenticationの後継規格で、OAuth 2.0をベースとして作られた規格です。旧規格との互換性はなく、OpenID Connectへの移行が推奨されています。
以下は簡易的なOpenID Connectのイメージ図です。
利用者からログイン要求のあった「クライアントアプリ」は、「OpenID Provider」と呼ばれる認証サーバへ利用者を誘導し、利用者は「ログインID」と「パスワード」を入力して認証を行います。
「OpenID Provider」は利用者からのログイン情報を検証しログインに成功した場合、クライアントアプリに「IDトークン」と呼ばれる署名付きのトークンを発行します。
このようにOpenID Connectを利用することで、「ユーザーID」や「パスワード」などのログイン情報を連携先のサービスには知らせずに認証を行うことができます。