AuthClient Extension for Yii 2

This extension adds OpenID, OAuth, OAuth2 and OpenId Connect consumers for the Yii framework 2.0.

For license information check the LICENSE-file.

Documentation is at docs/guide/

Latest Stable Version Total Downloads Build Status


The preferred way to install this extension is through composer.

Either run

composer require --prefer-dist yiisoft/yii2-authclient

or add

"yiisoft/yii2-authclient": "~2.2.0"

to the require section of your composer.json.

Class Reference

Class Description
yii\authclient\AuthAction AuthAction performs authentication via different auth clients.
yii\authclient\BaseClient BaseClient is a base Auth Client class.
yii\authclient\BaseOAuth BaseOAuth is a base class for the OAuth clients.
yii\authclient\CacheStateStorage CacheStateStorage provides Auth client state storage based in cache component.
yii\authclient\ClientInterface ClientInterface declares basic interface all Auth clients should follow.
yii\authclient\Collection Collection is a storage for all auth clients in the application.
yii\authclient\InvalidResponseException InvalidResponseException represents an exception caused by invalid remote server response.
yii\authclient\OAuth1 OAuth1 serves as a client for the OAuth 1/1.0a flow.
yii\authclient\OAuth2 OAuth2 serves as a client for the OAuth 2 flow.
yii\authclient\OAuthToken Token represents OAuth token.
yii\authclient\OpenId OpenId provides a simple interface for OpenID (1.1 and 2.0) authentication.
yii\authclient\OpenIdConnect OpenIdConnect serves as a client for the OpenIdConnect flow.
yii\authclient\SessionStateStorage SessionStateStorage provides Auth client state storage based on web session.
yii\authclient\StateStorageInterface StateStorageInterface is an interface for Auth client state storage.
yii\authclient\clients\Facebook Facebook allows authentication via Facebook OAuth.
yii\authclient\clients\GitHub GitHub allows authentication via GitHub OAuth.
yii\authclient\clients\Google Google allows authentication via Google OAuth.
yii\authclient\clients\GoogleHybrid GoogleHybrid is an enhanced version of the yii\authclient\clients\Google, which uses Google+ hybrid sign-in flow, which relies on embedded JavaScript code to generate a sign-in button and handle user authentication dialog.
yii\authclient\clients\LinkedIn LinkedIn allows authentication via LinkedIn OAuth.
yii\authclient\clients\Live Live allows authentication via Microsoft Live OAuth.
yii\authclient\clients\Twitter Twitter allows authentication via Twitter OAuth.
yii\authclient\clients\TwitterOAuth2 TwitterOAuth2 allows authentication via Twitter OAuth 2.
yii\authclient\clients\VKontakte VKontakte allows authentication via VKontakte OAuth.
yii\authclient\clients\Yandex Yandex allows authentication via Yandex OAuth.
yii\authclient\signature\BaseMethod BaseMethod is a base class for the OAuth signature methods.
yii\authclient\signature\HmacSha HmacSha1 represents 'HMAC SHA' signature method.
yii\authclient\signature\PlainText PlainText represents 'PLAINTEXT' signature method.
yii\authclient\signature\RsaSha RsaSha1 represents 'SHAwithRSA' (also known as RSASSA-PKCS1-V1_5-SIGN with the SHA hash) signature method.
yii\authclient\widgets\AuthChoice AuthChoice prints buttons for authentication via various auth clients.
yii\authclient\widgets\AuthChoiceAsset AuthChoiceAsset is an asset bundle for yii\authclient\widgets\AuthChoice widget.
yii\authclient\widgets\AuthChoiceItem AuthChoiceItem is a base class for creating widgets, which can be used to render link for auth client at yii\authclient\widgets\AuthChoice.
yii\authclient\widgets\AuthChoiceStyleAsset AuthChoiceAsset is an asset bundle for yii\authclient\widgets\AuthChoice widget.
yii\authclient\widgets\GooglePlusButton GooglePlusButton renders Google+ sign-in button.