From 51ae3a53ac829b4ba929f8bf187a7fae85a29c7d Mon Sep 17 00:00:00 2001 From: Javier Eguiluz Date: Mon, 13 Jul 2020 12:28:47 +0200 Subject: [PATCH] [Security] Mention the feature to use a custom AccessDecisionManager --- security/voters.rst | 46 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/security/voters.rst b/security/voters.rst index 8fe7070c736..88b6234f6f5 100644 --- a/security/voters.rst +++ b/security/voters.rst @@ -323,3 +323,49 @@ security configuration: 'allow_if_all_abstain' => false, ], ]); + +Custom Access Decision Strategy +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +If none of the built-in strategies fits your use case, define the ``service`` +option to use a custom service as the Access Decision Manager (your service +must implement the :class:`Symfony\\Component\\Security\\Core\\Authorization\\AccessDecisionManagerInterface`): + +.. configuration-block:: + + .. code-block:: yaml + + # app/config/security.yml + security: + access_decision_manager: + service: App\Security\MyCustomAccessDecisionManager + # ... + + .. code-block:: xml + + + + + + + + + + + .. code-block:: php + + // app/config/security.php + use App\Security\MyCustomAccessDecisionManager; + + $container->loadFromExtension('security', [ + 'access_decision_manager' => [ + 'service' => MyCustomAccessDecisionManager::class, + // ... + ], + ]);