oauth2-server/README.md

58 lines
2.6 KiB
Markdown
Raw Normal View History

2012-08-27 15:43:17 +01:00
# PHP OAuth Framework
2012-06-04 13:00:52 -07:00
The goal of this project is to develop a standards compliant [OAuth 2](http://tools.ietf.org/wg/oauth/draft-ietf-oauth-v2/) authorization server and resource server.
2012-08-27 15:43:17 +01:00
## Package Installation
2012-08-27 15:43:17 +01:00
The framework is provided as a Composer package which can be installed by adding the package to your composer.json file:
```javascript
{
2013-01-02 19:16:16 +00:00
"require": {
2013-05-06 12:54:16 -07:00
"league/oauth2server": "2.*"
2012-08-27 15:43:17 +01:00
}
}
```
2013-02-15 17:08:21 +00:00
---
2012-08-27 15:43:17 +01:00
2013-02-15 17:08:21 +00:00
The library features 100% unit test code coverage. To run the tests yourself run `phpunit -c build/phpunit.xml`.
2012-08-27 15:43:17 +01:00
## Current Features
### Authorization Server
2012-08-27 15:43:17 +01:00
The authorization server is a flexible class and following core specification grants are implemented:
2013-01-02 19:16:16 +00:00
* authorization code ([section 4.1](http://tools.ietf.org/html/rfc6749#section-4.1))
2013-02-15 17:08:21 +00:00
* refresh token ([section 6](http://tools.ietf.org/html/rfc6749#section-6))
* client credentials ([section 2.3.1](http://tools.ietf.org/html/rfc6749#section-2.3.1))
* password (user credentials) ([section 4.3](http://tools.ietf.org/html/rfc6749#section-4.3))
2012-08-27 15:43:17 +01:00
2013-02-28 16:26:06 +00:00
An overview of the different OAuth 2.0 grants can be found at [http://alexbilbie.com/2013/02/a-guide-to-oauth-2-grants/](http://alexbilbie.com/2013/02/a-guide-to-oauth-2-grants/).
2012-08-27 15:43:17 +01:00
### Resource Server
The resource server allows you to secure your API endpoints by checking for a valid OAuth access token in the request and ensuring the token has the correct permission to access resources.
2013-02-28 17:03:15 +00:00
## Tutorials
A tutorial on how to use the authorization server can be found at [http://alexbilbie.com/2013/02/developing-an-oauth2-authorization-server/](http://alexbilbie.com/2013/02/developing-an-oauth2-authorization-server/).
A tutorial on how to use the resource server to secure an API server can be found at [http://alexbilbie.com/2013/02/securing-your-api-with-oauth-2/](http://alexbilbie.com/2013/02/securing-your-api-with-oauth-2/).
2013-02-22 13:31:05 +00:00
2012-08-27 15:43:17 +01:00
## Future Goals
### Authorization Server
2012-08-27 15:43:17 +01:00
* Support for [JSON web tokens](http://tools.ietf.org/wg/oauth/draft-ietf-oauth-json-web-token/).
* Support for [SAML assertions](http://tools.ietf.org/wg/oauth/draft-ietf-oauth-saml2-bearer/).
2013-02-15 17:08:21 +00:00
---
2012-09-07 12:59:41 +02:00
2013-05-06 12:54:16 -07:00
The initial code was developed as part of the [Linkey](http://linkey.blogs.lincoln.ac.uk) project which was funded by [JISC](http://jisc.ac.uk) under the Access and Identity Management programme.
2012-09-07 12:59:41 +02:00
2013-05-06 12:54:16 -07:00
This code is principally developed by [Alex Bilbie](http://alexbilbie.com/) ([Twitter](https://twitter.com/alexbilbie)|[Github](https://github.com/alexbilbie)).
2013-02-15 17:08:21 +00:00
2013-05-06 12:54:16 -07:00
A list of contributors can be found at [https://github.com/php-loep/oauth2-server/contributors](https://github.com/php-loep/oauth2-server/contributors).