Download the PHP package evgenidev/yii2-oauth2 without Composer
On this page you can find all versions of the php package evgenidev/yii2-oauth2. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package yii2-oauth2
Yii2 OAuth2 Extension
Installation
The preferred way to install this extension is through composer.
Either run:
or add:
to the require
section of your composer.json.
To use this extension, add the following code in your application configuration:
Also add bootstrap param:
If you want to add a custom authorize view file simple add a authorizeView parameter to oauth2 module.
The basic authorize view you can find here:
./vendor/evgenidev/yii2-oauth2/src/views/authorize/index.php
For SPA application you should configure spaApp parameter. By default, you will get a response from server on json format. If you need other response format, you can add a responseFormat parameter:
Create a migration in your project and expend from \EvgeniDev\Yii2\OAuth2\Migrations\Oauth.
This migration creates the oauth2 database scheme and insert test data.
Apply migration.
On the next step you should add url rule to urlManager, like this:
Usage
It is simple to add a new OAuth client. Use a command:
GET request example to get a code:
https://yoursite.com/oauth/authorize?response_type=code&client_id=clientID&state=someState&redirect_uri=http://site.com/url
With redirect response:
http://site.com/url?code=gjkmo5ufhvkdmjgnbdJklsdfFQPfdfg456nfdsjfnjsdnf&state=someState
After that you need to do a POST request with params like:
https://yoursite.com/oauth/access_token
If user is unauthorized, module will redirect to Yii::$app->user->loginUrl with GET param redirectUrl:
https://yoursite.com/loginUrl?redirectUrl=xxx
So you can redirect user to a redirectUrl after success authorization.
If you want to control OAuth2 server through the interface (admin and etc.), you can find all necessary models to do that in:
./vendor/evgenidev/yii2-oauth2/Records/*
and
./vendor/evgenidev/yii2-oauth2/Services/*
To use this extension, simply add the behaviors for your base controller:
To identify a client you can use a function findIdentityByAccessToken() in your User identity AR model: