SourceForge.net Logo
Main Overview Wiki Issues Forum Build Fisheye

Welcome, Guest
Guest Settings
Help

Compass Support Forums » Compass » Compass Users

Thread: Security for Compass index using Filters

This question is answered. Helpful answers available: 0. Correct answers available: 1.


Permlink Replies: 6 - Pages: 1 - Last Post: Oct 5, 2011 8:42 PM Last Post By: factoryoutlet
jolinar13

Posts: 129
Registered: 12/21/06
Security for Compass index using Filters
Posted: Jun 21, 2007 10:10 AM
 
  Click to reply to this thread Reply
Hello,

I would like to use filters to hide information people are not allowed to see, based on their profile.

CompassQueryFilterBuilder queryFilterBuilder = compassSession.queryFilterBuilder(); 
CompassQueryBuilder.CompassBooleanQueryBuilder booleanQueryBuilder = queryBuilder.bool();
 
booleanQueryBuilder.addShould(queryBuilder.term("project.customerContact.id",user.getId()))
	          .addShould(queryBuilder.term("project.company.id", user.getCompany().getId()));
CompassQueryFilter queryFilter = queryFilterBuilder.query(booleanQueryBuilder.toQuery());
compassQuery.setFilter(queryFilter);


This code works well, but now my search engine only returns "project" objects. All other entities are not searchable anymore.

What do I need to do?

Thanks a lot,
Florian
NetForce1

Posts: 34
Registered: 5/16/07
Re: Security for Compass index using Filters
Posted: Jun 21, 2007 1:16 PM   in response to: jolinar13 in response to: jolinar13
Helpful
  Click to reply to this thread Reply
Maybe something like this:
CompassQuery query = builder.bool()
	.addMustNot(builder.alias("project"))
	.addShould(builder.bool()
			.addMust(builder.alias("project"))
			.addMust(builder.bool()
					.addShould(builder.term("project.customerContact.id", user.getId()))
					.addShould(builder.term("project.company.id", user.getCompany().getId()))
			)
	).toQuery();
CompassQueryFilter queryFilter = queryFilterBuilder.query(query);
compassQuery.setFilter(queryFilter);

It's completely untested though, so no guarantees
jolinar13

Posts: 129
Registered: 12/21/06
Re: Security for Compass index using Filters
Posted: Jun 22, 2007 2:28 AM   in response to: NetForce1 in response to: NetForce1
 
  Click to reply to this thread Reply
Hello,
Thank you for your answer.
I slightly modified your code to make it compile :

booleanQueryBuilder.addMustNot(queryBuilder.alias("project"))
	.addShould(queryBuilder.bool()
		.addMust(queryBuilder.alias("project"))
		.addMust(queryBuilder.bool()
			.addShould(queryBuilder.term("project.customerContact.id", user.getId()))
			.addShould(queryBuilder.term("project.company.id", user.getCompany().getId()))
			.toQuery()
		)
		.toQuery()
	);


But it returns no result (even with matchAll query).
Florian
jolinar13

Posts: 129
Registered: 12/21/06
Re: Security for Compass index using Filters
Posted: Jun 22, 2007 3:07 AM   in response to: jolinar13 in response to: jolinar13
 
  Click to reply to this thread Reply
Hi again,

Using your method, I manage to get good results with this code:

booleanQueryBuilder.addMust(queryBuilder.matchAll())
	.addMustNot(queryBuilder.bool()
		.addMust(queryBuilder.alias("projet"))
		.addMustNot(queryBuilder.bool()
			.addShould(queryBuilder.term("projet.responsableMOE.id", user.getId()))
			.addShould(queryBuilder.term("projet.entreprise.id", user.getEntreprise().getId()))
			.toQuery()
		)
		.toQuery()
	);


Any other simple solution? ;-)
Florian
Shay Banon

Posts: 4,028
Registered: 9/6/05
Re: Security for Compass index using Filters
Posted: Jun 23, 2007 12:34 PM   in response to: jolinar13 in response to: jolinar13
Helpful
  Click to reply to this thread Reply
I think that the main reason why you get back just project results is the fact that you use: "project.customerContact.id", this probably gets translated something like: "$/project/customerContact/..". Note the fact that the alias name is in the internal meta data created automatically by Compass.

It really depends on what you are trying to do, but Florian solution is a good one (i.e. if you want to filter only project results). Just wanted to explain why you get only projects with your initial post.
factoryoutlet

Posts: 523
Registered: 10/5/11
Re: Security for Compass index using Filters
Posted: Oct 5, 2011 8:39 PM   in response to: jolinar13 in response to: jolinar13
 
  Click to reply to this thread Reply

louis vuitton outlet leads you to bags collection of wide, such as LV bags and LV handbag etc. They are main name in luxury and style. It is excellent quality, fine Italian technology and extraordinary beauty.LV is universally renowned as a luxury brand. louis vuitton online store offers customers the newest fashion collections which can make you different.

In the past, Louis Vuitton only emphasis on classic, but in recent year, Louis Vuitton change its strategy and style to acquire new breakthrough. Especially louis vuitton bags like Louis Vuitton Vernis Wallet.Want to become more charming and faddish? Go to visit louis vuitton outlet webpage and select the most suitable products for yourself.

Want to become more charming and faddish? Go to visit louis vuitton outlet webpage and select the most suitable products for yourself.louis vuitton outlet online may often be the consideration alternative inside of your event to get these kinds of bags.Is without a doubt louis vuitton online seriously is present? Is it possible to offer an outlet designed for Louis Vuitton merchandise speaks out?

The choices are likely to be basically countless seeing that louis vuitton outlet occurs with the help of completely new and also incredible concepts once in a while.Mainly because mentioned before, you could buy in the louis vuitton online, via the producer's the web outlet. Owning worn it in past times. They can supply a appropriate evaluate for the property's simplicity as well as client service description.louis vuitton outlet online is the method to show the confidence of our handbags. The person who show himself in front of other people is a confident one.

LV bags in the louis vuitton outlet are a feminine update on an urban classic. With plenty of room for all of your essentials this covetable carryall will take you through the weekend in style.LV is universally renowned as a luxury brand. louis vuitton online store offers customers the newest fashion collections which can make you different.

This collection focus more on color selection compared with other LV handbags. Cute and sunshine design style increases its charm. louis vuitton outlet online provides you the very famous luxury worldwide brand.We are glad you come to join in our louis vuitton outlet online store, because the winter is upcoming now, Louis Vuitton released many new handbags to feedback our customers.Just come to visit once the louis vuitton online, you will fall in love with its fancy bags, purses, sunglasses, shoes and so on.

factoryoutlet

Posts: 523
Registered: 10/5/11
Re: Security for Compass index using Filters
Posted: Oct 5, 2011 8:42 PM   in response to: jolinar13 in response to: jolinar13
 
  Click to reply to this thread Reply

coach factory outlet offer excellent, elegant coach products in order to generate room for your new collections.They're purchased more quickly that you may at any time imagine.coach factory store is the greatest destination to buy what type of bags you like. If you need to manage a new Coach carrier and most preferable strategy is to the coach regarding coupon codes.Here's your new way to look sophisticated styles. Carry the hot coach factory outlet store of this summer and be the true trendsetter!in the market you definitely can find various colorways that are designed in as well as the high quality that applied in. For most of you would like to come. So just come to our coach factory outlet online store to choose one.

coach factory outlet is really sizzling kinds of shopping way for you. With the usage of the replica designer coach bags, you can surely be able to change your individual looks in a stunning manner.You know, Coach items are so perfect and fascinating. Now I grow up, and find coach outlet on the Internet offering affordable products with reliable quality.Many fashionable women match with practical Coach Purses which will make the street shopping become relaxed,and make every person can enjoy more diversiform combination in coach factory outlet online.The coach factory outlet store are utilized for formal event in company area that will display your excellent taste.Not only does a briefcase make is easier to carry things.

Almost everyone has identified effectively about this, below, among the best to make sure you will get much more information about coach outlet.In the coach outlet online shop, a collection of high quality and hottest Coach Shoulder Bags is offered to you. They are all at the best prices you will ever find.

You know, Coach items are so perfect and fascinating. Now I grow up, and find coach outlet on the Internet offering affordable products with reliable quality.Once visit, you will be unable to restrain loving it. Warmly welcome all of you to the Summer Sales Promotion on coach factory outlet.coach factory outlet has new coach laptop bags in listing. No matter which style do you want, we can provide it for you.Coach bags enjoy high popularity throughout the world. I would like to share the coach factory outlet online with you. What are you waiting for? Just come to visit.

coach factory outlet supplies the newest and most fashionable brand Coach on sale.The more Coach shoulder bags you order, the more discount you will get.It's wonderful to find out it does not slip in your signature at the bottom of the case and the appearance of brass accents from coach outlet online, Because women who can look stylish this summer.coach outlet has a zippered closure and buckles for extra security. Shiny brass hardware, rounded leather handle, and an interior pocket. It also includes a limited edition Hawaii luggage tag and lock.You can find all kinds of coach bags whatever you chose which one in coach factory outlet online will never be out of fashion. Not only they have many nice and design styles, but also made from the finest leather and fabric.

With the great diversity of styles, patterns and sizes available nowadays, finding the right pieces to highlight your personality is quite important. coach outlet offers exactly what you want.coach factory outlet supplies the newest and most fashionable brand Coach on sale.The more Coach shoulder bags you order, the more discount you will get.Look at this golden Coach bag in the? coach factory outlet online.Those new bags with classic and fashionable design are more and more popular now!After graduating from university, my cousin came back to my hometown from USA last month. She told me that coach outlet store is very popular among her classmate.

coach outlet online own a couple of line, color, or the selected theme, it should be a good choice. It may be the place where offer the bag ladies handbag, you will be able to follow a course of education or training receives for the slim project chest strap wallet.coach outlet will send you a coupon in the post to use in their upon only after you type a achieve. The Coach bags are customarily somewhat many than the ones in the stores.In particular, products from coach factory outlet with leather design are fashionable, handmade,leading the wave of American pop.It with simple,durable and unique style to win consumers.coach factory not only supply with the highest quality crystal at reasonable price but also provide good after-sales service. Companies operating purposes: science and technology in order to survive, credibility and development, strict quality control.

coach outlet handbags's special design and fashion is certainly and so eye-catching, I hope you are able to get much more attention towards the Cheap Coach Crossbody.As long as you open our coach factory outlet webpage, you will view various Coach New Arrivals which are the most popular also the most fashionable in this year.Are you anxious to choose some of the brand bags? Are you searching for reliable sellers? When you come to the coach factory outlet online, these are not problems.

At the coach outlet online you have the largest selection of the day. If you touch the item and like it, keep it in your possession until you make your final decision.Over the years, coach factory online has added a multitude of new handbag shapes, styles and materials to their collection. However, the highest care is taken that every Coach handbags is both aesthetically beautiful and functional.Are you searching for a cool and stylish coach bag? The coach factory outlet online Online is your first priority.

Legend
Guru: 2001 + pts
Expert: 501 - 2000 pts
Super-star: 101 - 500 pts
Assistant: 51 - 100 pts
Participant: 0 - 50 pts
Helpful Answer (5 pts)
Correct Answer (10 pts)

Point your RSS reader here for a feed of the latest messages in all forums