コード例 #1
0
        public void CommonFilters()
        {
            using (var scope = TestScope.Create("u1-r1 u1-r12 u2-r12 u2-r2"))
            {
                // Insert test data:

                var u1  = scope.NewPrincipal("u1");
                var u2  = scope.NewPrincipal("u2");
                var u3  = scope.NewPrincipal("u3");
                var u5  = scope.NewPrincipal("u5", domain: false);
                var r1  = scope.NewRole("r1");
                var r2  = scope.NewRole("r2");
                var r25 = scope.NewRole("r25", domain: false);

                var repository = scope.Resolve <Common.DomRepository>();
                var roles      = scope.Resolve <GenericRepository <Common.Role> >();
                var principals = scope.Resolve <GenericRepository <IPrincipal> >();
                var membership = repository.Common.PrincipalHasRole;

                roles.Insert(r1, r2, r25);
                principals.Insert(u1, u2, u3, u5);
                membership.Insert(new[] { // Non-domain users and roles.
                    new Common.PrincipalHasRole {
                        PrincipalID = u2.ID, RoleID = r25.ID
                    },
                    new Common.PrincipalHasRole {
                        PrincipalID = u5.ID, RoleID = r25.ID
                    }
                });

                // Common filters:

                var filter1 = new Common.ActiveDirectoryAllUsersParameter();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                                scope.ReportMembership(filter1),
                                "filter ActiveDirectoryAllUsersParameter");

                var filter2 = new[] { u1.Name, u2.Name }.Select(name => new Common.ActiveDirectoryUserParameter {
                    UserName = name
                }).ToArray();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                                scope.ReportMembership(filter2),
                                "filter ActiveDirectoryUserParameter");
            }
        }
コード例 #2
0
        public void CommonFilters()
        {
            using (var container = new MockWindowsSecurityRhetosContainer("u1-r1 u1-r12 u2-r12 u2-r2", commitChanges: false))
            {
                container.Resolve<Common.ExecutionContext>().NHibernateSession
                    .CreateSQLQuery("DELETE FROM Common.Principal; DELETE FROM Common.Role")
                    .ExecuteUpdate();

                // Insert test data:

                var u1 = new Common.Principal { ID = Guid.NewGuid(), Name = _domainPrefix + "u1" };
                var u2 = new Common.Principal { ID = Guid.NewGuid(), Name = _domainPrefix + "u2" };
                var u3 = new Common.Principal { ID = Guid.NewGuid(), Name = _domainPrefix + "u3" };
                var u5 = new Common.Principal { ID = Guid.NewGuid(), Name = "u5" };
                var r1 = new Common.Role { ID = Guid.NewGuid(), Name = _domainPrefix + "r1" };
                var r2 = new Common.Role { ID = Guid.NewGuid(), Name = _domainPrefix + "r2" };
                var r25 = new Common.Role { ID = Guid.NewGuid(), Name = "r25" };

                var repository = container.Resolve<Common.DomRepository>();
                var roles = container.Resolve<GenericRepository<Common.Role>>();
                var principals = container.Resolve<GenericRepository<Common.Principal>>();
                var membership = container.Resolve<GenericRepository<Common.PrincipalHasRole>>();

                roles.Insert(r1, r2, r25);
                principals.Insert(u1, u2, u3, u5);
                membership.Insert(new[] { // Non-domain users and roles.
                    new Common.PrincipalHasRole { Principal = u2, Role = r25 },
                    new Common.PrincipalHasRole { Principal = u5, Role = r25 } });

                // Common filters:

                var filter1 = new Common.ActiveDirectoryAllUsersParameter();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                    ReportMembership(container, filter1),
                    "filter ActiveDirectoryAllUsersParameter");

                var filter2 = new[] { u1.Name, u2.Name }.Select(name => new Common.ActiveDirectoryUserParameter { UserName = name }).ToArray();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                    ReportMembership(container, filter2),
                    "filter ActiveDirectoryUserParameter");
            }
        }
コード例 #3
0
        public void CommonFilters()
        {
            using (var container = new MockWindowsSecurityRhetosContainer("u1-r1 u1-r12 u2-r12 u2-r2", commitChanges: false))
            {
                container.Resolve <ISqlExecuter>()
                .ExecuteSql("DELETE FROM Common.Principal; DELETE FROM Common.Role");

                // Insert test data:

                var u1 = new Common.Principal {
                    ID = Guid.NewGuid(), Name = _domainPrefix + "u1"
                };
                var u2 = new Common.Principal {
                    ID = Guid.NewGuid(), Name = _domainPrefix + "u2"
                };
                var u3 = new Common.Principal {
                    ID = Guid.NewGuid(), Name = _domainPrefix + "u3"
                };
                var u5 = new Common.Principal {
                    ID = Guid.NewGuid(), Name = "u5"
                };
                var r1 = new Common.Role {
                    ID = Guid.NewGuid(), Name = _domainPrefix + "r1"
                };
                var r2 = new Common.Role {
                    ID = Guid.NewGuid(), Name = _domainPrefix + "r2"
                };
                var r25 = new Common.Role {
                    ID = Guid.NewGuid(), Name = "r25"
                };

                var repository = container.Resolve <Common.DomRepository>();
                var roles      = container.Resolve <GenericRepository <Common.Role> >();
                var principals = container.Resolve <GenericRepository <Common.Principal> >();
                var membership = repository.Common.PrincipalHasRole;

                roles.Insert(r1, r2, r25);
                principals.Insert(u1, u2, u3, u5);
                membership.Insert(new[] { // Non-domain users and roles.
                    new Common.PrincipalHasRole {
                        PrincipalID = u2.ID, RoleID = r25.ID
                    },
                    new Common.PrincipalHasRole {
                        PrincipalID = u5.ID, RoleID = r25.ID
                    }
                });

                // Common filters:

                var filter1 = new Common.ActiveDirectoryAllUsersParameter();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                                ReportMembership(container, filter1),
                                "filter ActiveDirectoryAllUsersParameter");

                var filter2 = new[] { u1.Name, u2.Name }.Select(name => new Common.ActiveDirectoryUserParameter {
                    UserName = name
                }).ToArray();
                Assert.AreEqual(@"\u1-\r1, \u2-\r2",
                                ReportMembership(container, filter2),
                                "filter ActiveDirectoryUserParameter");
            }
        }