Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
12
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

Laravel 5.3のSocialiteに含まれていないLINEやYahoo!JAPANなどの認証サービスをcomposerを使ってサクッと実装する方法

やりたいこと

  • 表題の通り、laravel/socialiteで、twitterやfacebookのアカウント認証はできるようになったが、LINEやYahoo!JAPANのアカウントでも認証できるようにしたい。
  • とりあえずは、こんな面倒な手順に従えばできるんだけど、こんなこと毎度毎度やりたくないんだけど。どうにかならんもんかね?

というわけで、つくりました

Packagist

注意書き

  • ご使用は自己責任でお願いします。
  • コメとかで認証サービスの追加要望を頂いたら実装するかもしれません。
  • プルリク頂いたらマージするかもしれません。
  • 個人的にゆるくやってみた感じなんで、バージョン番号とかはへんなコミット履歴とかは温かい目で見てやってくださいw
  • forkしたりコピーしたりってこともご自由にどうぞ。
  • 今後もプロバイダとかはゆるゆると追加すると思います。

導入手順

パッケージインストール

  • 以下のコマンドを実行

    cd your/laravel/project/path
    composer require ringo-project/socialite
    

設定変更

  • SocialiteServiceProviderの向き先を変更する。

    config/app.php
    <?php
    
    return [
        // ...
        'providers'       => [
            // ...
            //Laravel\Socialite\SocialiteServiceProvider::class,    //除外
            RingoProject\Socialite\SocialiteServiceProvider::class, //追加
            // ...  
        ],
        // ...
        'aliases'         => [
            // ...
            'Socialite'    => Laravel\Socialite\Facades\Socialite::class,
            // ...
        ],
    
    ];
    
    
  • config/services.phpを編集する。

    config/services.php
    <?php
    
    return [
    
        // ...
    
        'line'   => [
            'client_id'     => env('LINE_CLIENT_ID'),
            'client_secret' => env('LINE_CLIENT_SECRET'),
            'redirect'      => env('LINE_REDIRECT'),
        ],
        'yahoo'  => [
            'client_id'     => env('YAHOO_CLIENT_ID'),
            'client_secret' => env('YAHOO_CLIENT_SECRET'),
            'redirect'      => env('YAHOO_REDIRECT'),
        ],
    
        // ...
    
    ];
    
    
  • .env.xxxxxを編集

    env.xxxxx
    # ...
    
    LINE_CLIENT_ID=(your-line-client-id)
    LINE_CLIENT_SECRET=(your-line-client-secret)
    LINE_REDIRECT=(your-line-redirect-url)
    
    YAHOO_CLIENT_ID=(your-yahoo-client-id)
    YAHOO_CLIENT_SECRET=(your-yahoo-client-secret)
    YAHOO_REDIRECT=(your-yahoo-redirect-url)
    
    # ...
    

認証実行

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
12
Help us understand the problem. What are the problem?