2012年11月20日火曜日

Laravelで、ソーシャルアカウント連携「OneAuth」バンドル

Laravelで、ソーシャルアカウント連携の「OneAuth」バンドルを設定してみました。対応しているサービスAPIは、下記の通り。主要なものは全て網羅されています。Twitterだけ実際に試してみましたが、2つの設定ファイル(api.phpurls.php)を変更し、呼び出すコントローラー(connect.php)を設置しただけで、うまく連携できました。

使い方としては、ログインしている状態で、ユーザーテーブルと連携させる仕様です。あらかじめ会員登録できていて、ログインした状態でないと、利用できないと思います、多分?

/bundles/oneauth/config/api.php
return array(
    'providers' => array(

        'basecamp' => array(
            'id'     => '',
            'secret' => '',
        ),

        'dropbox' => array(
            'key'    => '',
            'secret' => '',
        ),

        'facebook' => array(
            'id'     => '',
            'secret' => '',
            'scope'  => 'email,offline_access',
        ),

        'flickr' => array(
            'key'    => '',
            'secret' => '',
        ),

        'foursquare' => array(
            'id'     => '',
            'secret' => '',
        ),

        'github' => array(
            'id'     => '',
            'secret' => '',
        ),

        'google' => array(
            'id'     => '',
            'secret' => '',
        ),

        'instagram' => array(
            'id'     => '',
            'secret' => '',
        ),

        'linkedin' => array(
            'key'    => '',
            'secret' => '',
        ),

        'paypal' => array(
            'id'     => '',
            'secret' => '',
        ),

        'soundcloud' => array(
            'id'     => '',
            'secret' => '',
        ),

        'tumblr' => array(
            'key'    => '',
            'secret' => '',
        ),

        'twitter' => array(
            'key'    => '',
            'secret' => '',
        ),

        'vimeo' => array(
            'key'    => '',
            'secret' => '',
        ),

        'windowlive' => array(
            'id'     => '',
            'secret' => '',
        ),

    ),
);
/bundles/oneauth/config/urls.php
return array(
    'registration' => 'signup',
    'login'        => 'login',
    'callback'     => 'connect/callback',
    
    'registered'   => 'mypage',
    'logged_in'    => 'mypage',
);
/application/controllers/connect.php
class Connect_Controller extends OneAuth\Auth\Controller {
}

0 件のコメント:

コメントを投稿