Example #1
0
        public void Should_Return_Default_List_Wit_Principal_Added()
        {
            RunActionInTransaction(session =>
            {
                var collection = new AccessControlCollection();
                collection.Add(new AccessControlElement {
                    AccessLevel = AccessLevel.Deny.ToString(), Identity = SpecialIdentities.Everyone
                });
                collection.Add(new AccessControlElement {
                    AccessLevel = AccessLevel.Read.ToString(), Identity = SpecialIdentities.AuthenticatedUsers
                });

                var cmsConfig = GetCmsConfigurationMock(collection);

                var service = new DefaultAccessControlService(Container.Resolve <ISecurityService>(), Container.Resolve <ICacheService>(), cmsConfig.Object);

                var principal    = new GenericPrincipal(new GenericIdentity("John Doe"), new string[] { });
                var accessLevels = service.GetDefaultAccessList(principal);

                Assert.AreEqual(3, accessLevels.Count);
                Assert.AreEqual(accessLevels.First(a => a.Identity == collection[0].Identity).AccessLevel.ToString(), collection[0].AccessLevel);
                Assert.AreEqual(accessLevels.First(a => a.Identity == collection[1].Identity).AccessLevel.ToString(), collection[1].AccessLevel);
                Assert.AreEqual(accessLevels.First(a => a.Identity == principal.Identity.Name).AccessLevel, AccessLevel.ReadWrite);
            });
        }
 public AcceleratorDefaultPermissionSetup(
     GroupService groupService,
     DefaultAccessControlService defaultAccessControlService,
     SettingService settingService,
     SecurityContextService securityContextService)
 {
     _groupService = groupService;
     _defaultAccessControlService = defaultAccessControlService;
     _settingService         = settingService;
     _securityContextService = securityContextService;
 }
        public void Should_Return_Default_List_With_Principal_Added_And_Ignored()
        {
            RunActionInTransaction(session =>
            {
                var collection = new AccessControlCollection();
                collection.Add(new AccessControlElement { AccessLevel = AccessLevel.Deny.ToString(), Identity = SpecialIdentities.Everyone });
                collection.Add(new AccessControlElement { AccessLevel = AccessLevel.ReadWrite.ToString(), Identity = SpecialIdentities.AuthenticatedUsers });

                var cmsConfig = GetCmsConfigurationMock(collection);

                var service = new DefaultAccessControlService(Container.Resolve<ISecurityService>(), Container.Resolve<ICacheService>(), cmsConfig.Object, null);

                var principal = new GenericPrincipal(new GenericIdentity("John Doe"), new string[] { });
                var accessLevels = service.GetDefaultAccessList(principal);

                Assert.AreEqual(2, accessLevels.Count);
                Assert.AreEqual(accessLevels.First(a => a.Identity == collection[0].Identity).AccessLevel.ToString(), collection[0].AccessLevel);
                Assert.AreEqual(accessLevels.First(a => a.Identity == collection[1].Identity).AccessLevel.ToString(), collection[1].AccessLevel);
            });            
        }