andythorne/flock

Symfony user storage system with oauth2 support

dev-master 2018-01-27 14:50 UTC

This package is auto-updated.

Last update: 2021-02-10 19:15:55 UTC


README

Packagist

Storage system for users with oauth2 support, written in Symfony >= 3.4/4.0 with FOSOAuth, FOSUser and EasyAdmin.

Installation

Flock is a Symfony project, not a bundle. To install it, create a new project with composer:

composer create-project andythorne/flock flock
cd flock

With the incoming release of Symfony Flex, this will be moved to a pack rather than a project.

Running With Docker

Flock comes with an example Docker container setup using:

To get started, run:

docker-compose up -d

Docker will expose the app over the external network flock, which your can link to.

Usage

Public Endpoints

Flock uses the standard FOSUser endpoints for user registration, login and profile management.

See https://symfony.com/doc/master/bundles/FOSUserBundle/index.html for documentation for extending flock's FOSUser implementation

Administration

Flock uses EasyAdmin to provide an admin interface for managing users and OAuth clients. Create a super admin user (./bin/console fos:user:create <username> <email> <password> --super-admin) and head to /admin.

OAuth2

In order to use OAuth2, you first need to create an OAuth Client. Head to /admin and create a new Client, and copy the generated public id and secret into your app's OAuth Client.

Endpoint Description
/oauth/v2/token Token
/oauth/v2/auth Authentication
/api/user User Data

For a guide on how to use HWIOAuthBundle in your app to authenticate with flock, see

Authors

Written by: