security core
v7.2.0
يوفر الأمان بنية تحتية لأنظمة التفويض المتطورة، مما يجعل من الممكن فصل منطق التفويض الفعلي بسهولة عما يسمى بموفري المستخدمين الذين يحملون بيانات اعتماد المستخدمين.
composer require symfony/security-core
use Symfony Component Security Core Authentication AuthenticationTrustResolver ;
use Symfony Component Security Core Authentication Token UsernamePasswordToken ;
use Symfony Component Security Core Authorization AccessDecisionManager ;
use Symfony Component Security Core Authorization Voter AuthenticatedVoter ;
use Symfony Component Security Core Authorization Voter RoleVoter ;
use Symfony Component Security Core Authorization Voter RoleHierarchyVoter ;
use Symfony Component Security Core Exception AccessDeniedException ;
use Symfony Component Security Core Role RoleHierarchy ;
$ accessDecisionManager = new AccessDecisionManager ([
new AuthenticatedVoter ( new AuthenticationTrustResolver ()),
new RoleVoter (),
new RoleHierarchyVoter ( new RoleHierarchy ([
' ROLE_ADMIN ' => [ ' ROLE_USER ' ],
]))
]);
$ user = new App Entity User (...);
$ token = new UsernamePasswordToken ( $ user , ' main ' , $ user -> getRoles ());
if (! $ accessDecisionManager -> decide ( $ token , [ ' ROLE_ADMIN ' ])) {
throw new AccessDeniedException ();
}
يتم دعم مكون الأمان الخاص بـ Symfony 7.1 بواسطة SymfonyCasts.
تعلم Symfony بشكل أسرع من خلال مشاهدة المشاريع الحقيقية التي يتم إنشاؤها والبرمجة النشطة معها. يعمل SymfonyCasts على سد فجوة التعلم هذه، ويقدم لك دروس فيديو وتحديات في البرمجة. رمز على!
ساعد Symfony من خلال رعاية تطويره!