Yii Framework Extension. EOAuthUserIdentity class implements IUserIdentity Yii interface and the OAuth protocol to authenticate a user. Based on Google's software.
Switch branches/tags
Nothing to show
Pull request Compare This branch is 8 commits behind jorgebg:master.
Latest commit 247a4ad Aug 26, 2011 @jorgebg jorgebg README updated
Permalink
Failed to load latest commit information.
lib
EOAuthComponent.php
EOAuthProvider.php
EOAuthUserIdentity.php
EOAuthUtils.php
LICENSE
NOTICE
README.md

README.md

Introduction

EOAuthUserIdentity class implements IUserIdentity Yii interface and the OAuth protocol to authenticate a user.

Based on Google's software.

Flattr this git repo

###Resources

##Documentation

###Requirements

  • Yii 1.0 or above

###Installation

  • Extract the release file under protected/extensions/eoauth

###Usage

Use this sample actions for login/logout with Google:

[php]

    public function actionLogin() {

        Yii::import('ext.eoauth.*');

        $ui = new EOAuthUserIdentity(
                array(
                	//Set the "scope" to the service you want to use
                        'scope'=>'https://sandbox.google.com/apis/ads/publisher/',
                        'provider'=>array(
                                'request'=>'https://www.google.com/accounts/OAuthGetRequestToken',
                                'authorize'=>'https://www.google.com/accounts/OAuthAuthorizeToken',
                                'access'=>'https://www.google.com/accounts/OAuthGetAccessToken',
                        )
                )
        );

        if ($ui->authenticate()) {
            $user=Yii::app()->user;
            $user->login($ui);
            $this->redirect($user->returnUrl);
        }
        else throw new CHttpException(401, $ui->error);

    }



    public function actionLogout() {

        Yii::app()->user->logout();

        // Redirect to application home page.
        $this->redirect(Yii::app()->homeUrl);
    }

Set to load the extensions in the main.php (by DavidHHuan, thanx!)

[php]
'import'=>array(
    'application.models.*',
    'application.components.*',
        'ext.eoauth.*',
        'ext.eoauth.lib.*',
),

License

Some time ago I developed this extension for InDaHouseRulez SL. I no longer work there, but I still support the extension.

The extension was released under the MIT license, so I made a fork on GitHub, where you'll find the latest version:

https://github.com/jorgebg/yii-eoauth