PHPackages                             ac/kalinka-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. ac/kalinka-bundle

ActiveSymfony-bundle[Authentication &amp; Authorization](/categories/authentication)

ac/kalinka-bundle
=================

Flexible authorization for your Symfony2 app

0.1.2(12y ago)22332[4 issues](https://github.com/AmericanCouncils/kalinka-bundle/issues)[1 PRs](https://github.com/AmericanCouncils/kalinka-bundle/pulls)MITPHPPHP &gt;=5.4.0

Since Jan 28Pushed 10y ago5 watchersCompare

[ Source](https://github.com/AmericanCouncils/kalinka-bundle)[ Packagist](https://packagist.org/packages/ac/kalinka-bundle)[ RSS](/packages/ac-kalinka-bundle/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependencies (7)Versions (4)Used By (0)

Kalinka-Bundle
==============

[](#kalinka-bundle)

[![Build Status](https://camo.githubusercontent.com/f6a849516cf82cc2702ddbb5b867476435482d18fde6e0f7033a9289b20010fe/68747470733a2f2f7472617669732d63692e6f72672f416d65726963616e436f756e63696c732f6b616c696e6b612d62756e646c652e706e673f6272616e63683d6d6173746572)](https://travis-ci.org/AmericanCouncils/kalinka-bundle)

Symfony2 bundle for [Kalinka](https://github.com/AmericanCouncils/kalinka).

Installation
------------

[](#installation)

1. require `"ac/kalinka-bundle": "~0.1.0" in your `composer.json`
2. run `composer update ac/kalinka`
3. Instantiate `AC\KalinkaBundle\ACKalinkaBundle` in your `AppKernel`
4. Configure the bundle, described below:

Configuration
-------------

[](#configuration)

```
ac_kalinka:
    #default_authorizer: 'default'
    authorizers:
        default:
            authenticated_role: 'authenticated'     #optional
            anonymous_role: 'anonymous'             #optional
            roles:                                  #map roles to actions and guard policies
                authenticated:
                    document:
                        read: 'allow'
                        index: 'allow'
                anonymous:
                    document:
                        read: 'allow'
                teacher:
                    system:
                        foo: 'allow'
                    document:
                        index: 'allow'
                        create: 'allow'
                        read: 'allow'
                        update: ['owner', 'unlocked']
                        delete: ['owner', 'unlocked']
                admin:
                    system:
                        foo: 'allow'
                        bar: 'allow'
                        baz: 'allow'
                    document:
                        index: 'allow'
                        create: 'allow'
                        read: 'allow'
                        update: 'allow'
                        delete: 'allow'
                student:
                    document:
                        index: 'allow'
                        read: 'allow'
```

Services
--------

[](#services)

The bundle registers the `kalinka.authorizer` service, which you can use in your app:

```
$document = //...get some document instance, however you do that

$authorizer = $this->container->get('kalinka.authorizer');

if (!$authorizer->can('edit', 'document', $someDocument)) {
    throw new Exception('Computer says no. :(');
}
```

To register guards just use the `kalinka.guard` tag, and specify the domain of the guard. For example:

```
services:
    app.guard.document:
        class: ACME\AppBundle\Authorization\DocumentGuard
        tags:
            - { name: 'kalinka.guard', tag: 'document' }
```

You can also configure multiple authorizers if you need them.

```
#TODO: document said feature
```

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~32 days

Total

3

Last Release

4422d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/078a9522fb48452e2952c7398e4a555b2501e10e564869efeb4bc1f16547743e?d=identicon)[dsimon](/maintainers/dsimon)

---

Top Contributors

[![DavidMikeSimon](https://avatars.githubusercontent.com/u/350396?v=4)](https://github.com/DavidMikeSimon "DavidMikeSimon (5 commits)")[![cmac1000](https://avatars.githubusercontent.com/u/1151759?v=4)](https://github.com/cmac1000 "cmac1000 (4 commits)")[![evillemez](https://avatars.githubusercontent.com/u/318976?v=4)](https://github.com/evillemez "evillemez (3 commits)")

---

Tags

authauthorizationkalinka

### Embed Badge

![Health badge](/badges/ac-kalinka-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/ac-kalinka-bundle/health.svg)](https://phpackages.com/packages/ac-kalinka-bundle)
```

###  Alternatives

[league/oauth2-server

A lightweight and powerful OAuth 2.0 authorization and resource server library with support for all the core specification grants. This library will allow you to secure your API with OAuth and allow your applications users to approve apps that want to access their data from your API.

6.6k136.0M248](/packages/league-oauth2-server)[auth0/auth0-php

PHP SDK for Auth0 Authentication and Management APIs.

40820.2M68](/packages/auth0-auth0-php)[league/oauth2-server-bundle

Symfony bundle .

2344.7M6](/packages/league-oauth2-server-bundle)[auth0/symfony

Symfony SDK for Auth0 Authentication and Management APIs.

128738.1k](/packages/auth0-symfony)[auth0/login

Auth0 Laravel SDK. Straight-forward and tested methods for implementing authentication, and accessing Auth0's Management API endpoints.

2745.0M3](/packages/auth0-login)[dyorg/slim-token-authentication

Slim 3.0+ Token Authentication Middleware

78106.5k](/packages/dyorg-slim-token-authentication)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
