क्या वर्ग पहले शामिल करने के लिए?
यदि आप सभी सुरक्षा कोर नहीं हैं तो आपको कम से कम भागों को शामिल करने की आवश्यकता होगी, फिर कभी भी एसीएल कार्यान्वयन जिसे आप उपयोग करना चाहते हैं। आप एसीएल कार्यान्वयन की शुरुआत में सूचीबद्ध निर्भरताओं को देख सकते हैं और देख सकते हैं कि वे क्या बढ़ाते हैं। उदाहरण के लिए, ACL/DBAL
निम्नलिखित निर्भरता शीर्षक में कहा जाता है:
namespace Symfony\Component\Security\Acl\Dbal;
use Doctrine\DBAL\Driver\Connection;
use Doctrine\DBAL\Driver\Statement;
use Symfony\Component\Security\Acl\Model\AclInterface;
use Symfony\Component\Security\Acl\Domain\Acl;
use Symfony\Component\Security\Acl\Domain\Entry;
use Symfony\Component\Security\Acl\Domain\FieldEntry;
use Symfony\Component\Security\Acl\Domain\ObjectIdentity;
use Symfony\Component\Security\Acl\Domain\RoleSecurityIdentity;
use Symfony\Component\Security\Acl\Domain\UserSecurityIdentity;
use Symfony\Component\Security\Acl\Exception\AclNotFoundException;
use Symfony\Component\Security\Acl\Exception\NotAllAclsFoundException;
use Symfony\Component\Security\Acl\Model\AclCacheInterface;
use Symfony\Component\Security\Acl\Model\AclProviderInterface;
use Symfony\Component\Security\Acl\Model\ObjectIdentityInterface;
use Symfony\Component\Security\Acl\Model\PermissionGrantingStrategyInterface;
लेकिन आप शायद उनके निर्भरता के लिए सूचीबद्ध उन लोगों में से प्रत्येक की जांच करने के लिए, और उन लोगों के रूप में अच्छी तरह से लोड की आवश्यकता होगी।
मैं निर्भरताओं के माध्यम से बैक-ट्रैक करता हूं, और ट्रैक की आवश्यकता होती है कि क्या चाहिए। उन वर्गों को एक अलग स्थान पर खींचें ताकि आपके पास केवल वही चीज़ हो जो आपको चाहिए, और यह निर्धारित करने के लिए कुछ त्रुटि फंसे का उपयोग करें कि आपके पास यह सब है।
उदाहरण के लिए कौन सा ऑब्जेक्ट?
आपका एसीएल। यदि निर्भरता सभी निर्धारित हैं, और लोड की गई हैं, तो आप एसीएल क्लास ऑब्जेक्ट को तुरंत चालू करने में सक्षम होना चाहिए।
क्या मॉडल और नियंत्रकों के बिना इसका उपयोग करना संभव है?
ईमानदार होने के लिए, मुझे यकीन नहीं है कि एस 2 के बाहर एसीएल का उपयोग बिना किसी काम के संभव है, लेकिन यदि आप इसे आवश्यक सभी चीज़ों के साथ तुरंत प्राप्त कर सकते हैं, तो आप बिना ऑब्जेक्ट का उपयोग कर सकते हैं एक एमवीसी मॉडल।
दुर्भाग्य से, मैं एस 2 के बारे में क्या समझता हूं, यह एक पूर्ण ढेर ढांचा है, और यह सब कुछ या कुछ भी नहीं है। लेकिन अगर मैं कोशिश करने और इसे काम करने जा रहा था, तो मैं इस तरह से जाऊंगा।
मैं Zend के एसीएल सुझाव पर ACL के लिए अच्छा दस्तावेज है, क्योंकि यह एक शिथिल युग्मित या "गोंद" ढांचे से है, और एस 2 एक पूर्ण ढेर है। सेवा [कंटेनर] लोकेटर विरोधी पैटर्न से अलग सब कुछ के लिए – SuperMykEl