|
|
|
# authkit2
|
|
|
|
|
|
|
|
Drop-in OIDC single-sign-on solution for PHP and Laravel projects.
|
|
|
|
|
|
|
|
## Purpose
|
|
|
|
|
|
|
|
Provide a low-impact way to integrate new and existing Laravel projects with a
|
|
|
|
single-sign-on solution providing identities for users and software across an
|
|
|
|
entire ecosystem of projects.
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
|
|
|
* Drop-in, almost zero-config solution.
|
|
|
|
* Integrates with existing Laravel user and authentication systems.
|
|
|
|
* Exposes core functionality in a framework-agnostic way to allow use outside
|
|
|
|
of Laravel.
|
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
|
|
|
These documents generally reference Keycloak as the OpenID Connect (OIDC)
|
|
|
|
provider, however it should ostensibly work with any provider.
|
|
|
|
|
|
|
|
### Laravel
|
|
|
|
|
|
|
|
* [Installation](docs/LARAVEL_INSTALL.md)
|
|
|
|
* [Configuration](docs/LARAVEL_CONFIG.md)
|
|
|
|
* [Usage](docs/LARAVEL_USAGE.md)
|
|
|
|
|
|
|
|
### Generic
|
|
|
|
|
|
|
|
* [Installation](docs/GENERIC_INSTALL.md)
|
|
|
|
* [Usage](docs/GENERIC_USAGE.md)
|
|
|
|
|
|
|
|
### Other Documentation
|
|
|
|
|
|
|
|
* [Internals](docs/INTERNALS.md)
|
|
|
|
* [TODO](TODO.md)
|
|
|
|
|
|
|
|
## Contributing
|
|
|
|
|
|
|
|
Before submitting a PR, please run phan across your branch and ensure that no
|
|
|
|
issues are reported:
|
|
|
|
|
|
|
|
```
|
|
|
|
$ composer analyze
|
|
|
|
```
|
|
|
|
|
|
|
|
If any issues are returned, please resolve the underlying issue(s). Do not just
|
|
|
|
twist your code into a knot trying to work around the analysis. Any use of the
|
|
|
|
suppression comments to suppress issues require a comment immediately preceeding
|
|
|
|
explaining in detail why the code is provably correct. However, if there is any
|
|
|
|
workaround besides disabling issue reporting the change will be sent back for
|
|
|
|
further refinement.
|
|
|
|
|
|
|
|
After analysis, please ensure your changes follow the code formatting standards
|
|
|
|
used in this project by running php-cs-fixer:
|
|
|
|
|
|
|
|
```
|
|
|
|
$ composer format
|
|
|
|
```
|
|
|
|
|