10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Amazon CognitoのOIDC機能を活用してLINEログインを統合する方法

Last updated at Posted at 2025-01-31

OIDCを使用してAmazon CognitoでLINEログインを実現する手順

この記事では、LINEログインをAmazon CognitoのOIDC機能を活用して設定し、LINEのユーザーをCognitoに登録する方法について解説します。

前提条件

以下の準備が完了していることを前提とします

  • Amazon Cognitoユーザープールの作成済み
  • LINEログインチャネルの作成済み(LINE Developersから作成)

1. LINEログインチャネルの設定

チャネルの基本設定でOpenID Connectの申請

LINE Developersで作成したチャネルに移動します。
基本設定タブを開き、OpenID Connectの項目で申請を行います。
→ 審査が完了し、申請が承認された状態にしてください。

LINEログイン設定でコールバックURLを設定

チャネル設定の「LINEログイン」タブを開きます。
コールバックURLを設定します。
コールバックURLの形式は以下のようにします

https://<your-cognito-domain>/oauth2/idpresponse

your-cognito-domainはCognitoのドメイン名です。

2. LIFFアプリの作成

LIFFアプリを作成

LINE DevelopersのチャネルページでLIFFアプリを作成します。
スコープに以下の値を設定します:
openid
email
profile

3. Amazon CognitoでOIDCプロバイダーを設定

OIDCプロバイダーを作成

Amazon Cognitoの管理画面で、対象のユーザープールを開きます。
「ソーシャルプロバイダーと外部プロバイダー」タブでアイデンティティプロバイダーを追加を押下します。
以下の情報を設定します:
クライアントID:LINEログインチャネルの「チャネルID」
クライアントシークレット:LINEログインチャネルの「チャネルシークレット」
発行者URL

https://access.line.me

スコープ

openid profile email

image.png

コールバックURLを許可する

Cognitoの「アプリケーションクライアント」→ログインページを開きます。
許可されているコールバックURLを以下に変更します。

https://<your-cognito-domain>/oauth2/idpresponse

IDプロバイダーの追加

アプリケーションクライアントの設定で、作成したOIDCプロバイダーを選択して紐付けます。

4. Cognitoマネージドログインからログインページを確認

ログインページにアクセス

Cognitoの「アプリケーションクライアント」のログインページを表示からマネージドログインのページに遷移します。

image.png

LINEログインの動作確認

LINEログインボタンを押下し、Lineログインを行うと、
ログイン後、CognitoユーザープールにLINE UIDが登録されていることを確認できます。

image.png

おわりに

本記事では、OIDCを活用してLINEログインをCognitoで実現する方法を解説しました。この設定により、LINEの認証機能を簡単に組み込むことができます。

また、OIDCを活用することでGoogle認証も同様に導入可能です。さらに、Cognitoの 「カスタム属性」 にLINEのUIDを保存することで、既存のユーザーデータと紐付けることもできます。

10
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?