24
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Auth0】Auth0でLINE認証+BOTリンク(友だち追加)を実現する

Last updated at Posted at 2022-06-19

はじめに

以前CognitoでLINE認証 + 友だち追加を行おうとしましたが、現在のCognitoでは非対応とサポートから返信が来ました。
ですので本件をAuth0で本件を実現しようと思います。

※LINEの友達追加は認可URLにクエリパラメータを入れる必要があるのですが、Cognitoでは認可URLへクエリを入れることが非対応のようでした。

前提条件

以下の準備は完了しておいてください!

LINEアカウントの作成

まず初めに LINE Developerで

  • LINE Login アカウント
  • Messaging API アカウント

の2アカウントを作成します。

スクリーンショット 2022-06-17 15.56.16.png

2つのアカウント作成が完了したら、Login用のアカウントをクリックしLinked OAにMessaging APIのアカウントを選択し保存します。
(ここで「ログインのLINEアカウント」と「ログイン後に友だち追加するLINEアカウント」を紐付けます。)
また同じページ内にある、Channel IDChannel secretは後ほど利用しますので、コピーしておいてください。

スクリーンショット 2022-06-17 15.56.58.png

次にLogin用アカウントの「Web app有効化」と「Callback URL」の設定を行います。
Claaback URL:https://[YOUR_DOMAIN]/login/callback
([YOUR_DOMAIN] をみなさんが利用されるドメインに変更してください。)

スクリーンショット 2022-06-17 16.08.56.png

LINE側の設定は以上です!

Auth0にLINE認証を登録する

以下からLINE認証の機能を追加しましょう。

次に Auth0のManagement APIを利用するためのトークンを取得します。
以下のリンクに従って、アクセストークンを取得してください。(今回はテスト用トークンを利用します。)

アクセストークンが取得できたら、Auth0が用意してくれている「Management API クライアント」を利用しましょう。
左上の「SET API TOKEN」にアクセストークンをセットすることで簡単に利用することができます。
スクリーンショット 2022-06-17 16.21.50.png

ここまで準備ができましたら後はManagement APIを実行するだけです!
今回はLINEのコネクションをアップデートするので、「id」 と 「body」に以下を追加します。

  • id:LINEコネクションのID
  • body:以下のJSONデータ(先程コピーした「Channel ID」と「Channel secret」を貼り付けてください。)
{
  "options": {
    "client_id":"YOUR_CHANNEL_ID",
    "client_secret":"YOUR_CHANNEL_SECRET",
    "upstream_params": {
      "bot_prompt": {
        "value": "aggressive"
      }
    }
  }
}

スクリーンショット 2022-06-17 16.29.33.png

上記のBodyにはupstream_paramsがセットされていますが、これが認可URLへクエリパラメータを入れるために必要な情報となっています。
(以下ドキュメントに記載されていました。)

実際に動かしてみる

スマホで確認したかたので、Vercelにデプロイします。

qiiita.gif

Auth0の認証画面からLINEアプリが起動して、LINE認証 + 友達追加できることが確認できました!

24
2
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
24
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?