rhertogh/yii2-oauth2-server

A Yii2 Oauth 2 and OpenID Connect server based on thephpleague/oauth2-server

Installs: 2 241

Dependents: 0

Suggesters: 0

Security: 0

Stars: 17

Watchers: 6

Forks: 6

Open Issues: 2

Type:yii2-extension


README

Yii2   Oauth 2     OpenID Connect

Oauth2 + OpenID Connect Extension for Yii 2


Latest Stable Version build Status Code Coverage Scrutinizer Code Quality GitHub

The Yii2-Oauth2-Server is an extension for Yii framework 2.0 applications and provides an Oauth2 server based on the League OAuth2 server. The server also supports OpenID Connect Core.

Contents

🐣 Getting started

If you're not yet familiar with Oauth 2 we recommend to check out An Illustrated Guide to OAuth and OpenID Connect

Requirements:

  • The minimum required PHP version is 7.4 (compatibility tested up till and including PHP 8.1).
  • The minimum required Yii version is 2.0.49 (2.0.50 when using SQLite).

Installation:

The preferred way to install this extension is through composer.

composer require rhertogh/yii2-oauth2-server

Full installation and configuration details can be found in the docs under Installing the Yii2-Oauth2-Server

🏎️ Test Drive

You can run a local preview instance using Docker:

docker run --rm -p 82:80 --name Yii2Oauth2Server ghcr.io/rhertogh/yii2-oauth2-server:master

After the container is started you can access the Oauth2 server on localhost:82.

Hint: The port number on the host machine is specified by the first part of the -p argument. This can be changed if desired (e.g. -p 88:80).

To access the CLI of the Docker container you can run:

docker container exec -it Yii2Oauth2Server bash

📖 Documentation

There are two main sections in the documentation:

🔮 FAQ

This is a quick FAQ, the full version can be found here.

Where can I find the Oauth2 endpoints?

To see an overview of the endpoints and other configuration you can run: ./yii oauth2/debug/config

How can I see the configured clients?

To see an overview of the clients you can run: ./yii oauth2/client/list

The Oauth2 server throws an error, what should I do?

Please check out the full FAQ first. If that doesn't solve the problem, please report an issue.

↘️ Importing/Migrating

To ease migrating from another project, the Yii2-Oauth2-Server supports importing data from other projects. For example from the filsh/yii2-oauth2-server

Please see Importing/Migrating from other servers for more information.

📜 Versioning & Change Log

The Yii2-Oauth2-Server follows Semantic Versioning 2.0
Please see the Change Log for more information on version history and the Upgrading Instructions when upgrading to a newer version.

🔎 Reporting Security issues

In case you found a security issue please contact us directly DO NOT use the issue tracker or discuss it in public as it will cause more damage than help.

Please note that as a non-commercial OpenSource project we are not able to pay bounties.

📂 Directory Structure

docker/     Docker container definition
docs/       Documentation (for both usage and development)
sample/     Sample app for the server
src/        Yii2-Oauth2-Server source
tests/      Codeception unit and functional tests

🚀 Contributing

The Yii2-Oauth2-Server is Open Source. You can help by:

Thanks in advance for your contribution!

🎉 Credits

📗 License

The Yii2-Oauth2-Server is free software. It is released under the terms of the Apache License. Please see LICENSE.md for more information.