This pacakge provides an implementation of Sentry 2 for Laravel 4. By default it uses Bootstrap 3.0, but you can make use of whatever UI you want.
This package can be installed using Composer:
$ composer require rydurham/sentinel
Make sure you have configured your app's Database and Mail settings.
Add the Service Provider to your app/config/app.php
file:
'providers' => array(
...
'Sentinel\SentinelServiceProvider',
...
)
Run the Migrations:
php artisan migrate --package=rydurham/sentinel
Seed the Database:
php artisan db:seed --class="SentinelDatabaseSeeder"
Publish the package assets:
php artisan asset:publish rydurham/sentinel
Set a "Home" Route. This package requires that you have a named 'home' route in your routes.php
file:
// Set Home Route
Route::get('/', array('as' => 'home', function()
{
return View::make('home');
}));
Optional: Publish Views
php artisan view:publish rydurham/sentinel
Optional: Publish Configuration
php artisan config:publish rydurham/sentinel
The config file will allow you to control many aspects of Sentinels operation. Take a look to see what options are available. If you want to add fields to your user table, this can be done with the config options.
Once installed, Sentinel adds a series of routes for User interaction. You will need to add links to these routes in your app's layouts.
yoursite.tld/login
yoursite.tld/logout
yoursite.tld/register
yoursite.tld/users
- For user management. Only available to adminsyoursite.tld/groups
- For group management. Only available to admins.
Sentinel also provides these filters which you can use to prevent unauthorized access to your app's routes & methods.
Sentinel\auth
- Require users to be successfully logged inSentinel\inGroup:Admins
- Block access to all but members of the Admin group. If you create your own groups, you can use it as such:Sentinel\inGroup:[YourGroup]
.
Check the Wiki for more information about the package:
- Config Options
- Events & Listeners
- Seed & Migration Details
- Default Routes
- Basic API Info
- Package Version History
Any questions about this package should be posted on the package website.
Sentinel has been translated into several other languages, and new translations are always welcome! Check out the Sentinel Page on CrowdIn for more details.
Tests are powered by Codeception. Currently they must be run within a Laravel application environment. To run the tests:
- Pull in the require-dev dependencies via composer.
- Navigate to the Sentinel folder
- Run
vendor/bin/codecept run
I would reccommend turning on "Mail Pretend" in your testing mail config file.