Yahoo! ID連携を理解する

Yahoo! ID連携は、Yahoo! JAPAN IDを利用して、連携先のウェブサイトやアプリケーション(以下「クライアントアプリ」といいます)でユーザー認証・認可を行うための仕組みです。
クライアントアプリでYahoo! JAPAN IDのログイン情報を受け取ることなくユーザー認証を行えるほか、ユーザー本人の同意に基づき、Web APIを通じてLINEヤフー株式会社(以下「当社」といいます)が保有するユーザーデータにアクセスできます。
Yahoo! ID連携は、OpenID Connectによるユーザー認証と、OAuth 2.0によるAPIアクセスの認可に対応しています。

Yahoo! ID連携で実現できること

Yahoo! ID連携を利用することで、Yahoo! JAPAN IDを活用したログイン体験や、ユーザーの同意に基づくデータ連携を実現できます。

実現できる
ユーザー体験・機能
概要
Yahoo! JAPAN IDで
スムーズにログイン
ユーザーはサービスごとに新たなログイン情報を登録することなく、Yahoo! JAPAN IDを使ってログインできます。
ログインした
ユーザーを識別
Yahoo! ID連携から取得したユーザー識別子を利用して、クライアントアプリでユーザーを識別したり、自社アカウントと紐付けたりできます。
Yahoo! JAPAN IDの
ユーザー属性情報を活用
ユーザー本人が同意したスコープの範囲で、Yahoo! JAPAN IDのユーザー属性情報をUserInfoAPIから取得できます。取得した属性情報は、クライアントアプリの入力フォームなどに活用できます。
属性取得API(UserInfoAPI)
Yahoo! JAPANの
Web APIと連携
ユーザーの同意に基づいて発行されたAccess Tokenを利用して、対応するYahoo! JAPANのWeb APIへアクセスできます。

Yahoo! ID連携の仕組み

Yahoo! ID連携では、OpenID Connectによるユーザー認証と、OAuth 2.0によるAPIアクセスの認可を利用して、これらの機能を実現しています。
以下の図では、ユーザー、クライアントアプリ、Yahoo! JAPANの間で行われる認証・認可から、ユーザーの同意に基づいて情報が提供されるまでの基本的な流れを示します。

① ユーザーが、クライアントアプリの「Yahoo! JAPAN IDでログイン」ボタンを押して、ログインを開始します。

② クライアントアプリは、ユーザー情報の取得に必要な「鍵」と、ユーザーの認証に必要な「証明書」を当社へ要求します。

③ 当社は、ユーザーにYahoo! JAPAN IDでのログインと、当社からクライアントアプリへの情報提供に関する同意を求めます。

④ ユーザーはYahoo! JAPAN IDでログインし、クライアントアプリへ情報を提供することに当社と同意します。

⑤ 認証・同意の結果に基づき、当社からクライアントアプリへ「鍵」と「証明書」が発行されます。

⑥ クライアントアプリは、受け取った「証明書」でユーザーの認証結果を確認し、ログインの準備を行います。

⑦ ユーザー情報が必要な場合は、クライアントアプリが受け取った「鍵」を使って、ユーザー情報を当社へリクエストします。

⑧ 当社は「鍵」を確認し、ユーザーが同意した範囲のユーザー情報をクライアントアプリへ提供します。

⑨ クライアントアプリでの処理が完了し、ユーザーがログインした状態になります。

※図中の「鍵」はAccess Token、「証明書」はID Tokenを指します。
※⑦、⑧のユーザー情報の取得には、UserInfoAPIを利用します。UserInfoAPIの利用には別途申請・審査が必要です。

OAuth 2.0およびOpenID Connectの仕様

Yahoo! ID連携が対応するOAuth 2.0およびOpenID Connectの詳細については、以下の仕様を参照してください。

OAuth 2.0
  • The OAuth 2.0 Authorization Framework(RFC 6749)(外部サイト)
  • The OAuth 2.0 Authorization Framework: Bearer Token Usage(RFC 6750)(外部サイト)
OpenID Connect

Yahoo! ID連携を利用するには

Yahoo! ID連携は、WebアプリおよびiOS / Androidのネイティブアプリに実装できます。
実装を始める前に、ガイドラインの確認、Yahoo! JAPAN IDの取得、Client IDの取得など、利用に必要な準備を行ってください。

アプリケーションの管理

Yahoo! ID連携

利用のルール

開発のヒント

サービス一覧